Resolves #13896
Extends check-block-alignment.mjs so the formatter now catches declaration-alignment drift that previously escaped review: repeated keyword declaration runs, keyword-head comma-blocks with bare continuations, and stale padding in lone keyword declarations. The branch also dogfoods the new rule on the merged files that exposed the gap.
Evidence: L2 local static + focused unit evidence covers the close-target ACs. Residual: none.
Deltas from ticket
- Added repeated-keyword declaration block support and keyword-head comma-block support.
- Kept bare assignments out of scope, preserved template-line masking, and kept the legacy lone-keyword comma-block block-opener exclusion.
- Ran
--fix against ai/services/graph/providerReadinessHelper.mjs and ai/daemons/orchestrator/scheduling/summary.mjs so the merged drift from PRs #13885 and #13888 is mechanically corrected by the improved linter.
Test Evidence
node --check buildScripts/util/check-block-alignment.mjs
node --check test/playwright/unit/ai/buildScripts/util/check-block-alignment.spec.mjs
node --check ai/services/graph/providerReadinessHelper.mjs
node --check ai/daemons/orchestrator/scheduling/summary.mjs
node ./buildScripts/util/check-block-alignment.mjs buildScripts/util/check-block-alignment.mjs test/playwright/unit/ai/buildScripts/util/check-block-alignment.spec.mjs ai/services/graph/providerReadinessHelper.mjs ai/daemons/orchestrator/scheduling/summary.mjs
npm run agent-preflight -- buildScripts/util/check-block-alignment.mjs test/playwright/unit/ai/buildScripts/util/check-block-alignment.spec.mjs ai/services/graph/providerReadinessHelper.mjs ai/daemons/orchestrator/scheduling/summary.mjs
npm run test-unit -- test/playwright/unit/ai/buildScripts/util/check-block-alignment.spec.mjs test/playwright/unit/ai/scripts/runners/runSandman.spec.mjs test/playwright/unit/ai/daemons/orchestrator/scheduling/summary.spec.mjs test/playwright/unit/ai/daemons/orchestrator/Orchestrator.invariants.spec.mjs — 110 passed
git diff --check
- Pre-commit hook passed:
check-whitespace, check-shorthand, check-aiconfig-test-mutation, check-jsdoc-types, check-ticket-archaeology, and check-block-alignment --staged.
Post-Merge Validation
Commits
ebc0cebccf — fix(build): catch declaration alignment drift (#13896)
Authored by Euclid (GPT-5, Codex Desktop). Session db5b2ecf-db91-4b7d-9498-ccef00426a1c.
Resolves #13896
Extends
check-block-alignment.mjsso the formatter now catches declaration-alignment drift that previously escaped review: repeated keyword declaration runs, keyword-head comma-blocks with bare continuations, and stale padding in lone keyword declarations. The branch also dogfoods the new rule on the merged files that exposed the gap.Evidence: L2 local static + focused unit evidence covers the close-target ACs. Residual: none.
Deltas from ticket
--fixagainstai/services/graph/providerReadinessHelper.mjsandai/daemons/orchestrator/scheduling/summary.mjsso the merged drift from PRs#13885and#13888is mechanically corrected by the improved linter.Test Evidence
node --check buildScripts/util/check-block-alignment.mjsnode --check test/playwright/unit/ai/buildScripts/util/check-block-alignment.spec.mjsnode --check ai/services/graph/providerReadinessHelper.mjsnode --check ai/daemons/orchestrator/scheduling/summary.mjsnode ./buildScripts/util/check-block-alignment.mjs buildScripts/util/check-block-alignment.mjs test/playwright/unit/ai/buildScripts/util/check-block-alignment.spec.mjs ai/services/graph/providerReadinessHelper.mjs ai/daemons/orchestrator/scheduling/summary.mjsnpm run agent-preflight -- buildScripts/util/check-block-alignment.mjs test/playwright/unit/ai/buildScripts/util/check-block-alignment.spec.mjs ai/services/graph/providerReadinessHelper.mjs ai/daemons/orchestrator/scheduling/summary.mjsnpm run test-unit -- test/playwright/unit/ai/buildScripts/util/check-block-alignment.spec.mjs test/playwright/unit/ai/scripts/runners/runSandman.spec.mjs test/playwright/unit/ai/daemons/orchestrator/scheduling/summary.spec.mjs test/playwright/unit/ai/daemons/orchestrator/Orchestrator.invariants.spec.mjs— 110 passedgit diff --checkcheck-whitespace,check-shorthand,check-aiconfig-test-mutation,check-jsdoc-types,check-ticket-archaeology, andcheck-block-alignment --staged.Post-Merge Validation
Commits
ebc0cebccf—fix(build): catch declaration alignment drift (#13896)Authored by Euclid (GPT-5, Codex Desktop). Session db5b2ecf-db91-4b7d-9498-ccef00426a1c.