You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Smaller items, grouped because none is worth its own issue.
No hard-coded hostname pre-commit check.docs/HOSTNAME_POLICY.md names a per-repository lefthook command running .github/scripts/check-hardcoded-hostnames.sh as the enforcement mechanism; this repo has the lefthook infrastructure but neither the command nor the script. 13 of the 22 workspace repos with a lefthook.yml carry it. Either add it or record the exemption in AGENTS.md.
Nothing runs ruff format --check.pyproject.toml waives E501 as "handled by formatter", but CI and lefthook run ruff check only and ./run format rewrites rather than verifies. The sources are clean today, so adding the check costs nothing.
ci.yml is hand-written where every other halos-org repo calls halos-org/shared-workflows. Producing no .deb does not opt a repo out — skip and skip-freeboard-panel are npm packages that call pr-checks.yml with skip-lintian: true, and version-bump-check already no-ops without a VERSION file. Either adopt it or record the deviation.
The pre-commit hooks exit 0 with a warning when uv or ruff is missing, so a clean commit can mean nothing was checked.
The gate covers locales configured with build: false. Parking a work-in-progress locale is the obvious escape hatch when a language falls behind; today it blocks every pull request instead of pausing one language. Decide deliberately and write it down either way.
check-anchors reports a fragment link to a non-HTML asset as broken.resolve() appends index.html to any path without an .html suffix, so manual.pdf#page=12 — ordinary in hardware documentation — resolves to manual.pdf/index.html and fails. The documented remedy is --exclude, whose broad patterns produce the false green PR Package the documentation checkers and add a blocking translation gate #1 just closed. Return None for targets whose extension is present and is not .html.
english_diff drops content lines beginning -- or ++ . The noise filter matches rendered diff lines by prefix, so a removed line whose text starts with -- becomes --- and is discarded as a file header. In the fixture a changed safety limit rendered as an addition with no corresponding removal. Drop headers by position, or match the anchored --- a/ forms.
Page paths are interpolated unescaped into the comment. A fork PR can push a filename containing newlines and --> that terminates the table early, renders chosen prose in the bot's voice — including the "everything is current" sentence — and emits a second <!-- translation-status --> marker ahead of the real one, breaking find-or-update workflows.
From the review on PR #1: #1 (comment)
Smaller items, grouped because none is worth its own issue.
docs/HOSTNAME_POLICY.mdnames a per-repository lefthook command running.github/scripts/check-hardcoded-hostnames.shas the enforcement mechanism; this repo has the lefthook infrastructure but neither the command nor the script. 13 of the 22 workspace repos with alefthook.ymlcarry it. Either add it or record the exemption inAGENTS.md.ruff format --check.pyproject.tomlwaivesE501as "handled by formatter", but CI and lefthook runruff checkonly and./run formatrewrites rather than verifies. The sources are clean today, so adding the check costs nothing.ci.ymlis hand-written where every otherhalos-orgrepo callshalos-org/shared-workflows. Producing no.debdoes not opt a repo out —skipandskip-freeboard-panelare npm packages that callpr-checks.ymlwithskip-lintian: true, andversion-bump-checkalready no-ops without aVERSIONfile. Either adopt it or record the deviation.uvorruffis missing, so a clean commit can mean nothing was checked.build: false. Parking a work-in-progress locale is the obvious escape hatch when a language falls behind; today it blocks every pull request instead of pausing one language. Decide deliberately and write it down either way.check-anchorsreports a fragment link to a non-HTML asset as broken.resolve()appendsindex.htmlto any path without an.htmlsuffix, somanual.pdf#page=12— ordinary in hardware documentation — resolves tomanual.pdf/index.htmland fails. The documented remedy is--exclude, whose broad patterns produce the false green PR Package the documentation checkers and add a blocking translation gate #1 just closed. ReturnNonefor targets whose extension is present and is not.html.english_diffdrops content lines beginning--or++. The noise filter matches rendered diff lines by prefix, so a removed line whose text starts with--becomes---and is discarded as a file header. In the fixture a changed safety limit rendered as an addition with no corresponding removal. Drop headers by position, or match the anchored--- a/forms.-->that terminates the table early, renders chosen prose in the bot's voice — including the "everything is current" sentence — and emits a second<!-- translation-status -->marker ahead of the real one, breaking find-or-update workflows.READMEandAGENTS.mdreference av0.1.0tag that does not exist yet. PR Package the documentation checkers and add a blocking translation gate #1 replaced the literal with a placeholder; cut the tag when the package is first pinned.