@event4u/agent-config 16.5.0 → 17.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.augment-plugin/marketplace.json +3 -3
- package/.augment-plugin/plugin.json +1 -1
- package/.claude-plugin/marketplace.json +2 -2
- package/.claude-plugin/skills/install-agent-config/SKILL.md +4 -4
- package/CHANGELOG.md +114 -530
- package/CONTRIBUTING.md +47 -0
- package/README.md +25 -24
- package/dist/agent-src/commands/{design.md → agent-design.md} +10 -6
- package/dist/agent-src/commands/agents/init.md +66 -3
- package/dist/agent-src/commands/agents/user/init.md +3 -0
- package/dist/agent-src/commands/{optimize/deep.md → analyze/and-optimize.md} +72 -33
- package/dist/agent-src/commands/analyze/inbox.md +168 -37
- package/dist/agent-src/commands/analyze/pr.md +144 -0
- package/dist/agent-src/commands/analyze/{repo.md → reference.md} +85 -14
- package/dist/agent-src/commands/analyze/roadmap-repos.md +19 -10
- package/dist/agent-src/commands/analyze.md +28 -12
- package/dist/agent-src/commands/audit.md +115 -0
- package/dist/agent-src/commands/brand/review.md +13 -2
- package/dist/agent-src/commands/brand/tokens.md +3 -3
- package/dist/agent-src/commands/brand/voice.md +8 -5
- package/dist/agent-src/commands/brand.md +2 -2
- package/dist/agent-src/commands/challenge-me/closure.md +25 -0
- package/dist/agent-src/commands/design-system/import.md +8 -3
- package/dist/agent-src/commands/design-system/sync.md +98 -0
- package/dist/agent-src/commands/design-system.md +6 -1
- package/dist/agent-src/commands/evals/analyze.json +44 -0
- package/dist/agent-src/commands/evals/audit.json +12 -0
- package/dist/agent-src/commands/evals/retro.json +12 -0
- package/dist/agent-src/commands/fix/ci.md +10 -8
- package/dist/agent-src/commands/ghostwriter/write.md +22 -0
- package/dist/agent-src/commands/memory/learn-low-impact.md +70 -83
- package/dist/agent-src/commands/memory/propose.md +12 -0
- package/dist/agent-src/commands/memory.md +1 -1
- package/dist/agent-src/commands/optimize.md +4 -3
- package/dist/agent-src/commands/post-as/me.md +18 -0
- package/dist/agent-src/commands/pr/create.md +17 -342
- package/dist/agent-src/commands/pr/merge.md +129 -368
- package/dist/agent-src/commands/retro.md +121 -0
- package/dist/agent-src/commands/review/routing.md +1 -1
- package/dist/agent-src/commands/roadmap/next.md +4 -1
- package/dist/agent-src/commands/roadmap/process-full.md +46 -333
- package/dist/agent-src/commands/roadmap/triage-parked.md +6 -2
- package/dist/agent-src/commands/team-knowledge/consolidate.md +2 -2
- package/dist/agent-src/commands/team-knowledge.md +1 -1
- package/dist/agent-src/commands/threat-model.md +1 -1
- package/dist/agent-src/commands/upstream-contribute.md +91 -101
- package/dist/agent-src/commands/worktree/cleanup.md +18 -11
- package/dist/agent-src/contexts/contracts/consumer-agents-md-guide.md +54 -0
- package/dist/agent-src/contexts/execution/analysis-loop.md +137 -0
- package/dist/agent-src/contexts/execution/auto-dispatch-classification.md +3 -3
- package/dist/agent-src/contexts/execution/decision-closure-execution.md +1 -1
- package/dist/agent-src/contexts/execution/host-capability-manifest.md +10 -2
- package/dist/agent-src/contexts/execution/orchestration-telemetry.md +11 -4
- package/dist/agent-src/contexts/execution/pr-create-branches-content.md +250 -0
- package/dist/agent-src/contexts/execution/pr-create-branches-freshness.md +150 -0
- package/dist/agent-src/contexts/execution/pr-merge-queue.md +287 -0
- package/dist/agent-src/contexts/execution/pr-merge-sync.md +276 -0
- package/dist/agent-src/contexts/execution/pr-merge-trust-boundary.md +69 -0
- package/dist/agent-src/contexts/execution/process-full-all.md +233 -0
- package/dist/agent-src/contexts/execution/process-full-delivery.md +231 -0
- package/dist/agent-src/contexts/execution/roadmap-execution-contract-branches.md +42 -0
- package/dist/agent-src/contexts/execution/roadmap-execution-contract.md +1 -35
- package/dist/agent-src/contexts/execution/roadmap-process-loop-close.md +235 -0
- package/dist/agent-src/contexts/execution/roadmap-process-loop-prescan.md +216 -0
- package/dist/agent-src/contexts/execution/roadmap-process-loop-run.md +253 -0
- package/dist/agent-src/contexts/execution/roadmap-process-loop-set.md +212 -0
- package/dist/agent-src/contexts/execution/roadmap-process-loop.md +25 -864
- package/dist/agent-src/contexts/execution/subagent-spawn-contract.md +14 -2
- package/dist/agent-src/contexts/execution/subagent-steering.md +65 -8
- package/dist/agent-src/contexts/model-recommendations.md +5 -5
- package/dist/agent-src/contexts/subagent-configuration.md +1 -1
- package/dist/agent-src/guidelines/agent-infra/api-cost-levers.md +4 -3
- package/dist/agent-src/guidelines/agent-infra/model-recommendation.md +11 -5
- package/dist/agent-src/guidelines/agent-infra/rule-body-migration-inventory.md +1 -1
- package/dist/agent-src/guidelines/agent-infra/self-improvement-pipeline.md +47 -24
- package/dist/agent-src/guidelines/design-antipatterns.md +5 -0
- package/dist/agent-src/guidelines/design-asset-discipline.md +17 -0
- package/dist/agent-src/guidelines/design-fidelity-routing.md +1 -0
- package/dist/agent-src/guidelines/php/api-design.md +10 -1
- package/dist/agent-src/rules/brand-source-of-truth.md +7 -6
- package/dist/agent-src/rules/code-provenance.md +1 -1
- package/dist/agent-src/rules/context-hygiene.md +0 -1
- package/dist/agent-src/rules/design-fidelity.md +12 -13
- package/dist/agent-src/rules/external-reference-deep-dive.md +2 -2
- package/dist/agent-src/rules/fix-what-you-see.md +1 -1
- package/dist/agent-src/rules/low-impact-corpus-privacy-floor.md +14 -15
- package/dist/agent-src/rules/missing-skill-recovery.md +12 -11
- package/dist/agent-src/rules/neighbour-precedence.md +1 -1
- package/dist/agent-src/rules/recurring-criticism.md +1 -1
- package/dist/agent-src/rules/roadmap-ci-steps-policy.md +0 -2
- package/dist/agent-src/rules/self-repair-loop.md +2 -2
- package/dist/agent-src/rules/token-budget-discipline.md +1 -1
- package/dist/agent-src/scripts/dashboard_mode.ts +4 -1
- package/dist/agent-src/scripts/roadmap_age.ts +175 -0
- package/dist/agent-src/scripts/update_roadmap_progress.ts +10 -2
- package/dist/agent-src/skills/accessibility-auditor/SKILL.md +3 -3
- package/dist/agent-src/skills/agent-security-review/SKILL.md +2 -2
- package/dist/agent-src/skills/agents-md-thin-root/SKILL.md +12 -4
- package/dist/agent-src/skills/ai-code-blindspots/SKILL.md +7 -0
- package/dist/agent-src/skills/ai-council/references/advanced-modes.md +11 -1
- package/dist/agent-src/skills/ai-council/references/cost-and-redaction.md +7 -0
- package/dist/agent-src/skills/ai-council/references/execution-modes.md +7 -0
- package/dist/agent-src/skills/ai-council/references/output-and-synthesis.md +19 -0
- package/dist/agent-src/skills/ai-council/references/procedure.md +7 -0
- package/dist/agent-src/skills/api-design/SKILL.md +2 -2
- package/dist/agent-src/skills/api-endpoint/SKILL.md +2 -2
- package/dist/agent-src/skills/authz-review/SKILL.md +5 -3
- package/dist/agent-src/skills/blade-ui/SKILL.md +2 -2
- package/dist/agent-src/skills/brand/SKILL.md +7 -3
- package/dist/agent-src/skills/brand-asset-generation/SKILL.md +13 -6
- package/dist/agent-src/skills/brand-audit/SKILL.md +2 -1
- package/dist/agent-src/skills/brand-identity/SKILL.md +5 -4
- package/dist/agent-src/skills/brand-strategy/SKILL.md +5 -4
- package/dist/agent-src/skills/brand-to-tokens/SKILL.md +18 -39
- package/dist/agent-src/skills/brand-to-tokens/templates/marp-brand-deck.md.example +2 -2
- package/dist/agent-src/skills/brand-to-tokens/templates/reveal-brand-deck.yaml +2 -2
- package/dist/agent-src/skills/canvas-design/SKILL.md +12 -2
- package/dist/agent-src/skills/competitive-positioning/SKILL.md +2 -2
- package/dist/agent-src/skills/composer-packages/SKILL.md +18 -0
- package/dist/agent-src/skills/condense-memory/SKILL.md +1 -1
- package/dist/agent-src/skills/content-funnel-design/SKILL.md +8 -1
- package/dist/agent-src/skills/context-authoring/SKILL.md +1 -1
- package/dist/agent-src/skills/context-document/SKILL.md +2 -2
- package/dist/agent-src/skills/corpus-grounding/SKILL.md +6 -6
- package/dist/agent-src/skills/corpus-grounding/scripts/decision_engine.ts +13 -11
- package/dist/agent-src/skills/corpus-grounding/scripts/ground.mjs +1706 -0
- package/dist/agent-src/skills/corpus-grounding/scripts/schema_validator.ts +7 -1
- package/dist/agent-src/skills/dashboard-design/SKILL.md +1 -1
- package/dist/agent-src/skills/data-flow-mapper/SKILL.md +5 -2
- package/dist/agent-src/skills/database/SKILL.md +5 -4
- package/dist/agent-src/skills/decision-record/references/weighted-matrix.md +12 -0
- package/dist/agent-src/skills/deep-reading-analyst/SKILL.md +1 -1
- package/dist/agent-src/skills/dependency-upgrade/SKILL.md +61 -11
- package/dist/agent-src/skills/description-assist/SKILL.md +1 -1
- package/dist/agent-src/skills/design-intelligence/SKILL.md +1 -1
- package/dist/agent-src/skills/design-intelligence/data/landing.csv +1 -1
- package/dist/agent-src/skills/design-intelligence/references/context-and-registers.md +10 -2
- package/dist/agent-src/skills/design-intelligence/references/design-languages.md +1 -1
- package/dist/agent-src/skills/design-intelligence/references/design-rules-checklist.md +4 -3
- package/dist/agent-src/skills/design-intelligence/references/integration-mapping.md +14 -14
- package/dist/agent-src/skills/{wireframe → design-review}/references/story-beat-ledger.schema.json +1 -1
- package/dist/agent-src/skills/design-review/references/verification-automation.md +11 -3
- package/dist/agent-src/skills/design-system-capture/SKILL.md +15 -10
- package/dist/agent-src/skills/design-system-capture/references/design-system-json.md +20 -5
- package/dist/agent-src/skills/design-system-capture/references/import-procedure.md +2 -2
- package/dist/agent-src/skills/design-tokens/SKILL.md +23 -23
- package/dist/agent-src/skills/design-tokens/scripts/tokens.mjs +1037 -0
- package/dist/agent-src/skills/design-tokens/scripts/tokens.ts +336 -13
- package/dist/agent-src/skills/design-tokens/templates/design-tokens-starter.json +52 -53
- package/dist/agent-src/skills/docker/SKILL.md +1 -1
- package/dist/agent-src/skills/estimate-ticket/SKILL.md +1 -1
- package/dist/agent-src/skills/existing-ui-audit/SKILL.md +14 -276
- package/dist/agent-src/skills/existing-ui-audit/procedure.yaml +44 -0
- package/dist/agent-src/skills/existing-ui-audit/references/anti-slop-cross-reference.md +1 -1
- package/dist/agent-src/skills/existing-ui-audit/references/steps/00-inspect-stack-and-input.md +4 -0
- package/dist/agent-src/skills/existing-ui-audit/references/steps/01-enumerate-components.md +26 -0
- package/dist/agent-src/skills/existing-ui-audit/references/steps/01b-detect-component-taxonomy.md +7 -0
- package/dist/agent-src/skills/existing-ui-audit/references/steps/02-identify-design-system.md +12 -0
- package/dist/agent-src/skills/existing-ui-audit/references/steps/03-detect-design-tokens.md +35 -0
- package/dist/agent-src/skills/existing-ui-audit/references/steps/04-detect-shadcn-inventory.md +13 -0
- package/dist/agent-src/skills/existing-ui-audit/references/steps/04b-live-storybook-read.md +26 -0
- package/dist/agent-src/skills/existing-ui-audit/references/steps/05-list-reusable-patterns.md +14 -0
- package/dist/agent-src/skills/existing-ui-audit/references/steps/06-match-candidates.md +52 -0
- package/dist/agent-src/skills/existing-ui-audit/references/steps/07-greenfield-branch.md +29 -0
- package/dist/agent-src/skills/existing-ui-audit/references/steps/08-a11y-baseline.md +40 -0
- package/dist/agent-src/skills/existing-ui-audit/references/steps/09-validate-and-write.md +5 -0
- package/dist/agent-src/skills/experiment-loop/SKILL.md +1 -1
- package/dist/agent-src/skills/fe-design/references/design-patterns.md +16 -2
- package/dist/agent-src/skills/fe-design/references/design-read-and-memory.md +1 -1
- package/dist/agent-src/skills/fe-design/references/source-led-port.md +1 -1
- package/dist/agent-src/skills/finishing-a-development-branch/SKILL.md +6 -6
- package/dist/agent-src/skills/flux/SKILL.md +1 -1
- package/dist/agent-src/skills/form-handler/SKILL.md +15 -2
- package/dist/agent-src/skills/git-workflow/SKILL.md +2 -2
- package/dist/agent-src/skills/git-workflow/references/branch-update.md +7 -0
- package/dist/agent-src/skills/git-workflow/references/commit-subject.md +12 -0
- package/dist/agent-src/skills/git-workflow/references/push-closes-its-loop.md +10 -0
- package/dist/agent-src/skills/gtm-launch/SKILL.md +8 -1
- package/dist/agent-src/skills/html-deck/SKILL.md +7 -2
- package/dist/agent-src/skills/humanizer/SKILL.md +16 -3
- package/dist/agent-src/skills/humanizer/references/anti-aiisms.md +13 -1
- package/dist/agent-src/skills/humanizer/references/fixtures.md +8 -0
- package/dist/agent-src/skills/js-library-packaging/SKILL.md +5 -4
- package/dist/agent-src/skills/js-library-packaging/scripts/check_package_surface.mjs +197 -0
- package/dist/agent-src/skills/judge-artifact-completeness/SKILL.md +1 -1
- package/dist/agent-src/skills/judge-security-auditor/SKILL.md +2 -2
- package/dist/agent-src/skills/launch-readiness/SKILL.md +18 -22
- package/dist/agent-src/skills/learning-to-rule-or-skill/SKILL.md +5 -5
- package/dist/agent-src/skills/livewire/SKILL.md +1 -1
- package/dist/agent-src/skills/llm-provider-knowledge/SKILL.md +18 -0
- package/dist/agent-src/skills/logo-generation/SKILL.md +9 -3
- package/dist/agent-src/skills/market-entry-analysis/SKILL.md +6 -1
- package/dist/agent-src/skills/markitdown/SKILL.md +1 -1
- package/dist/agent-src/skills/memory-consolidation/SKILL.md +2 -2
- package/dist/agent-src/skills/messaging-architecture/SKILL.md +8 -1
- package/dist/agent-src/skills/motion-choreographer/SKILL.md +2 -2
- package/dist/agent-src/skills/playwright-testing/SKILL.md +2 -0
- package/dist/agent-src/skills/positioning-strategy/SKILL.md +10 -2
- package/dist/agent-src/skills/prediction-pool-optimizer/references/ev-fixtures.md +13 -0
- package/dist/agent-src/skills/prediction-pool-optimizer/references/odds-and-bonus.md +7 -0
- package/dist/agent-src/skills/project-analysis-core/SKILL.md +1 -1
- package/dist/agent-src/skills/project-analysis-hypothesis-driven/SKILL.md +1 -1
- package/dist/agent-src/skills/project-analyzer/SKILL.md +14 -75
- package/dist/agent-src/skills/project-analyzer/procedure.yaml +39 -0
- package/dist/agent-src/skills/project-analyzer/references/steps/01-project-overview.md +9 -0
- package/dist/agent-src/skills/project-analyzer/references/steps/02-architecture.md +7 -0
- package/dist/agent-src/skills/project-analyzer/references/steps/03-data-layer.md +6 -0
- package/dist/agent-src/skills/project-analyzer/references/steps/04-business-domains.md +7 -0
- package/dist/agent-src/skills/project-analyzer/references/steps/05-api-surface.md +6 -0
- package/dist/agent-src/skills/project-analyzer/references/steps/06-service-map.md +6 -0
- package/dist/agent-src/skills/project-analyzer/references/steps/07-module-inventory.md +6 -0
- package/dist/agent-src/skills/project-analyzer/references/steps/08-infrastructure-and-testing.md +5 -0
- package/dist/agent-src/skills/project-analyzer/references/steps/09-agent-docs-audit.md +6 -0
- package/dist/agent-src/skills/project-analyzer/references/steps/10-gap-analysis.md +6 -0
- package/dist/agent-src/skills/quality-tools/references/js-ts-tools.md +10 -0
- package/dist/agent-src/skills/quality-tools/references/php-tools.md +13 -0
- package/dist/agent-src/skills/quality-tools/references/python-tools.md +11 -0
- package/dist/agent-src/skills/react-native-setup/SKILL.md +7 -2
- package/dist/agent-src/skills/react-shadcn-ui/SKILL.md +5 -1
- package/dist/agent-src/skills/react-shadcn-ui/references/registry.md +13 -0
- package/dist/agent-src/skills/react-shadcn-ui/scripts/shadcn_add.mjs +315 -0
- package/dist/agent-src/skills/react-shadcn-ui/scripts/shadcn_add.ts +6 -6
- package/dist/agent-src/skills/receiving-code-review/SKILL.md +1 -1
- package/dist/agent-src/skills/refine-ticket/SKILL.md +2 -2
- package/dist/agent-src/skills/release-comms/SKILL.md +2 -1
- package/dist/agent-src/skills/repomix-packer/SKILL.md +2 -2
- package/dist/agent-src/skills/requesting-code-review/SKILL.md +3 -3
- package/dist/agent-src/skills/roadmap-management/references/archival.md +3 -3
- package/dist/agent-src/skills/roadmap-management/references/authoring.md +9 -2
- package/dist/agent-src/skills/roadmap-management/references/dashboard.md +3 -3
- package/dist/agent-src/skills/roadmap-management/references/lifecycle.md +3 -3
- package/dist/agent-src/skills/roadmap-writing/SKILL.md +4 -4
- package/dist/agent-src/skills/rtk-output-filtering/SKILL.md +1 -1
- package/dist/agent-src/skills/rule-writing/SKILL.md +1 -2
- package/dist/agent-src/skills/security/SKILL.md +41 -5
- package/dist/agent-src/skills/skill-improvement-pipeline/SKILL.md +5 -3
- package/dist/agent-src/skills/skill-reviewer/SKILL.md +1 -1
- package/dist/agent-src/skills/skill-writing/SKILL.md +23 -8
- package/dist/agent-src/skills/skill-writing/references/section-patterns.md +19 -1
- package/dist/agent-src/skills/source-discovery/SKILL.md +3 -3
- package/dist/agent-src/skills/sql-writing/SKILL.md +2 -2
- package/dist/agent-src/skills/standards-from-config/SKILL.md +2 -2
- package/dist/agent-src/skills/storybook-workshop/SKILL.md +5 -0
- package/dist/agent-src/skills/storybook-workshop/scripts/story_contrast_floor.mjs +99 -0
- package/dist/agent-src/skills/subagent-orchestration/SKILL.md +13 -13
- package/dist/agent-src/skills/subagent-orchestration/prompts/README.md +4 -3
- package/dist/agent-src/skills/svg-authoring/SKILL.md +7 -1
- package/dist/agent-src/skills/systematic-debugging/SKILL.md +2 -2
- package/dist/agent-src/skills/tailwind-engineer/SKILL.md +8 -3
- package/dist/agent-src/skills/tailwind-engineer/scripts/tailwind_config_gen.mjs +482 -0
- package/dist/agent-src/skills/test-case-discovery/SKILL.md +1 -1
- package/dist/agent-src/skills/threat-modeling/SKILL.md +8 -1
- package/dist/agent-src/skills/threat-modeling/data/manifest.json +5 -2
- package/dist/agent-src/skills/threat-modeling/data/reasoning.csv +10 -10
- package/dist/agent-src/skills/threat-modeling/data/surfaces.csv +11 -10
- package/dist/agent-src/skills/threat-modeling/data/threats.csv +34 -20
- package/dist/agent-src/skills/type-design/SKILL.md +196 -0
- package/dist/agent-src/skills/type-design/references/font-spec.md +90 -0
- package/dist/agent-src/skills/type-design/references/gates.md +113 -0
- package/dist/agent-src/skills/type-design/references/toolchain.md +66 -0
- package/dist/agent-src/skills/typography-system/SKILL.md +21 -11
- package/dist/agent-src/skills/typography-system/references/worked-scales.md +85 -0
- package/dist/agent-src/skills/ui-apply-generic/SKILL.md +1 -1
- package/dist/agent-src/skills/universal-project-analysis/SKILL.md +1 -1
- package/dist/agent-src/skills/upstream-contribute/SKILL.md +120 -125
- package/dist/agent-src/skills/using-git-worktrees/SKILL.md +1 -0
- package/dist/agent-src/skills/verify-repair-loop/SKILL.md +1 -1
- package/dist/agent-src/skills/voice-and-tone-design/SKILL.md +71 -2
- package/dist/agent-src/skills/worktree-lifecycle/SKILL.md +16 -14
- package/dist/agent-src/templates/AGENTS.md +1 -1
- package/dist/agent-src/templates/agents/agent-project-settings.example.yml +1 -1
- package/dist/agent-src/templates/agents/proposal.example.md +1 -1
- package/dist/agent-src/templates/github-workflows/advisories-daily.yml +85 -0
- package/dist/agent-src/templates/roadmaps.md +44 -2
- package/dist/agent-src/templates/scripts/check_memory.ts +2 -2
- package/dist/agent-src/templates/scripts/historical-bug-patterns.example.yml +13 -1
- package/dist/agent-src/templates/scripts/work_engine/cli.ts +17 -0
- package/dist/agent-src/templates/scripts/work_engine/cli_args.ts +10 -0
- package/dist/agent-src/templates/scripts/work_engine/directives/ui/scaffold.ts +22 -13
- package/dist/agent-src/templates/scripts/work_engine/dispatcher.ts +18 -4
- package/dist/agent-src/templates/scripts/work_engine/procedure/checks.ts +283 -0
- package/dist/agent-src/templates/scripts/work_engine/procedure/run.ts +432 -0
- package/dist/agent-src/templates/scripts/work_engine/procedure/sidecar.ts +185 -0
- package/dist/agent-src/templates/scripts/work_engine/state.ts +3 -0
- package/dist/cli/commands/uiRender.js +72 -17
- package/dist/cli/commands/uiRenderAsset.js +10 -2
- package/dist/cli/commands/uiRenderAssetFonts.js +158 -0
- package/dist/cli/commands/uiRenderAssetTypes.js +8 -20
- package/dist/cli/initRouting.js +1 -1
- package/dist/cli/mcp/dispatch.js +31 -9
- package/dist/cli/python/knowledge_ingest.js +7 -39
- package/dist/cli/python/workspace_secrets.js +4 -177
- package/dist/cli/registry.js +4 -1
- package/dist/cli-delegate/archive_completed_roadmaps.js +3 -2
- package/dist/cli-delegate/check_update_banner.js +635 -266
- package/dist/cli-delegate/{chunk-TMWYUOK4.js → chunk-2CX7NWRB.js} +224 -437
- package/dist/cli-delegate/chunk-2Y5AMLMY.js +136 -0
- package/dist/cli-delegate/chunk-3PK3VZHB.js +235 -0
- package/dist/cli-delegate/{chunk-OKJUIAPS.js → chunk-4E2W63DA.js} +1 -62
- package/dist/cli-delegate/chunk-5VO3RTMV.js +208 -0
- package/dist/cli-delegate/chunk-6E2LDY4F.js +27 -0
- package/dist/cli-delegate/{chunk-XQTPXKFA.js → chunk-6ZD2QZMN.js} +8 -17
- package/dist/cli-delegate/{chunk-6V5FMA3P.js → chunk-7CEI2YPS.js} +1 -1
- package/dist/cli-delegate/{chunk-DMSZHXZS.js → chunk-7DRWULEQ.js} +80 -7
- package/dist/cli-delegate/chunk-7NXCZSDL.js +54 -0
- package/dist/cli-delegate/chunk-AX3U3UWJ.js +328 -0
- package/dist/cli-delegate/{chunk-WOKWX5PL.js → chunk-BKALSTBZ.js} +18 -3
- package/dist/cli-delegate/chunk-BMGUGSY6.js +103 -0
- package/dist/cli-delegate/chunk-BYV46VRM.js +3309 -0
- package/dist/cli-delegate/{chunk-F3QDG2GT.js → chunk-BZJ4Y3CI.js} +259 -159
- package/dist/cli-delegate/{chunk-5GPULQBE.js → chunk-CMZEKSNN.js} +4280 -705
- package/dist/cli-delegate/chunk-DSY6LLCQ.js +127 -0
- package/dist/cli-delegate/{chunk-ZUZKZYCN.js → chunk-E3CFULNX.js} +67 -13
- package/dist/cli-delegate/{chunk-G5VVIZRC.js → chunk-F7HLSW6P.js} +1 -1
- package/dist/cli-delegate/chunk-FIEEOH5C.js +133 -0
- package/dist/cli-delegate/chunk-FKYZOWVD.js +719 -0
- package/dist/cli-delegate/chunk-I4KJYVPB.js +69 -0
- package/dist/cli-delegate/{chunk-JQOM7TTM.js → chunk-IDAOTDPE.js} +1 -100
- package/dist/cli-delegate/chunk-J2SJZICO.js +698 -0
- package/dist/cli-delegate/chunk-KR5ZIFPO.js +581 -0
- package/dist/cli-delegate/{chunk-WQWXGIWB.js → chunk-M6CRG5O6.js} +165 -15
- package/dist/cli-delegate/{chunk-PHD7OOLE.js → chunk-MQ2UDEGV.js} +14 -3
- package/dist/cli-delegate/chunk-NTM7G2V4.js +220 -0
- package/dist/cli-delegate/chunk-PV7S5DPJ.js +175 -0
- package/dist/cli-delegate/chunk-QBHEI5N4.js +919 -0
- package/dist/cli-delegate/{chunk-F7DQWYR5.js → chunk-RAXQOETZ.js} +6 -2
- package/dist/cli-delegate/{chunk-KR6EM23A.js → chunk-TULVDQ4L.js} +3 -48
- package/dist/cli-delegate/chunk-UUYEKXKR.js +20 -0
- package/dist/cli-delegate/{chunk-7XGD2OEU.js → chunk-UXWHY6CQ.js} +2 -1
- package/dist/cli-delegate/{chunk-PWX7CKMD.js → chunk-VC3ECUEK.js} +1 -1
- package/dist/cli-delegate/{chunk-T7XSJSUQ.js → chunk-VYZGJLCA.js} +1000 -814
- package/dist/cli-delegate/chunk-W5JXMF2T.js +77 -0
- package/dist/cli-delegate/{chunk-KXXWJTDO.js → chunk-WMNYVIYX.js} +1 -1
- package/dist/cli-delegate/chunk-XCY5KKUC.js +181 -0
- package/dist/cli-delegate/{chunk-6SRJTYJS.js → chunk-XIAPY44N.js} +37 -16
- package/dist/cli-delegate/{chunk-H76PHZBI.js → chunk-XLY5G3CM.js} +14 -19
- package/dist/cli-delegate/{chunk-6YQC2HLF.js → chunk-YHAPONWV.js} +54 -40
- package/dist/cli-delegate/cmd_adr_effective.js +41 -2
- package/dist/cli-delegate/cmd_analyze_session.js +7 -7
- package/dist/cli-delegate/cmd_brand_status.js +1287 -10
- package/dist/cli-delegate/cmd_ci_settle.js +330 -0
- package/dist/cli-delegate/cmd_conformance.js +487 -820
- package/dist/cli-delegate/cmd_doctor.js +26 -16
- package/dist/cli-delegate/cmd_doctor_neighbours.js +10 -7
- package/dist/cli-delegate/cmd_explain.js +9 -24
- package/dist/cli-delegate/cmd_export.js +15 -12
- package/dist/cli-delegate/cmd_fleet.js +6 -4
- package/dist/cli-delegate/cmd_git_convention.js +8 -4
- package/dist/cli-delegate/cmd_handoff.js +79 -242
- package/dist/cli-delegate/cmd_mcp_available.js +1 -1
- package/dist/cli-delegate/cmd_memory_get.js +4 -2
- package/dist/cli-delegate/cmd_migrate.js +2 -2
- package/dist/cli-delegate/cmd_packs_active.js +2 -2
- package/dist/cli-delegate/cmd_preflight.js +8 -6
- package/dist/cli-delegate/cmd_prune.js +17 -14
- package/dist/cli-delegate/cmd_route_audit.js +11 -8
- package/dist/cli-delegate/cmd_route_explain.js +649 -16
- package/dist/cli-delegate/cmd_session_recycle.js +15 -6
- package/dist/cli-delegate/cmd_settings_check.js +2 -2
- package/dist/cli-delegate/cmd_settings_get.js +1 -1
- package/dist/cli-delegate/cmd_settings_migrate.js +15 -12
- package/dist/cli-delegate/cmd_settings_set.js +1 -1
- package/dist/cli-delegate/cmd_sync.js +17 -14
- package/dist/cli-delegate/cmd_uninstall.js +186 -32
- package/dist/cli-delegate/cmd_update.js +76 -16
- package/dist/cli-delegate/cmd_upgrade.js +38 -7
- package/dist/cli-delegate/cmd_validate.js +17 -14
- package/dist/cli-delegate/cmd_versions.js +1 -1
- package/dist/cli-delegate/dashboard_mode.js +1 -1
- package/dist/cli-delegate/gate_execute.js +4 -3
- package/dist/cli-delegate/roadmap_age.js +22 -0
- package/dist/cli-delegate/roadmap_gates.js +4 -3
- package/dist/cli-delegate/update_roadmap_progress.js +3 -2
- package/dist/cli-delegate/upgrade_unattended-VVL6JLSX.js +541 -0
- package/dist/discovery/deprecation-report.md +1 -1
- package/dist/discovery/discovery-manifest.json +373 -190
- package/dist/discovery/discovery-manifest.json.sha256 +1 -1
- package/dist/discovery/discovery-manifest.summary.md +5 -5
- package/dist/discovery/dormancy-report.md +1 -1
- package/dist/discovery/orphan-report.md +1 -1
- package/dist/discovery/packs.json +21 -16
- package/dist/discovery/trust-report.md +3 -3
- package/dist/discovery/workspaces.json +16 -11
- package/dist/hooks/chat_history.chunk.cjs +6852 -0
- package/dist/hooks/chat_history.chunk.cjs.sha256 +1 -0
- package/dist/hooks/dispatch.js +17450 -18612
- package/dist/hooks/dispatch.sha256 +1 -1
- package/dist/hooks/egress_engine.chunk.cjs +915 -0
- package/dist/hooks/egress_engine.chunk.cjs.sha256 +1 -0
- package/dist/hooks/svg_rules.chunk.cjs +281 -49
- package/dist/hooks/svg_rules.chunk.cjs.sha256 +1 -1
- package/dist/install/claudeRuleRewrite.js +10 -3
- package/dist/install/conflict.js +59 -7
- package/dist/install/conflictTracker.js +93 -8
- package/dist/install/detect.js +3 -3
- package/dist/install/hostPermissionsAdapter.js +106 -0
- package/dist/install/install.mjs +3234 -1961
- package/dist/install/installThinLayer.js +2 -1
- package/dist/install/loggedWrites.js +142 -0
- package/dist/install/manifestFiles.js +21 -0
- package/dist/install/noGoDenyRows.js +300 -0
- package/dist/install/noGoRules.js +368 -0
- package/dist/install/ownershipLedger.js +133 -0
- package/dist/install/paths.js +12 -2
- package/dist/install/plan.js +1 -1
- package/dist/install/preflight.js +39 -8
- package/dist/install/preserve.js +96 -13
- package/dist/install/recordedOwnership.js +88 -5
- package/dist/install/rule_scope.js +20 -3
- package/dist/install/stagedRuntime.js +455 -0
- package/dist/install/toolsArg.js +19 -0
- package/dist/install/txlog.js +10 -6
- package/dist/install/userPin.js +47 -0
- package/dist/install/wizard-plan.js +26 -4
- package/dist/mcp/awesome-mcp-servers.row.md +1 -1
- package/dist/mcp/mcp-cloudflare-catalogue.json +3 -2
- package/dist/mcp/registry-manifest.json +6 -5
- package/dist/mcp/server.json +3 -3
- package/dist/mcp/server.mjs +10716 -5880
- package/dist/router.json +1 -1
- package/dist/scripts/_lib/agent_settings.js +7 -12
- package/dist/scripts/_lib/asset_render_record.js +219 -0
- package/dist/scripts/_lib/claude_builtin_names.js +9 -4
- package/dist/scripts/_lib/claude_settings_hooks.js +102 -34
- package/dist/scripts/_lib/egress_rules.js +769 -0
- package/dist/scripts/_lib/environment_detector.js +24 -33
- package/dist/scripts/_lib/global_deploy_inventory.js +146 -9
- package/dist/scripts/_lib/guidelines_lane.js +10 -1
- package/dist/scripts/_lib/identifier_redaction.js +57 -0
- package/dist/scripts/_lib/installed_layer.js +17 -0
- package/dist/scripts/_lib/installed_layer_normalise.js +72 -0
- package/dist/scripts/_lib/lean_projection_mode.js +34 -152
- package/dist/scripts/_lib/project_tree_form.js +118 -0
- package/dist/scripts/_lib/scoped_projection.js +133 -3
- package/dist/scripts/_lib/settings_removed_keys.js +29 -0
- package/dist/scripts/_lib/settings_renamed_keys.js +17 -5
- package/dist/scripts/_lib/subagent_native_fields.js +35 -0
- package/dist/scripts/_lib/svg_filled_counter.js +285 -0
- package/dist/scripts/_lib/svg_rules.js +2 -0
- package/dist/scripts/_lib/ui_surface.js +19 -0
- package/dist/scripts/_lib/verification_command.js +364 -0
- package/dist/scripts/_lib/workspace_secrets.js +229 -0
- package/dist/scripts/ai_council/seat_policy.js +33 -0
- package/dist/scripts/ai_council/transport_resolver.js +9 -10
- package/dist/scripts/condense.js +25 -29
- package/dist/server/io/substituteTemplate.js +2 -2
- package/dist/server/io/yamlIO.js +2 -2
- package/dist/server/routes/install.js +5 -1
- package/dist/server/routes/settings.js +2 -2
- package/dist/server/routes/wizard.js +1 -1
- package/dist/server/schemas/settings.js +22 -16
- package/dist/server/serverInfo.js +1 -1
- package/dist/shared/brandTokenDocument.js +47 -0
- package/dist/shared/brandTokenPaths.js +43 -0
- package/dist/shared/settingsCarveOut.js +0 -7
- package/dist/shared/skillRanking.js +103 -5
- package/dist/shared/userMd/formAdapter.js +16 -0
- package/dist/shared/userMd/schema.js +17 -0
- package/dist/ui/assets/index-w70Ado09.js +23 -0
- package/dist/ui/index.html +1 -1
- package/docs/MIGRATION.md +89 -2
- package/docs/THIRD-PARTY-NOTICES.md +27 -0
- package/docs/contracts/settings-classes.md +27 -9
- package/docs/guidelines/agent-infra/api-cost-levers.md +4 -3
- package/docs/guidelines/agent-infra/model-recommendation.md +11 -5
- package/docs/guidelines/agent-infra/rule-body-migration-inventory.md +1 -1
- package/docs/guidelines/agent-infra/self-improvement-pipeline.md +47 -24
- package/docs/guidelines/design-antipatterns.md +5 -0
- package/docs/guidelines/design-asset-discipline.md +17 -0
- package/docs/guidelines/design-fidelity-routing.md +1 -0
- package/docs/guidelines/php/api-design.md +10 -1
- package/llms.txt +12 -10
- package/package.json +13 -4
- package/src/agent-src/scripts/dashboard_mode.ts +4 -1
- package/src/agent-src/scripts/roadmap_age.ts +175 -0
- package/src/agent-src/scripts/update_roadmap_progress.ts +10 -2
- package/src/agent-src/templates/AGENTS.md +1 -1
- package/src/agent-src/templates/scripts/check_memory.ts +2 -2
- package/src/agent-src/templates/scripts/historical-bug-patterns.example.yml +13 -1
- package/src/agent-src/templates/scripts/work_engine/cli.ts +17 -0
- package/src/agent-src/templates/scripts/work_engine/cli_args.ts +10 -0
- package/src/agent-src/templates/scripts/work_engine/directives/ui/scaffold.ts +22 -13
- package/src/agent-src/templates/scripts/work_engine/dispatcher.ts +18 -4
- package/src/agent-src/templates/scripts/work_engine/procedure/checks.ts +283 -0
- package/src/agent-src/templates/scripts/work_engine/procedure/run.ts +432 -0
- package/src/agent-src/templates/scripts/work_engine/procedure/sidecar.ts +185 -0
- package/src/agent-src/templates/scripts/work_engine/state.ts +3 -0
- package/src/config/agent-settings.template.yml +120 -57
- package/src/config/agents-paths.yml +13 -7
- package/src/config/ci-local-parity.yml +45 -1
- package/src/config/continuity-surface.json +51 -2
- package/src/config/depth-audit-samples.json +5 -0
- package/src/config/discovery/command-verbs.yml +1 -0
- package/src/config/dispatch-economy-metrics.json +1 -0
- package/src/config/egress-mutations/class-precedence-swapped.json +7 -0
- package/src/config/egress-mutations/credential-token-restores.json +7 -0
- package/src/config/egress-mutations/iban-checksum-disabled.json +7 -0
- package/src/config/egress-mutations/raw-value-in-the-count-record.json +7 -0
- package/src/config/evaluator-budgets.json +4 -4
- package/src/config/gate-coverage.yml +176 -10
- package/src/config/gate-reachability-exemptions.json +3 -5
- package/src/config/gate-violation-baselines.json +32 -22
- package/src/config/gitignore-block.txt +6 -3
- package/src/config/hook-bundle-budget.json +34 -3
- package/src/config/hook-carrier-probes.json +30 -0
- package/src/config/hook-latency-budget.json +4 -2
- package/src/config/host-injection-effect.json +8 -1
- package/src/config/host-skill-frontmatter-keys.json +56 -0
- package/src/config/layer-form-brakes.json +4 -0
- package/src/config/layer-form-comparison-corpus.json +42 -0
- package/src/config/loop-surfaces.yaml +28 -47
- package/src/config/memory-twin-verdicts.yml +9 -1
- package/src/config/metric-registry.yml +40 -3
- package/src/config/pack-size-budget.json +15 -0
- package/src/config/procedure-core-budget.json +21 -0
- package/src/config/production-entries.json +18 -0
- package/src/config/profiles/minimal.ini +1 -1
- package/src/config/project-tree-form.json +24 -0
- package/src/config/reach-channels.yml +3 -3
- package/src/config/reach-prescriptions-intake.yml +1 -1
- package/src/config/release-gate-locality.yml +0 -7
- package/src/config/roadmap-step-size-baseline.json +118 -0
- package/src/config/routing-coverage-seed.json +93 -2
- package/src/config/skill-body-budget.json +686 -0
- package/src/config/skill-fork-pilot.json +17 -0
- package/src/config/skill-lifecycle-probes-codex.json +57 -0
- package/src/config/skill-lifecycle-probes.json +57 -0
- package/src/config/skill-output-shape.json +316 -0
- package/src/config/step-depth-table.json +58 -0
- package/src/config/turnaround-budget.json +90 -0
- package/src/install/claudeRuleRewrite.ts +10 -1
- package/src/install/conflict.ts +61 -6
- package/src/install/conflictTracker.ts +143 -9
- package/src/install/detect.ts +3 -3
- package/src/install/hostPermissionsAdapter.ts +136 -0
- package/src/install/installThinLayer.ts +12 -1
- package/src/install/loggedWrites.ts +148 -0
- package/src/install/manifestFiles.ts +24 -0
- package/src/install/noGoDenyRows.ts +368 -0
- package/src/install/noGoRules.ts +438 -0
- package/src/install/ownershipLedger.ts +180 -0
- package/src/install/paths.ts +11 -2
- package/src/install/plan.ts +1 -1
- package/src/install/preflight.ts +42 -10
- package/src/install/preserve.ts +131 -13
- package/src/install/recordedOwnership.ts +121 -3
- package/src/install/rule_scope.ts +20 -3
- package/src/install/stagedRuntime.ts +528 -0
- package/src/install/toolsArg.ts +16 -0
- package/src/install/txlog.ts +10 -6
- package/src/install/types.ts +23 -2
- package/src/install/userPin.ts +54 -0
- package/src/install/wizard-plan.ts +25 -4
- package/src/scripts/_cli/_doctor_emit.ts +24 -0
- package/src/scripts/_cli/cmd_brand_status.ts +223 -12
- package/src/scripts/_cli/cmd_ci_settle.ts +32 -0
- package/src/scripts/_cli/cmd_conformance.ts +3 -2
- package/src/scripts/_cli/cmd_doctor.ts +23 -44
- package/src/scripts/_cli/cmd_route_explain.ts +176 -2
- package/src/scripts/_cli/cmd_uninstall.ts +270 -26
- package/src/scripts/_cli/cmd_update.ts +49 -18
- package/src/scripts/_cli/cmd_upgrade.ts +38 -2
- package/src/scripts/_cli/detection_report.ts +7 -0
- package/src/scripts/_cli/doctor_execution.ts +1 -2
- package/src/scripts/_cli/doctor_install_mode.ts +39 -0
- package/src/scripts/_cli/doctor_network_posture.ts +3 -3
- package/src/scripts/_cli/doctor_ownership_ledger.ts +126 -0
- package/src/scripts/_cli/doctor_update_verdict.ts +104 -0
- package/src/scripts/_cli/explain_last/scrubber.ts +9 -21
- package/src/scripts/_cli/upgrade_unattended.ts +548 -0
- package/src/scripts/_dispatch.bash +42 -9
- package/src/scripts/_lib/activation_ladder.ts +1 -1
- package/src/scripts/_lib/advisory_inventory.ts +405 -0
- package/src/scripts/_lib/advisory_notice.ts +270 -0
- package/src/scripts/_lib/advisory_sources.ts +752 -0
- package/src/scripts/_lib/advisory_verdicts.ts +363 -0
- package/src/scripts/_lib/agent_artifact_location.ts +177 -0
- package/src/scripts/_lib/agent_settings.ts +7 -12
- package/src/scripts/_lib/arrival_record.ts +217 -0
- package/src/scripts/_lib/asset_render_record.ts +247 -0
- package/src/scripts/_lib/billing_grant.ts +4 -2
- package/src/scripts/_lib/brand_voice_slot.ts +258 -0
- package/src/scripts/_lib/canary_status.ts +24 -0
- package/src/scripts/_lib/cc_transcript.ts +276 -0
- package/src/scripts/_lib/changelog_eras.ts +83 -0
- package/src/scripts/_lib/claim_phrases.ts +71 -0
- package/src/scripts/_lib/classify_update.ts +171 -0
- package/src/scripts/_lib/claude_builtin_names.ts +9 -4
- package/src/scripts/_lib/claude_hook_scope.ts +195 -0
- package/src/scripts/_lib/claude_settings_hooks.ts +118 -34
- package/src/scripts/_lib/codex_resident_set.ts +460 -0
- package/src/scripts/_lib/codex_skill_finder.ts +225 -0
- package/src/scripts/_lib/confusables.ts +19 -0
- package/src/scripts/_lib/consumer_impact.ts +199 -0
- package/src/scripts/_lib/content_class.ts +127 -0
- package/src/scripts/_lib/council_settings_block.ts +9 -2
- package/src/scripts/_lib/counted_probe.ts +68 -1
- package/src/scripts/_lib/credential_deny_rows.ts +151 -0
- package/src/scripts/_lib/credential_files.ts +367 -0
- package/src/scripts/_lib/delivery_arm_experiment.ts +2 -2
- package/src/scripts/_lib/depth_flip.ts +141 -0
- package/src/scripts/_lib/design_lock.ts +117 -0
- package/src/scripts/_lib/design_sync_ledger.ts +142 -0
- package/src/scripts/_lib/design_sync_plan.ts +177 -0
- package/src/scripts/_lib/design_sync_reconcile.ts +159 -0
- package/src/scripts/_lib/design_sync_verify.ts +99 -0
- package/src/scripts/_lib/design_system_claude_design.ts +323 -0
- package/src/scripts/_lib/design_system_import.ts +84 -6
- package/src/scripts/_lib/dispatch_import_closure.ts +42 -11
- package/src/scripts/_lib/egress_credential_env.ts +35 -0
- package/src/scripts/_lib/egress_engine.ts +22 -0
- package/src/scripts/_lib/egress_known_values.ts +223 -0
- package/src/scripts/_lib/egress_normalize.ts +67 -0
- package/src/scripts/_lib/egress_prefixes.ts +42 -0
- package/src/scripts/_lib/egress_rules.ts +899 -0
- package/src/scripts/_lib/egress_rules_linearity.ts +56 -0
- package/src/scripts/_lib/egress_sender_scan.ts +290 -0
- package/src/scripts/_lib/egress_session_table.ts +510 -0
- package/src/scripts/_lib/egress_text.ts +63 -0
- package/src/scripts/_lib/egress_token.ts +252 -0
- package/src/scripts/_lib/empty_cycles.ts +1 -1
- package/src/scripts/_lib/environment_detector.ts +45 -30
- package/src/scripts/_lib/exemption_shape.ts +75 -1
- package/src/scripts/_lib/floor_posture.ts +185 -0
- package/src/scripts/_lib/forge_protection.ts +140 -2
- package/src/scripts/_lib/global_deploy_inventory.ts +159 -6
- package/src/scripts/_lib/guidelines_lane.ts +12 -1
- package/src/scripts/_lib/hand_kinds.ts +65 -0
- package/src/scripts/_lib/headless_invocation.ts +3 -3
- package/src/scripts/_lib/host_capability.ts +44 -7
- package/src/scripts/_lib/host_env_write.ts +39 -18
- package/src/scripts/_lib/host_listing_model.ts +14 -7
- package/src/scripts/_lib/identifier_redaction.ts +62 -0
- package/src/scripts/_lib/impact_bump.ts +70 -0
- package/src/scripts/_lib/install_reach_checks.ts +53 -1
- package/src/scripts/_lib/installed_layer.ts +31 -0
- package/src/scripts/_lib/installed_layer_normalise.ts +75 -0
- package/src/scripts/_lib/instructions_loaded_classify.ts +75 -0
- package/src/scripts/_lib/instructions_loaded_event.ts +53 -0
- package/src/scripts/_lib/knowledge_global_redaction.ts +2 -2
- package/src/scripts/_lib/layer_form_corpus.ts +165 -0
- package/src/scripts/_lib/layer_form_decision.ts +248 -0
- package/src/scripts/_lib/layer_form_evidence.ts +112 -0
- package/src/scripts/_lib/lean_projection_mode.ts +32 -161
- package/src/scripts/_lib/llm_proposer_transport.ts +1 -0
- package/src/scripts/_lib/loop_guards.ts +8 -120
- package/src/scripts/_lib/major_surface.ts +207 -0
- package/src/scripts/_lib/mcp_bridge.ts +30 -69
- package/src/scripts/_lib/merge_clearance_record.ts +384 -0
- package/src/scripts/_lib/neighbour_census.ts +18 -1
- package/src/scripts/_lib/orchestration_record.ts +61 -0
- package/src/scripts/_lib/outcome_vocabularies.ts +15 -23
- package/src/scripts/_lib/pin_advice.ts +49 -0
- package/src/scripts/_lib/platform_anchor.ts +222 -0
- package/src/scripts/_lib/price_freshness.ts +112 -0
- package/src/scripts/_lib/procedure_checks.ts +5 -0
- package/src/scripts/_lib/production_reach.ts +194 -0
- package/src/scripts/_lib/project_tree_form.ts +134 -0
- package/src/scripts/_lib/projection_key_migration.ts +122 -0
- package/src/scripts/_lib/prompt_shape.ts +13 -2
- package/src/scripts/_lib/provenance_verify.ts +272 -0
- package/src/scripts/_lib/quota_parked.ts +29 -14
- package/src/scripts/_lib/ratification_artifact.ts +64 -1
- package/src/scripts/_lib/ratification_subject.ts +508 -46
- package/src/scripts/_lib/release_findings_ingest.ts +36 -311
- package/src/scripts/_lib/release_highlights.ts +72 -2
- package/src/scripts/_lib/release_settings_surface.ts +392 -0
- package/src/scripts/_lib/review_round.ts +134 -0
- package/src/scripts/_lib/roadmap_checkboxes.ts +1 -1
- package/src/scripts/_lib/roadmap_slug_lock.ts +254 -0
- package/src/scripts/_lib/roadmap_step_size.ts +75 -0
- package/src/scripts/_lib/run_checkpoint.ts +60 -3
- package/src/scripts/_lib/runtime_wiring_checks.ts +15 -1
- package/src/scripts/_lib/scope_guard.sh +64 -5
- package/src/scripts/_lib/scoped_projection.ts +136 -3
- package/src/scripts/_lib/secret_detector.ts +24 -103
- package/src/scripts/_lib/security_fix.ts +429 -0
- package/src/scripts/_lib/security_fix_context.ts +133 -0
- package/src/scripts/_lib/self_repair.ts +69 -39
- package/src/scripts/_lib/self_repair_outgoing.ts +209 -0
- package/src/scripts/_lib/self_repair_payload.ts +86 -0
- package/src/scripts/_lib/session_eol.ts +3 -0
- package/src/scripts/_lib/session_pr_watch.ts +207 -0
- package/src/scripts/_lib/session_register.ts +51 -1
- package/src/scripts/_lib/session_tag.ts +51 -0
- package/src/scripts/_lib/settings_removed_keys.ts +30 -0
- package/src/scripts/_lib/settings_renamed_keys.ts +19 -5
- package/src/scripts/_lib/skill_catalogue.ts +66 -25
- package/src/scripts/_lib/skill_fork_pilot.ts +121 -0
- package/src/scripts/_lib/skill_leases.ts +203 -0
- package/src/scripts/_lib/skill_listing_overrides.ts +294 -0
- package/src/scripts/_lib/skill_materialisation.ts +388 -0
- package/src/scripts/_lib/skill_materialisation_gate.ts +210 -0
- package/src/scripts/_lib/skill_materialisation_lock.ts +149 -0
- package/src/scripts/_lib/skill_materialisation_triggers.ts +96 -0
- package/src/scripts/_lib/skill_origin.ts +21 -1
- package/src/scripts/_lib/skill_reach.ts +342 -0
- package/src/scripts/_lib/source_shape.ts +7 -2
- package/src/scripts/_lib/sqlite_guard.ts +1 -1
- package/src/scripts/_lib/step_anatomy.ts +330 -0
- package/src/scripts/_lib/subagent_capsule.ts +8 -2
- package/src/scripts/_lib/subagent_native_fields.ts +30 -0
- package/src/scripts/_lib/subagent_spawn.ts +36 -0
- package/src/scripts/_lib/subagent_steering.ts +367 -0
- package/src/scripts/_lib/svg_filled_counter.ts +287 -0
- package/src/scripts/_lib/svg_rules.ts +2 -0
- package/src/scripts/_lib/test_delta.ts +89 -6
- package/src/scripts/_lib/tier_downshift_verdict.ts +268 -0
- package/src/scripts/_lib/tool_result_census.ts +62 -0
- package/src/scripts/_lib/trigger_routers.ts +1 -0
- package/src/scripts/_lib/turnaround_throughput.ts +378 -0
- package/src/scripts/_lib/ui_surface.ts +22 -0
- package/src/scripts/_lib/unattended_gates.ts +100 -0
- package/src/scripts/_lib/undeployed_fixes.ts +34 -0
- package/src/scripts/_lib/update_check.ts +143 -12
- package/src/scripts/_lib/update_invite.ts +116 -0
- package/src/scripts/_lib/update_notice.ts +259 -0
- package/src/scripts/_lib/verify_clause.ts +4 -2
- package/src/scripts/_lib/version_order.ts +146 -0
- package/src/scripts/_lib/worker_reuse.ts +191 -0
- package/src/scripts/_lib/workspace_secrets.ts +273 -0
- package/src/scripts/_lib/worktree_git.ts +67 -0
- package/src/scripts/_lib/worktree_ignored.ts +116 -0
- package/src/scripts/adoption_status.ts +330 -3
- package/src/scripts/adr_cite_check.ts +93 -0
- package/src/scripts/advisories.ts +803 -0
- package/src/scripts/ai-image/adapters/flux.sh +1 -0
- package/src/scripts/ai-image/adapters/gemini-image.sh +1 -0
- package/src/scripts/ai-image/adapters/ideogram.sh +1 -0
- package/src/scripts/ai-image/adapters/recraft.sh +1 -0
- package/src/scripts/ai-video/adapters/comfyui.sh +1 -0
- package/src/scripts/ai-video/adapters/fal.sh +1 -0
- package/src/scripts/ai-video/adapters/gemini-veo.sh +1 -0
- package/src/scripts/ai-video/adapters/higgsfield.sh +1 -0
- package/src/scripts/ai-video/adapters/kling.sh +1 -0
- package/src/scripts/ai-video/adapters/musetalk.sh +1 -0
- package/src/scripts/ai-video/adapters/openai-images.sh +1 -0
- package/src/scripts/ai-video/adapters/replicate.sh +1 -0
- package/src/scripts/ai-video/adapters/sora.sh +1 -0
- package/src/scripts/ai-video/adapters/syncso.sh +1 -0
- package/src/scripts/ai-video/stitch.sh +115 -2
- package/src/scripts/ai_council/airgap.ts +1 -0
- package/src/scripts/ai_council/api_transport.ts +27 -4
- package/src/scripts/ai_council/budget_guard.ts +300 -11
- package/src/scripts/ai_council/bundler.ts +20 -29
- package/src/scripts/ai_council/chairman.ts +20 -2
- package/src/scripts/ai_council/cli_agency_bounds.ts +158 -0
- package/src/scripts/ai_council/cli_launch_env.ts +54 -0
- package/src/scripts/ai_council/cli_least_agency_canary.ts +18 -2
- package/src/scripts/ai_council/clients.ts +56 -73
- package/src/scripts/ai_council/config.ts +16 -22
- package/src/scripts/ai_council/council_egress.ts +167 -0
- package/src/scripts/ai_council/exposure_ledger.ts +117 -0
- package/src/scripts/ai_council/free_hand_shadow.ts +288 -0
- package/src/scripts/ai_council/free_route.ts +216 -0
- package/src/scripts/ai_council/free_route_catalog.ts +310 -0
- package/src/scripts/ai_council/free_route_client.ts +99 -0
- package/src/scripts/ai_council/free_rung.ts +61 -0
- package/src/scripts/ai_council/hand_payload.ts +338 -0
- package/src/scripts/ai_council/hand_schemas.ts +123 -0
- package/src/scripts/ai_council/jury_aggregate.ts +155 -1
- package/src/scripts/ai_council/kind_flip.ts +221 -0
- package/src/scripts/ai_council/kind_flip_state.ts +19 -0
- package/src/scripts/ai_council/learn_low_impact_preview.ts +50 -22
- package/src/scripts/ai_council/modification_review.ts +98 -5
- package/src/scripts/ai_council/necessity.ts +7 -0
- package/src/scripts/ai_council/orchestrator.ts +23 -26
- package/src/scripts/ai_council/pricing.ts +10 -0
- package/src/scripts/ai_council/redact_low_impact_entry.ts +5 -2
- package/src/scripts/ai_council/response_render.ts +27 -4
- package/src/scripts/ai_council/round_reservations.ts +119 -0
- package/src/scripts/ai_council/route_chooser.ts +161 -0
- package/src/scripts/ai_council/route_liveness.ts +152 -0
- package/src/scripts/ai_council/route_member.ts +114 -0
- package/src/scripts/ai_council/seat_policy.ts +47 -0
- package/src/scripts/ai_council/seat_resume.ts +40 -0
- package/src/scripts/ai_council/self_hosted_probe.ts +327 -0
- package/src/scripts/ai_council/shadow_dispatch.ts +13 -3
- package/src/scripts/ai_council/spend_gate.ts +18 -2
- package/src/scripts/ai_council/status_surface.ts +39 -0
- package/src/scripts/ai_council/transport_resolver.ts +15 -18
- package/src/scripts/analysis_analysts.ts +226 -0
- package/src/scripts/analysis_anchors.ts +140 -0
- package/src/scripts/analysis_and_optimize.ts +44 -0
- package/src/scripts/analysis_emit.ts +150 -0
- package/src/scripts/analysis_exchange.ts +186 -0
- package/src/scripts/analysis_gate.ts +158 -0
- package/src/scripts/analysis_inbox_final.ts +173 -0
- package/src/scripts/analysis_ledger.ts +119 -0
- package/src/scripts/analysis_pr_optimize.ts +219 -0
- package/src/scripts/analysis_pr_review.ts +240 -0
- package/src/scripts/analysis_pr_target.ts +121 -0
- package/src/scripts/analysis_prompts.ts +130 -0
- package/src/scripts/analysis_publish.ts +358 -0
- package/src/scripts/analysis_questions.ts +78 -0
- package/src/scripts/analysis_run.ts +248 -0
- package/src/scripts/analysis_run_record.ts +210 -0
- package/src/scripts/analysis_target.ts +343 -0
- package/src/scripts/analysis_validate.ts +161 -0
- package/src/scripts/anchor_eval_falsify.ts +1 -1
- package/src/scripts/arrival_report.ts +115 -0
- package/src/scripts/ask_transport.ts +406 -35
- package/src/scripts/backfill_model_tier.ts +4 -5
- package/src/scripts/before_complete_hook.ts +48 -2
- package/src/scripts/bench_hook_latency.ts +3 -3
- package/src/scripts/bench_procedure_cursor.ts +440 -0
- package/src/scripts/bootstrap.sh +3 -3
- package/src/scripts/build_exit_code_register.ts +440 -0
- package/src/scripts/build_proof.ts +23 -1
- package/src/scripts/cache_realization_report.ts +155 -14
- package/src/scripts/canary_liveness.ts +117 -0
- package/src/scripts/chat_history.ts +12 -15
- package/src/scripts/check_account_surface.ts +318 -0
- package/src/scripts/check_agent_artifact_location.ts +17 -160
- package/src/scripts/check_bundle_path_leakage.ts +6 -0
- package/src/scripts/check_ci_local_parity.ts +21 -13
- package/src/scripts/check_claims.ts +77 -2
- package/src/scripts/check_completion_review.ts +34 -1
- package/src/scripts/check_concern_admissions.ts +41 -5
- package/src/scripts/check_consumer_scope_flip.ts +1 -1
- package/src/scripts/check_context_paths.ts +2 -0
- package/src/scripts/check_council_layout.ts +9 -0
- package/src/scripts/check_credential_spelling.ts +267 -0
- package/src/scripts/check_egress_mutations.ts +239 -0
- package/src/scripts/check_enforcement_coverage.ts +16 -3
- package/src/scripts/check_estate_count.ts +16 -1
- package/src/scripts/check_finding_dispositions.ts +174 -73
- package/src/scripts/check_gate_coverage.ts +123 -21
- package/src/scripts/check_gate_reachability.ts +16 -2
- package/src/scripts/check_generator_sync.ts +46 -0
- package/src/scripts/check_hook_bundle_composition.ts +139 -1
- package/src/scripts/check_host_docs_digest.ts +142 -5
- package/src/scripts/check_kernel_edit_ratified.ts +301 -76
- package/src/scripts/check_kernel_rule_bundle.ts +14 -10
- package/src/scripts/check_knowledge_cards.ts +83 -3
- package/src/scripts/check_memory.ts +13 -3
- package/src/scripts/check_pack_size.ts +1 -1
- package/src/scripts/check_permission_deny_syntax.ts +247 -0
- package/src/scripts/check_platform_anchor.ts +243 -0
- package/src/scripts/check_proposal.ts +183 -1
- package/src/scripts/check_reach_channels.ts +5 -3
- package/src/scripts/check_references.ts +5 -2
- package/src/scripts/check_release_manifest_content.ts +33 -0
- package/src/scripts/check_release_pr_shape.ts +8 -3
- package/src/scripts/check_rule_invariants.ts +9 -1
- package/src/scripts/check_skill_body_budget.ts +343 -0
- package/src/scripts/check_skill_requires.ts +137 -1
- package/src/scripts/check_step_production_reach.ts +257 -0
- package/src/scripts/check_step_receipts.ts +246 -0
- package/src/scripts/check_structural_breaking.ts +7 -1
- package/src/scripts/check_suppression_hygiene.ts +8 -0
- package/src/scripts/check_test_weakening.ts +14 -0
- package/src/scripts/check_token_quality_golden.ts +5 -1
- package/src/scripts/check_update_banner.ts +50 -3
- package/src/scripts/check_verify_expectation_delta.ts +2 -1
- package/src/scripts/check_voice_lexicon.ts +531 -0
- package/src/scripts/ci_os_attribution.ts +327 -0
- package/src/scripts/ci_platform_scope.ts +69 -0
- package/src/scripts/ci_settle.ts +4 -1
- package/src/scripts/ci_status.ts +0 -1
- package/src/scripts/ci_time_to_green.ts +748 -0
- package/src/scripts/classify_merge_risk.ts +407 -19
- package/src/scripts/code_graph/sqlite_store.ts +1 -1
- package/src/scripts/compile_trigger_evals.ts +353 -0
- package/src/scripts/condense.ts +25 -31
- package/src/scripts/consumer_matrix.ts +61 -3
- package/src/scripts/council_availability_hook.ts +12 -4
- package/src/scripts/council_cli.ts +56 -44
- package/src/scripts/cross_repo_retrieve.ts +9 -72
- package/src/scripts/design_lock.ts +106 -0
- package/src/scripts/design_slop_rules.ts +30 -0
- package/src/scripts/design_sync.ts +264 -0
- package/src/scripts/design_system_import.ts +30 -13
- package/src/scripts/dispatch_economy_report.ts +46 -1
- package/src/scripts/dispatch_r2_reviewer.ts +41 -5
- package/src/scripts/egress_canary.ts +166 -0
- package/src/scripts/egress_sender_census.ts +101 -0
- package/src/scripts/external_sources_denylist.json +94 -12
- package/src/scripts/generate_catalog.ts +6 -2
- package/src/scripts/generate_owned_digest.ts +163 -0
- package/src/scripts/generate_reference_toc.ts +143 -0
- package/src/scripts/generate_subagent_floor.ts +11 -1
- package/src/scripts/handoff_context_hook.ts +34 -0
- package/src/scripts/hook_carrier_census.ts +263 -0
- package/src/scripts/hook_chunks.d.mts +12 -0
- package/src/scripts/hook_chunks.mjs +114 -0
- package/src/scripts/hook_manifest.json +1 -1
- package/src/scripts/hook_manifest.yaml +68 -42
- package/src/scripts/hooks/block_config_weakening.ts +127 -3
- package/src/scripts/hooks/block_credential_reads.ts +165 -0
- package/src/scripts/hooks/block_no_verify.ts +47 -23
- package/src/scripts/hooks/block_speaking_inbox_dir.ts +38 -7
- package/src/scripts/hooks/category_a.ts +202 -25
- package/src/scripts/hooks/concern_failure_policy.ts +6 -6
- package/src/scripts/hooks/concern_registry.ts +31 -6
- package/src/scripts/hooks/concern_registry_types.ts +11 -0
- package/src/scripts/hooks/delegation_nudge_hook.ts +105 -15
- package/src/scripts/hooks/design_pass_hook.ts +42 -10
- package/src/scripts/hooks/dispatch_hook.ts +14 -13
- package/src/scripts/hooks/egress_engine_loader.ts +125 -0
- package/src/scripts/hooks/egress_stage.ts +440 -0
- package/src/scripts/hooks/hook_stdin.ts +29 -4
- package/src/scripts/hooks/host_docs_pages.ts +194 -0
- package/src/scripts/hooks/host_docs_pages.yaml +75 -0
- package/src/scripts/hooks/host_lowering.json +1 -1
- package/src/scripts/hooks/host_lowering.yaml +22 -21
- package/src/scripts/hooks/host_rate_marker_hook.ts +73 -0
- package/src/scripts/hooks/instructions_observer_hook.ts +170 -0
- package/src/scripts/hooks/interruption_ledger_hook.ts +1 -1
- package/src/scripts/hooks/lazy_concern.ts +148 -0
- package/src/scripts/hooks/orchestration_record_hook.ts +80 -2
- package/src/scripts/hooks/payload_stub.ts +43 -6
- package/src/scripts/hooks/permission_gate.ts +7 -7
- package/src/scripts/hooks/push_settle_hook.ts +32 -3
- package/src/scripts/hooks/replay_hook.ts +43 -0
- package/src/scripts/hooks/reread_guard_hook.ts +87 -10
- package/src/scripts/hooks/rtk_wrap_hook.ts +4 -3
- package/src/scripts/hooks/rule_inject_hook.ts +8 -1
- package/src/scripts/hooks/session_eol_hook.ts +48 -1
- package/src/scripts/hooks/source_first_gate_hook.ts +6 -8
- package/src/scripts/hooks/spawn_guard_shadow_hook.ts +162 -10
- package/src/scripts/hooks/state_io.ts +2 -2
- package/src/scripts/hooks/subagent_ledger_hook.ts +80 -0
- package/src/scripts/hooks/svg_obligation.ts +75 -19
- package/src/scripts/hooks/tool_result_bytes_hook.ts +14 -5
- package/src/scripts/hooks/turn_end_gate_hook.ts +1 -1
- package/src/scripts/hooks/ui_route_nudge_hook.ts +2 -12
- package/src/scripts/hooks_doctor.ts +31 -0
- package/src/scripts/hooks_status.ts +58 -3
- package/src/scripts/inbox_source_census.ts +74 -13
- package/src/scripts/install +25 -3
- package/src/scripts/install.ts +61 -92
- package/src/scripts/interruption_report.ts +11 -1
- package/src/scripts/layer_baseline_report.ts +267 -0
- package/src/scripts/learning_sidecar.ts +1 -1
- package/src/scripts/lint_agents_layout.ts +3 -0
- package/src/scripts/lint_blocker_citations.ts +104 -0
- package/src/scripts/lint_breaking_changes_index.ts +40 -7
- package/src/scripts/lint_consolidation_lineage.ts +144 -16
- package/src/scripts/lint_consumer_internal_refs.ts +90 -42
- package/src/scripts/lint_context_spine_usage.ts +21 -0
- package/src/scripts/lint_decision_classes.ts +34 -0
- package/src/scripts/lint_design_antipattern_parity.ts +39 -7
- package/src/scripts/lint_evidence_artifacts.ts +31 -0
- package/src/scripts/lint_example_fences.ts +11 -2
- package/src/scripts/lint_ghostwriter_source.ts +42 -10
- package/src/scripts/lint_hook_manifest.ts +118 -0
- package/src/scripts/lint_marketplace_install_completeness.ts +4 -0
- package/src/scripts/lint_mcp_config_security.ts +9 -11
- package/src/scripts/lint_plan_risk_register.ts +28 -1
- package/src/scripts/lint_positioning.ts +4 -4
- package/src/scripts/lint_provenance.ts +1 -0
- package/src/scripts/lint_roadmap_blockers.ts +114 -4
- package/src/scripts/lint_roadmap_complexity.ts +98 -0
- package/src/scripts/lint_skill_link_reach.ts +251 -9
- package/src/scripts/lint_skill_procedures.ts +252 -0
- package/src/scripts/lint_skill_scripts_readonly.ts +12 -1
- package/src/scripts/lint_subagent_determinism.ts +14 -1
- package/src/scripts/lint_ticked_unmet_criteria.ts +300 -21
- package/src/scripts/mcp_registry_submit.sh +2 -2
- package/src/scripts/mcp_server/consumer_tool_catalog.json +4 -4
- package/src/scripts/mcp_server/suggest_skill.ts +89 -4
- package/src/scripts/mcp_server/tools.ts +2 -33
- package/src/scripts/measure_skill_ranker_baseline.ts +203 -5
- package/src/scripts/measure_turn_end_gate.ts +61 -1
- package/src/scripts/merge_clearance.ts +225 -0
- package/src/scripts/migrate_command_suggestions.ts +1 -1
- package/src/scripts/network_sources.ts +236 -0
- package/src/scripts/no_go_deny_rows.ts +225 -0
- package/src/scripts/orchestration_record.ts +15 -2
- package/src/scripts/plan_test_shards.ts +103 -0
- package/src/scripts/pr_url_reminder_hook.ts +10 -0
- package/src/scripts/print_required_checks.ts +5 -5
- package/src/scripts/probe_depth_shadow.ts +406 -0
- package/src/scripts/probe_turnaround.ts +342 -10
- package/src/scripts/ratification_subject.ts +176 -0
- package/src/scripts/rdp_gate_classify.ts +1 -0
- package/src/scripts/rdp_quality_eval.ts +1 -0
- package/src/scripts/release.ts +31 -64
- package/src/scripts/release_drill.ts +63 -188
- package/src/scripts/release_env.ts +37 -0
- package/src/scripts/release_publication.ts +11 -10
- package/src/scripts/report_consumer_gate_reach.ts +233 -0
- package/src/scripts/report_merge_gate_load.ts +295 -0
- package/src/scripts/report_production_reach.ts +35 -0
- package/src/scripts/report_project_contract.ts +123 -0
- package/src/scripts/report_reducible_classes.ts +342 -0
- package/src/scripts/report_required_checks_drift.ts +5 -3
- package/src/scripts/report_skill_host_census.ts +199 -0
- package/src/scripts/report_standing_payload_by_host.ts +7 -7
- package/src/scripts/retro.ts +758 -0
- package/src/scripts/retro_facts.ts +575 -0
- package/src/scripts/retro_queue.ts +739 -0
- package/src/scripts/retro_session_facts.ts +218 -0
- package/src/scripts/retro_sweep.ts +493 -0
- package/src/scripts/retro_triage.ts +126 -0
- package/src/scripts/roadmap_context.ts +2 -2
- package/src/scripts/roadmap_drain_queue.ts +601 -0
- package/src/scripts/run_supervise.ts +24 -2
- package/src/scripts/schemas/agent-settings.schema.json +0 -16
- package/src/scripts/schemas/command.schema.json +3 -3
- package/src/scripts/schemas/review-findings.schema.json +8 -0
- package/src/scripts/schemas/skill.schema.json +7 -6
- package/src/scripts/schemas/subagent.schema.json +33 -2
- package/src/scripts/score_skill_selection.ts +5 -2
- package/src/scripts/second_brain_retrieval.ts +1 -0
- package/src/scripts/second_brain_run.ts +1 -0
- package/src/scripts/self_repair_cli.ts +563 -87
- package/src/scripts/self_review_gate.ts +59 -4
- package/src/scripts/session_register_hook.ts +91 -4
- package/src/scripts/sessions_cli.ts +100 -5
- package/src/scripts/skill_collision_clusters.ts +1 -1
- package/src/scripts/skill_tools/score_skill_relevance.ts +31 -2
- package/src/scripts/skill_trigger_eval.ts +4 -2
- package/src/scripts/source_adapters.ts +183 -0
- package/src/scripts/step_receipt.ts +100 -0
- package/src/scripts/sync_pr_branch.ts +4 -0
- package/src/scripts/test_council_qualification.ts +1 -1
- package/src/scripts/trigger_eval_grandfather.json +3 -49
- package/src/scripts/trigger_eval_rotation.ts +31 -3
- package/src/scripts/ui_conformance_probe.ts +405 -1
- package/src/scripts/update_counts.ts +230 -11
- package/src/scripts/update_invite_hook.ts +245 -0
- package/src/scripts/update_notice_hook.ts +298 -0
- package/src/scripts/validate_frontmatter.ts +85 -0
- package/src/scripts/worker_reuse_shadow_report.ts +519 -0
- package/src/scripts/worktree_cleanup_check.ts +915 -121
- package/src/server/io/yamlIO.ts +2 -2
- package/src/server/schemas/settings.ts +37 -23
- package/src/shared/brandTokenDocument.ts +46 -0
- package/src/shared/brandTokenPaths.ts +43 -0
- package/src/shared/settingsCarveOut.ts +0 -8
- package/src/shared/skillRanking.ts +106 -5
- package/src/shared/userMd/formAdapter.ts +15 -1
- package/src/shared/userMd/schema.ts +22 -0
- package/src/templates/agent-user.md +4 -0
- package/src/templates/agent-user.yml +4 -0
- package/dist/cli-delegate/chunk-4DBG5K7M.js +0 -1123
- package/dist/cli-delegate/chunk-523HCFYO.js +0 -90
- package/dist/cli-delegate/chunk-A4QJ6ENT.js +0 -50
- package/dist/cli-delegate/chunk-AL3RZ22D.js +0 -74
- package/dist/cli-delegate/chunk-KB5FZ655.js +0 -208
- package/dist/cli-delegate/chunk-MDPPKQCQ.js +0 -875
- package/dist/cli-delegate/chunk-OAFSJBHH.js +0 -272
- package/dist/ui/assets/index-C3djEJah.js +0 -23
- package/src/scripts/_lib/continuation_ladder.ts +0 -335
- package/src/scripts/hooks/run_continuation_hook.ts +0 -1524
package/CHANGELOG.md
CHANGED
|
@@ -30,504 +30,11 @@ Entry-shape contract: [`docs/contracts/CHANGELOG-conventions.md`](docs/contracts
|
|
|
30
30
|
|
|
31
31
|
## [Unreleased]
|
|
32
32
|
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
default in the same change. **If your `.agent-settings.yml` still sets one,
|
|
39
|
-
that value is ignored** and the loader prints one line per key —
|
|
40
|
-
`<key> was removed (<what decides instead>); ignored.` — so a non-default
|
|
41
|
-
value you chose is lost visibly, never silently. Delete the line to silence
|
|
42
|
-
it. The keys:
|
|
43
|
-
- Output and tone: `telegraph.speak`, `tokens.rich_skills`, `personal.minimal_output`, `personal.play_by_play`, `personal.pr_comment_bot_icon`, `verbosity.intent_announcements`, `verbosity.preview_artifacts`, `verbosity.routine_confirmations`, `verbosity.post_action_reports`.
|
|
44
|
-
- Reasoning protocol switches: `reasoning.auto_gate`, `reasoning.components.orchestrator`, `reasoning.components.notes_first`, `reasoning.components.grounding`, `reasoning.components.intent`, `reasoning.components.complexity_first`, `reasoning.components.verifier_default`, `reasoning.components.prediction_tracking`, `reasoning.components.decision_ledger`, `reasoning.components.uncertainty_budget`.
|
|
45
|
-
- Roadmap cadence: `roadmap.skip_pre_run_gate`, `roadmap.dashboard_regen_cadence`.
|
|
46
|
-
- Command suggestion and PR creation: `commands.auto_detect`, `commands.suggestion.enabled`, `commands.suggestion.confidence_floor`, `commands.suggestion.cooldown_seconds`, `commands.suggestion.max_options`, `commands.create_pr.api_examples`, `commands.create_pr.ui_paths`, `commands.create_pr.api_paths`.
|
|
47
|
-
- Memory and knowledge sharing: `memory.cadence`, `memory.review_threshold`, `knowledge.global_sharing.redaction.enabled`, `knowledge.global_sharing.redaction.halt_on_trigger`, `knowledge.global_sharing.auto_promote_threshold`, `knowledge.global_sharing.freshness.hypothesis_after_days`, `knowledge.global_sharing.freshness.stale_after_days`.
|
|
48
|
-
- Hooks and engine: `hooks.concern_budget.max_per_event`, `hooks.concern_budget.hard_fail`, `decision_engine.surface_traces`, `decision_engine.on_block_fallback`, `explain.enable_last`.
|
|
49
|
-
- Remaining: `project.pr_template`, `pipelines.skill_improvement`, `consistency.cross_source`, `subagents.downshift`, `ai_team.suppress_setup_hint`.
|
|
50
|
-
The reference page lists each key with the behavior that replaces it
|
|
51
|
-
(`templates/agent-settings.md` § Retired keys).
|
|
52
|
-
|
|
53
|
-
- **A medium security finding now needs a disposition before a release
|
|
54
|
-
ships.** `check_finding_dispositions` treats `security × medium` as blocking
|
|
55
|
-
for every release after 16.3.0 (council 2026-10-07, 2/2). Such a row must
|
|
56
|
-
carry `fixed` (with its commit), `false_positive` or `accepted_risk`, each
|
|
57
|
-
with a rationale and a `verified_by`, like any blocking row, and
|
|
58
|
-
`still_open` keeps the release red with a message saying so. On a release
|
|
59
|
-
pull request (`--pr`), a medium security finding the self-review reported
|
|
60
|
-
but the ledger lacks is red too. Releases up to 16.3.0 are judged as they
|
|
61
|
-
shipped. The merge gate (`self_review_gate.classifyBlocking`) is unchanged,
|
|
62
|
-
so on every other pull request the finding only advises. `claim × medium`
|
|
63
|
-
stays advisory in both.
|
|
64
|
-
- **No spend bound applies unless you set one.** Owner directive, 2026-10-05,
|
|
65
|
-
recorded as **ADR-279** and accepted on the owner's own answer (option (a))
|
|
66
|
-
on 2026-10-06. With nothing configured, no USD or token ceiling this package
|
|
67
|
-
defines stops a council run, a debate or a paid gate, and none of them asks —
|
|
68
|
-
because no ceiling exists to ask about. Every ceiling remains settable and
|
|
69
|
-
behaves exactly as its contract describes once set.
|
|
70
|
-
**Your own council file is not rewritten.** If you copied
|
|
71
|
-
`agents/templates/.ai-council.yml.example` before this release it carries
|
|
72
|
-
these lines explicitly, and they are your figures now:
|
|
73
|
-
`cost_budget.max_input_tokens: 500000`, `cost_budget.max_output_tokens:
|
|
74
|
-
200000`, `cost_budget.max_total_usd: 20.0` and `debate.max_cost_usd: 5.00`.
|
|
75
|
-
Delete them to become unbounded; keep them to stay bounded. The shipped
|
|
76
|
-
defaults behind an absent key moved to `0` in all three layers — the loader,
|
|
77
|
-
the command's own fallback for a file with no `cost_budget` block, and the
|
|
78
|
-
`CostBudget` constructor.
|
|
79
|
-
**`max_calls` and the debate round limits did not move**: they bound call
|
|
80
|
-
count per invocation, not money. Nor did any of the controls listed under
|
|
81
|
-
§ What stays in ADR-279 — provider refusals, the per-day plan-quota guards,
|
|
82
|
-
the `--confirm` a class-1 gate asks for, the debate's between-round
|
|
83
|
-
confirmation, or the budget an unattended run must still be given.
|
|
84
|
-
**Two defects were repaired in the same change, and both could bite a
|
|
85
|
-
configured install.** `0` was documented as disabling a token cap and did
|
|
86
|
-
not — the two token comparisons carried no zero guard while the two USD
|
|
87
|
-
comparisons beside them did, so a budget with every cap at zero breached on
|
|
88
|
-
a ten-token estimate. And the class-1 gate's two caps had to BOTH be set
|
|
89
|
-
before EITHER applied, so setting one left you bounded by neither. Each cap
|
|
90
|
-
now bounds alone.
|
|
91
|
-
**One optional hard stop now works for the first time.** With
|
|
92
|
-
`cost.enforcement: hard-stop` and a budget configured, the cost preflight
|
|
93
|
-
resolved its budget script relative to the working directory, read the
|
|
94
|
-
resulting empty output as "no budget configured", and exited `0` on a spent
|
|
95
|
-
budget from every working directory. It now resolves the script from its own
|
|
96
|
-
location and exits non-zero as its contract always said it would.
|
|
97
|
-
|
|
98
|
-
- **`agent-config init` no longer overwrites a managed file you have edited.**
|
|
99
|
-
Owner ruling, 2026-09-21, taken after an AI council split 1/1 on it. Until
|
|
100
|
-
now the installer's `_resolve_file_conflict` returned `write` for every
|
|
101
|
-
deployed file and its header recorded `--force` as an accepted no-op
|
|
102
|
-
"because installs always overwrite" — while the planner had, since the
|
|
103
|
-
preceding change, produced a list naming exactly the files you had edited.
|
|
104
|
-
The report named the file and the next install replaced it.
|
|
105
|
-
A managed file whose bytes diverge from the SHA-256 the install manifest
|
|
106
|
-
recorded is now **preserved**, and the package content it would have been
|
|
107
|
-
replaced with is staged beside it as `<path>.agent-config.new` — a
|
|
108
|
-
tool-owned suffix, not a bare `.new`, so the installer never claims a
|
|
109
|
-
namespace other tools already write into.
|
|
110
|
-
**The staleness is deliberately loud, and that is the load-bearing half.**
|
|
111
|
-
Preserving an edit leaves the active installation not-current, and a stale
|
|
112
|
-
install exiting `0` would make that silent. So a run that preserved anything
|
|
113
|
-
exits **`3`** (new, distinct from `0` success, `1` failure and `2` usage),
|
|
114
|
-
names each preserved file on stderr with the sentence "the active
|
|
115
|
-
installation is not current", and prints a count. Under `--progress-ndjson`
|
|
116
|
-
the count also rides on the terminal `done` frame, which the wizard's apply
|
|
117
|
-
route forwards as `summary.conflicts`; a zero-conflict run's frames are
|
|
118
|
-
byte-identical to before. **`--force` is now a real escape hatch** — it
|
|
119
|
-
replaces the managed file and exits `0`.
|
|
120
|
-
Scripts that treat any non-zero exit from `init` as a failure will see `3`
|
|
121
|
-
on a tree with local edits. That is the intended signal, not a regression:
|
|
122
|
-
the install did complete, and the tree is not current.
|
|
123
|
-
Three things are deliberately absent. There is **no semantic
|
|
124
|
-
classification** — one byte of divergence from the recorded digest is the
|
|
125
|
-
whole test, because a format-aware diff would pull per-format parsers into
|
|
126
|
-
the installer's trusted computing base and a syntactically trivial edit can
|
|
127
|
-
still be intentional. There is **no fallback to overwriting** under conflict
|
|
128
|
-
volume or resource pressure, and no bulk accept flag. And an **existing
|
|
129
|
-
sidecar is never clobbered**: identical bytes are a no-op, anything else
|
|
130
|
-
fails the run with the package content staged nowhere, because a pathname
|
|
131
|
-
matching the convention is not proof the installer wrote it.
|
|
132
|
-
The verdict is computed from a re-hash of the destination **at the moment of
|
|
133
|
-
the write**, not from the plan: the planner's conflict list is advisory
|
|
134
|
-
state, and a plan-time verdict is blind to an edit made in between.
|
|
135
|
-
|
|
136
|
-
### Fixed
|
|
137
|
-
|
|
138
|
-
- **The self-review gate reviews again — it had reviewed nothing for four
|
|
139
|
-
consecutive releases.** 14.17.0, 14.18.0, 14.19.0 and 14.20.0 each returned
|
|
140
|
-
`HTTP 400 prompt is too long` and each recorded an honest null in
|
|
141
|
-
`agents/evidence/release-findings/`. The release path sets the analysis base
|
|
142
|
-
to the previous tag, so the whole release span went into **one** request.
|
|
143
|
-
**All four** recorded a figure against the 200000 cap — 235472 (14.17.0),
|
|
144
|
-
413191 (14.18.0), 450336 (14.19.0), 260998 (14.20.0) — and the smallest
|
|
145
|
-
exceeded it by 17.7 %. (An earlier draft of this entry said three releases
|
|
146
|
-
recorded a figure and put the smallest at 30 % over; both were wrong, and the
|
|
147
|
-
omitted reading was the one nearest the cap — the one that most constrains
|
|
148
|
-
the budget. The conclusion does not depend on the error: every span observed
|
|
149
|
-
exceeds the cap.) `buildPlan` already computed `promptChars` and only
|
|
150
|
-
*reported* it, so nothing consulted the number before spending the call.
|
|
151
|
-
The diff is now partitioned **per file** into requests under a character
|
|
152
|
-
budget, each is reviewed, and findings are merged and deduplicated on the
|
|
153
|
-
finding id the ledger already uses. Verified against the live span that had
|
|
154
|
-
been failing: 5 requests, no path left out.
|
|
155
|
-
**Nothing is truncated**, and that is the load-bearing decision: a silently
|
|
156
|
-
shortened diff yields findings about a fragment while reading as a review of
|
|
157
|
-
the whole change, which is the false green this repository's honest-null
|
|
158
|
-
discipline exists to prevent. So a single file larger than one request is
|
|
159
|
-
**named as unreviewed** rather than cut mid-hunk, a per-run request ceiling
|
|
160
|
-
bounds the spend and reports its remainder, a chunk whose call fails no longer
|
|
161
|
-
discards the chunks that succeeded, and the rendered PR comment carries a
|
|
162
|
-
**Coverage** block stating what was not read — including the sentence that
|
|
163
|
-
absence of a finding for an unreviewed path is not evidence about that path.
|
|
164
|
-
`--dry-run` now prints the request count rather than only a token estimate,
|
|
165
|
-
because this gate spends per request, and warns when a span sits at the
|
|
166
|
-
ceiling. The budget factor is a character proxy **derived from those four
|
|
167
|
-
failures** (measured diff chars / reported tokens = 3.13 and 3.18) and set
|
|
168
|
-
below them, because the ratio is content-dependent — cl100k over this repo's
|
|
169
|
-
own diffs reads ~3.9 for `src/`, ~4.1 for prose and ~2.75 for a lockfile. A
|
|
170
|
-
call that still overflows a budgeted chunk falsifies that number, not the
|
|
171
|
-
partitioning.
|
|
172
|
-
**A neutral reviewer on the first version found three defects that are fixed
|
|
173
|
-
here rather than shipped.** The coverage line counted every file in a dropped
|
|
174
|
-
chunk as reviewed — 59 of 60 for a run that read 4, because the partition
|
|
175
|
-
packed to opaque strings and reported one aggregate row; it ignored chunks
|
|
176
|
-
whose call had failed, computing the number before those were appended; and a
|
|
177
|
-
non-ASCII filename was silently skipped **and** counted as read, because
|
|
178
|
-
`git diff --name-only` renders it quoted and the quoted form then matches no
|
|
179
|
-
pathspec. Coverage is now summed from the chunks that actually returned, every
|
|
180
|
-
dropped chunk names its own files, and paths are read with
|
|
181
|
-
`core.quotePath=false`. Correcting the budget ratio shrank each request, so
|
|
182
|
-
the same span needed five: the request ceiling moved from four to six rather
|
|
183
|
-
than paying for tokenizer safety with silent coverage loss.
|
|
184
|
-
Known limits, stated rather than implied: coverage lives in prose, so an
|
|
185
|
-
`--enforce` run over a partial review still returns 0, and
|
|
186
|
-
`check_finding_dispositions --ingest` reads only `.findings`, so the durable
|
|
187
|
-
ledger does not record the coverage the artifact now carries.
|
|
188
|
-
|
|
189
|
-
### Added
|
|
190
|
-
|
|
191
|
-
- **An old project keeps its real commit format — `agent-config git:convention
|
|
192
|
-
measure`.** A repository with no declared convention and no approved card is
|
|
193
|
-
now measured instead of silently given Conventional Commits: the verb samples
|
|
194
|
-
the non-merge history of the default branch, resolved as the carrier resolves
|
|
195
|
-
it (the server's symref, then `refs/remotes/origin/HEAD`) — with no default
|
|
196
|
-
branch it says so and exits `1` rather than sampling `main`, `master` or the
|
|
197
|
-
current branch in its place — drops bots, automation and bulk imports, caps
|
|
198
|
-
each author per half, and names the established subject family or — below the
|
|
199
|
-
bar — the two strongest. It also proposes a `branch_pattern` from the remote
|
|
200
|
-
branch names (or reports no clear pattern) and shows the observed update style,
|
|
201
|
-
which it never adopts. The thresholds are constants of the module the verb
|
|
202
|
-
runs and are rendered into the commit-subject reference, not restated by hand.
|
|
203
|
-
`show` and `subject` print `no convention established — run git:convention
|
|
204
|
-
measure` in that state (`convention_established` under `--json`; exit codes
|
|
205
|
-
unchanged). An interactive `/commit` asks once — the established family or the
|
|
206
|
-
two strongest against Conventional Commits — and writes the answer to the
|
|
207
|
-
approved convention card, also when the answer is Conventional, so the question
|
|
208
|
-
is never repeated; `/commit:in-chunks` never asks and reports the measurement.
|
|
209
|
-
Where the choice maps to a setting, `measure` prints the ready-to-commit
|
|
210
|
-
`.git-convention.yml` (`commit_format`, `branch_pattern`, never
|
|
211
|
-
`update_strategy`); a human creates and commits it, the agent never writes it.
|
|
212
|
-
|
|
213
|
-
- **A team's git convention can be declared instead of measured — the new
|
|
214
|
-
`git:` settings block.** Three Class-C keys, each defaulting to the
|
|
215
|
-
behaviour every install had before, so an install that sets nothing is
|
|
216
|
-
unchanged. `git.commit_format: ticket-conventional` writes
|
|
217
|
-
`DEV-1234 feat(exporter): …` instead of `feat(DEV-1234): …` and treats a
|
|
218
|
-
ticket in the scope as a wrong subject; `/commit` and `/commit:in-chunks`
|
|
219
|
-
validate against the regex for the configured format, and the
|
|
220
|
-
conventional-commits-writing classifier gains a `ticket-conventional` family
|
|
221
|
-
so such a history is no longer misread as free-text ticket prefixes.
|
|
222
|
-
`git.branch_pattern` (`{type}`, `{ticket}`, `{slug}`) shapes the branches
|
|
223
|
-
`/worktree:create` proposes; reading a ticket back out of a branch now takes
|
|
224
|
-
the first `[A-Z][A-Z0-9]+-[0-9]+` token that is not a standard name (`UTF`,
|
|
225
|
-
`ISO`, `SHA`, `RFC` prefixes), so `DEV-1234-device-export` yields its ticket.
|
|
226
|
-
Under `git.update_strategy: rebase`, `/create-pr` asks for
|
|
227
|
-
`git rebase origin/<base>` plus `--force-with-lease`, and `/pr:merge`,
|
|
228
|
-
`/prepare-for-review` and `/review:changes` report a behind branch instead of
|
|
229
|
-
updating it; none of them merges the base into a feature branch — one git-workflow reference
|
|
230
|
-
(`references/branch-update.md`) now owns that decision, and
|
|
231
|
-
`sync_pr_branch` exits `3` instead of merging when such a branch is behind
|
|
232
|
-
(a current branch still exits `0`). **What it does not do:** the setting picks the operation and never
|
|
233
|
-
authorises it; git-history-discipline still requires the user's request for
|
|
234
|
-
every rebase, fixup or autosquash. A team declares the keys in
|
|
235
|
-
`.git-convention.yml`, a tracked file at the repository root that overrides
|
|
236
|
-
every developer settings file and where either value is a declaration
|
|
237
|
-
(ADR-283): `git.update_strategy` is read from it at the commit a pull request
|
|
238
|
-
is judged against, so a worktree, a fresh clone and CI agree and a pull
|
|
239
|
-
request cannot change the strategy its own update is judged by;
|
|
240
|
-
`git.commit_format` and `git.branch_pattern` are read at `HEAD`. Without the
|
|
241
|
-
carrier the keys come from the project settings files as before; the
|
|
242
|
-
user-global file does not carry them, and the settings GUI no longer offers
|
|
243
|
-
them while it writes there. `agent-config git:convention show` prints the
|
|
244
|
-
value in force, the commit it was read at and a differing checkout value as
|
|
245
|
-
a candidate; `show --key` judges only the named keys. The commit is the
|
|
246
|
-
`--base` given — a pull request passes `--base origin/<its base>` — else the
|
|
247
|
-
default branch; nothing asks the forge. A carrier that does not parse makes
|
|
248
|
-
`sync_pr_branch` exit `4`, a target that names no commit exit `1`, and a named
|
|
249
|
-
commit that cannot be fetched is `unverified`; none of them merges. A target
|
|
250
|
-
that moves between the strategy read and the merge is read again at the
|
|
251
|
-
commit being merged, which is governed by the strategy it carries: the same
|
|
252
|
-
strategy goes on against it, another one exits `1` before anything is
|
|
253
|
-
merged. A blank `--base` is a usage error (exit `2`) in `sync_pr_branch`,
|
|
254
|
-
`git:convention show` and `sync`, and `check_branch_freshness`, never read
|
|
255
|
-
as no `--base`. A commit-linting config
|
|
256
|
-
in the repository still outranks `git.commit_format`. In a packed consumer
|
|
257
|
-
install `git:convention show` is the git surface that resolves, and the
|
|
258
|
-
consumer matrix proves it with a `git-convention` leg; `sync_pr_branch` and
|
|
259
|
-
`check_branch_freshness`, which `/pr:merge`, `/create-pr`, `/fix:ci` and
|
|
260
|
-
`/roadmap:next` run through `./scripts-run`, still need a source checkout of
|
|
261
|
-
this package.
|
|
262
|
-
The merge method is not a key: `/pr:merge` already reads it from the forge.
|
|
263
|
-
|
|
264
|
-
- **A push no longer ships a branch whose tree contradicts its own commits.**
|
|
265
|
-
`check_branch_work_committed` runs first in the pre-push hook, and it exists
|
|
266
|
-
because this branch produced the defect it guards: a merge-reconciled baseline
|
|
267
|
-
was written into `gate-violation-baselines.json` **after** `git add`, so
|
|
268
|
-
`git commit --no-edit` captured the staged side, the reconciled number stayed
|
|
269
|
-
in the working tree, and the push went out asserting a baseline the tree
|
|
270
|
-
contradicted. The operator found it, not the pipeline — and **no CI gate
|
|
271
|
-
could have**: CI checks out the pushed commit, and the working tree holding
|
|
272
|
-
the lost edit does not exist there. That is why this gate is pre-push and
|
|
273
|
-
local-only, the same reach `check_branch_freshness` has.
|
|
274
|
-
It blocks by **authorship**, not on a dirty tree, because a blanket
|
|
275
|
-
clean-tree rule would fire on every gate script's own report output and train
|
|
276
|
-
the operator to set the skip variable: staged-and-changed-since (the measured
|
|
277
|
-
shape), staged at all (`git add` is recorded intent, and a push carries
|
|
278
|
-
commits rather than the index), and dirty files this branch's own commits
|
|
279
|
-
touch. A parallel session's edit and a gate's report output are named and
|
|
280
|
-
waved through. One residual limit is stated in the header rather than hidden:
|
|
281
|
-
a file this branch created and neither staged nor committed cannot be told
|
|
282
|
-
apart from a foreign untracked file; the staged rule closes it at the first
|
|
283
|
-
`git add`, and that rule exists because testing the gate against the live
|
|
284
|
-
tree put its own source file in the advisory class.
|
|
285
|
-
|
|
286
|
-
### Fixed
|
|
287
|
-
|
|
288
|
-
- **`task release` no longer asks the releaser to write anything, and the
|
|
289
|
-
written-answer obligation is deleted (ADR-261).** This entry replaces the one
|
|
290
|
-
that stood here — *"the release's written obligation is now answerable, not
|
|
291
|
-
only refusable"* — because that mechanism landed and was removed in the same
|
|
292
|
-
cycle, and shipping its description would be a false claim about 14.21.0.
|
|
293
|
-
|
|
294
|
-
The obligation: when governance-only commits outnumbered consumer-only ones
|
|
295
|
-
over the release span, the section had to carry human prose naming the next
|
|
296
|
-
cycle's consumer work, and the following release had to read that promise back
|
|
297
|
-
as `shipped` / `did not ship` / `withdrawn`. Four refusal sites, two
|
|
298
|
-
placeholder sentinels, a length floor, an outcome vocabulary, a
|
|
299
|
-
`## [Unreleased]` staging channel and an interactive prompt stood behind two
|
|
300
|
-
sentences. Across 14.18.0, 14.19.0 and 14.20.0 it was discharged **by hand,
|
|
301
|
-
mid-release**, after the pipeline had bumped the version and aborted.
|
|
302
|
-
|
|
303
|
-
The mechanism built to fix that ran for the first time on 14.21.0 and made it
|
|
304
|
-
worse: `staged_response` located its markers with an unanchored
|
|
305
|
-
`body.indexOf(marker)` over the whole `## [Unreleased]` body, so it matched
|
|
306
|
-
the **prose of the changelog entry describing itself**, cut two sentences out
|
|
307
|
-
of the middle of that entry, pasted them into the 14.21.0 release head as
|
|
308
|
-
orphan fragments, and prompted for the answer anyway. A `task release` run
|
|
309
|
-
corrupted both sections of the file it was governing. Both are repaired here.
|
|
310
|
-
|
|
311
|
-
The owner removed the obligation rather than the bug: this package exists to
|
|
312
|
-
make the maintainer's work cheaper, and a gate that halts a green pipeline
|
|
313
|
-
until a human types prose about a cycle that has not happened yet moves cost
|
|
314
|
-
onto the person the tool is for. `> **Governance mix:** …` stays as a
|
|
315
|
-
one-line measurement the generator renders end to end.
|
|
316
|
-
|
|
317
|
-
**Untouched:** every honesty control about a claim *this* release makes —
|
|
318
|
-
`_auto-derived, rewrite before merge:_` still blocks, the authoring-instruction
|
|
319
|
-
sentinel still blocks, the `_none_` contradiction check still blocks, the
|
|
320
|
-
`Tests: N` footer is still required. Those refuse an unreviewed statement about
|
|
321
|
-
the release being published; the deleted one refused the absence of a statement
|
|
322
|
-
about a future one. ADR-253's actual decision — the decline of the per-PR
|
|
323
|
-
user-artifact gate — stands.
|
|
324
|
-
|
|
325
|
-
- **The 14.19.0 start-position fix shipped incomplete; this is its other half.**
|
|
326
|
-
It taught `preflightPosition` to accept `release/{target}`, and 14.20.0 then
|
|
327
|
-
failed with `release must run from 'main' or 'release/14.21.0', currently on
|
|
328
|
-
'release/14.20.0'`. Step 2 had already bumped `package.json`, so a plain
|
|
329
|
-
re-run computed the bump from the **already bumped** version and asked the
|
|
330
|
-
preflight about a version one higher than the one in flight — the start-position
|
|
331
|
-
fix could not help, it was asked about the wrong target.
|
|
332
|
-
`_detect_in_flight_target` needed no flag for either of its branches (HEAD on a
|
|
333
|
-
release branch; a manifest version whose tag is not published), and the comment
|
|
334
|
-
at the call site already stated that intent — the `args.resume ?` gate narrowed
|
|
335
|
-
it to resumed runs. The probe now runs unconditionally, so an abandoned bump can
|
|
336
|
-
no longer be silently released as the NEXT version either. A wiring assertion
|
|
337
|
-
pins it, because the probe's own unit tests passed throughout: they never asked
|
|
338
|
-
whether anything called it unconditionally.
|
|
339
|
-
|
|
340
|
-
- **The curated-head refusal is recoverable again — its own remedy was refused
|
|
341
|
-
by the preflight.** `guard_release_curation` stops between step 2 and step 3,
|
|
342
|
-
leaving HEAD on the local `release/X.Y.Z` with the generated section
|
|
343
|
-
uncommitted, and tells the operator to curate the head and re-run
|
|
344
|
-
`task release`. Measured on 14.19.0, every spelling of that re-run died
|
|
345
|
-
*before step 1*: a plain run on `release must run from 'main'`, and
|
|
346
|
-
`--resume` on `working tree is not clean` — against the pipeline's own
|
|
347
|
-
step-2 output. The only way through was to hand-craft the `release: X.Y.Z`
|
|
348
|
-
commit the pipeline makes for itself one step later.
|
|
349
|
-
`docs/release-runbook.md` claimed this had been closed on 2026-09-03; that
|
|
350
|
-
fix landed in `checkout_release_branch`, which is step 1 and therefore
|
|
351
|
-
unreachable from the position the guard creates — the claim was not wrong
|
|
352
|
-
about step 1, it was wrong that step 1 was reachable. The start position is
|
|
353
|
-
now one pure verdict, `preflightPosition`: `release/{target}` is legal with
|
|
354
|
-
or without `--resume`, and a dirty tree is accepted **there only**, with the
|
|
355
|
-
swept files printed. A dirty `main` still refuses, because there the same
|
|
356
|
-
tree is an operator's unrelated work about to enter a release commit. Pinned
|
|
357
|
-
by `tests/scripts/release.test.ts` § `preflightPosition`, including a wiring
|
|
358
|
-
assertion so a pure verdict nobody calls cannot pass.
|
|
359
|
-
|
|
360
|
-
- **Release gates now refuse before the push, not on the release PR.** 14.17.0
|
|
361
|
-
(PR #1856) failed `check_release_highlights` on a missing
|
|
362
|
-
`> **Governance mix:**` line — an assertion reproducible locally in under two
|
|
363
|
-
seconds, discovered instead after a branch, a pull request and a CI run had
|
|
364
|
-
been spent. It was the second instance of the shape in three releases
|
|
365
|
-
(14.14.0 / PR #1812 was the first, on the curated head), and
|
|
366
|
-
`docs/contracts/CHANGELOG-conventions.md` had **recorded** the gap rather than
|
|
367
|
-
closed it. Three changes: `render_changelog_entry` now emits the response
|
|
368
|
-
block with the measured level and a placeholder sentinel the guards refuse
|
|
369
|
-
(never a finished answer — a generator that discharged a written-answer
|
|
370
|
-
obligation for itself would make it a formality); one predicate
|
|
371
|
-
(`mix_response_blockers`) is read by the CI gate and both local guards, so the
|
|
372
|
-
two sides cannot drift; and the missing `Tests: N` footer joins it as a
|
|
373
|
-
section-level publication blocker, which until now also existed only inside
|
|
374
|
-
`release-validation.yml`.
|
|
375
|
-
|
|
376
|
-
**Superseded within the same cycle — read the ADR-261 entry above.** The
|
|
377
|
-
placeholder sentinel, `mix_response_blockers` and the whole written-answer
|
|
378
|
-
obligation this entry describes are deleted; the `> **Governance mix:**` line
|
|
379
|
-
survives as a pure measurement. What still holds from this entry: the
|
|
380
|
-
locality registry, the `Tests: N` footer as a section-level blocker, and the
|
|
381
|
-
push-time refusal for the curated head.
|
|
382
|
-
|
|
383
|
-
### Added
|
|
384
|
-
|
|
385
|
-
- **A release-gate locality registry, so the next orphan cannot land silently.**
|
|
386
|
-
`src/config/release-gate-locality.yml` relates every job in
|
|
387
|
-
`release-validation.yml` to the command that reproduces it locally;
|
|
388
|
-
`tests/scripts/release_gate_locality.test.ts` fails when a job has no row, or
|
|
389
|
-
when a row claims a script that is not in the tree, or when a missing local
|
|
390
|
-
command carries no classified `NEEDS_*` reason. `task release:verify` runs the
|
|
391
|
-
reproducible set from that same registry — and `task release` now runs its
|
|
392
|
-
`--cheap` subset itself, before the branch is pushed. Three jobs genuinely
|
|
393
|
-
cannot run pre-PR; the registry names which and why, and a green run prints
|
|
394
|
-
what it did not cover rather than reading as a clearance.
|
|
395
|
-
|
|
396
|
-
### Changed
|
|
397
|
-
|
|
398
|
-
- **Docs hygiene — retired stale authoring-source pointers.** 43 stale
|
|
399
|
-
"edit `.agent-src.uncondensed/`" *authoring* pointers across 28 `.md` files
|
|
400
|
-
repointed at `src/` (the authoring source of truth per ADR-051); continues
|
|
401
|
-
the #989 README/thin-root fixes. `check_source_pointer_freshness`'s allowlist
|
|
402
|
-
broadened (2 → 16 files) to lock the cleaned files against regression. Live
|
|
403
|
-
`.agent-src.uncondensed/` **code constants, pipeline descriptions, and
|
|
404
|
-
catalog paths were deliberately left untouched** — that tree is a live
|
|
405
|
-
generated intermediate, not dead debt; a blind sweep was explicitly rejected.
|
|
406
|
-
|
|
407
|
-
### Added
|
|
408
|
-
|
|
409
|
-
- **Internet-reach operator tooling** — upstream-tool health and install-pinning
|
|
410
|
-
discipline for the tools a reach recipe needs. The router skill this was
|
|
411
|
-
scoped around was **cancelled pre-authoring by its own benchmark gate**: the
|
|
412
|
-
pre-registered run returned 0/12 outright wins against the host's native web
|
|
413
|
-
tools (`band: stop`), so no skill, no triggers, no capability-area claim. The
|
|
414
|
-
null is published in [`docs/benchmark.md`](docs/benchmark.md) § internet-reach;
|
|
415
|
-
the decision is [ADR-126](docs/decisions/ADR-126-internet-reach-operator-tooling.md).
|
|
416
|
-
- `reach:doctor` — new read-only command: per-channel probe status,
|
|
417
|
-
`active_backend`, tier, lifecycle, and the exact **pinned** fix command for
|
|
418
|
-
the current platform when a backend is missing or broken. No writes, no
|
|
419
|
-
installs, no network (`--deep` is the explicit opt-in that makes one real
|
|
420
|
-
request per backend and still writes nothing).
|
|
421
|
-
- `src/config/reach-channels.yml` + `reach-channels.schema.json` — ordered
|
|
422
|
-
backend candidates per channel (swapping a backend is a config reorder, not
|
|
423
|
-
a code edit), the four-value lifecycle vocabulary reused from
|
|
424
|
-
`provider-lifecycle`, `last_verified` staleness metadata, and an install
|
|
425
|
-
pattern that **rejects** unpinned versions, `latest`/`main`/`HEAD` refs and
|
|
426
|
-
archive-URL install sources.
|
|
427
|
-
- `tool_probe` — five-state probe taxonomy (`ok`/`missing`/`broken`/`timeout`/
|
|
428
|
-
`error`) with stale-shim detection (resolvable shim, dead interpreter),
|
|
429
|
-
exit-126/127 mapping, timeout-only single retry, and per-channel error
|
|
430
|
-
isolation. Every spawn routes through `hardenedSpawnEnv()`.
|
|
431
|
-
- `check-reach-channels` + `check-reach-prescriptions` CI gates — pinning and
|
|
432
|
-
intake-record discipline is machine-checked, not an honour system; a
|
|
433
|
-
prescription that cannot be pinned does not ship.
|
|
434
|
-
- `check-reach-staleness` CI gate — offline: a channel unverified for >90 days,
|
|
435
|
-
a `deprecated` channel with no `replacement`, or a channel past its
|
|
436
|
-
`removal_after` date and still present fails the build.
|
|
437
|
-
- Registry trust is enforced at runtime, not just in CI: `reach:doctor` (incl.
|
|
438
|
-
`--registry <path>`) validates the registry against its schema and refuses to
|
|
439
|
-
probe on any violation (exit 2). `probe_args` is a flag-shaped **allowlist**
|
|
440
|
-
and `probe_cmd` must equal its backend `id`, so a registry entry can neither
|
|
441
|
-
smuggle a shell payload nor label a row with a binary other than the one that
|
|
442
|
-
ran — both closed by an adversarial pre-merge review, with permanent
|
|
443
|
-
regression fixtures.
|
|
444
|
-
|
|
445
|
-
- **Doc-follows-code discipline** — deterministic, framework-agnostic mechanism
|
|
446
|
-
so documentation is updated when code changes.
|
|
447
|
-
- `downstream-changes` rule gains a first-class **Doc-Impact** obligation:
|
|
448
|
-
a change to a public surface (route, exported signature, CLI flag, config/
|
|
449
|
-
settings key, env var, DB schema, event payload) is incomplete until the
|
|
450
|
-
doc that describes it is updated in the same change; escape hatch for
|
|
451
|
-
refactor-only / no-surface changes.
|
|
452
|
-
- `agent-docs-writing` skill: the advisory doc-sync table becomes an
|
|
453
|
-
actionable, cross-stack Doc-Impact procedure with a falsifiable-claim
|
|
454
|
-
fire/no-fire test.
|
|
455
|
-
- `check_source_pointer_freshness` CI gate — fails when an authoring file
|
|
456
|
-
names the retired `.agent-src.uncondensed/` tree as source of truth.
|
|
457
|
-
- Opt-in consumer CI template `github-workflows/doc-impact.yml` (warn-first,
|
|
458
|
-
`[docs:not-needed]` / `refactor:` escape hatch, `STRICT` toggle).
|
|
459
|
-
|
|
460
|
-
### Fixed
|
|
461
|
-
|
|
462
|
-
- **Every release PR was red on its first run — the generator and the
|
|
463
|
-
highlight gate contradicted each other.** `release.ts` wrote `_none_` into
|
|
464
|
-
all five curated-head fields; `check_release_highlights` (added 2026-08-03)
|
|
465
|
-
fails a `_none_` the release span contradicts. Because every release of this
|
|
466
|
-
package touches `src/rules/` or `src/scripts/schemas/`, "Behaviour changes"
|
|
467
|
-
is *always* substantiated, so the gate reliably red-flagged the generator's
|
|
468
|
-
own default — 9.17.0 (run 30871194277) and 9.18.0 (run 30909511315) both
|
|
469
|
-
failed on that one step, and each release had to be unblocked by hand.
|
|
470
|
-
- The span → category classifier now lives once, in
|
|
471
|
-
`src/scripts/_lib/release_highlights.ts`, and is shared by the generator
|
|
472
|
-
and the gate; the two duplicated label lists are gone with it.
|
|
473
|
-
- `release.ts` **pre-fills** each substantiated label with the deriving
|
|
474
|
-
reason plus its citing SHAs (capped at 6, remainder stated, never silently
|
|
475
|
-
truncated). `_none_` is now a fallback for labels the span does not
|
|
476
|
-
substantiate, not a blanket default — so the tool no longer asserts five
|
|
477
|
-
things it never checked.
|
|
478
|
-
- The gate keeps full teeth for the failure it was actually built for: a
|
|
479
|
-
**human** editing a substantiated line back down to `_none_`, which is what
|
|
480
|
-
produced the false 9.13.0 and 9.14.0 heads. An unrewritten auto-derived
|
|
481
|
-
line is advisory (a prose gap, not a false claim) and never blocks.
|
|
482
|
-
- Derivation is best-effort in the generator: a git failure degrades to the
|
|
483
|
-
`_none_` skeleton with a warning instead of aborting a release.
|
|
484
|
-
|
|
485
|
-
- **`/team delegate` double gate is now enforced in code, not only in prose**
|
|
486
|
-
(team mode stays default-off; closing `road-to-team-mode`). The gate on the
|
|
487
|
-
only write-access wrapper existed as agent-followed instructions in the
|
|
488
|
-
command doc — nothing mechanical checked `ai_team.allow_delegate`, and no
|
|
489
|
-
test covered any of the three flag combinations. Added
|
|
490
|
-
`assert_delegate_allowed()` + `TeamDelegateDisabledError` in
|
|
491
|
-
`src/scripts/ai_team/team_dispatch.ts` (mirroring the existing
|
|
492
|
-
`run_team_review` fail-closed shape) plus a `--delegate-gate` CLI mode that
|
|
493
|
-
exits non-zero with the opt-in pointer unless **both** `ai_team.enabled` and
|
|
494
|
-
`ai_team.allow_delegate` are true; all three combinations are test-pinned.
|
|
495
|
-
- **Default-off parity for team mode is now pinned where it was only
|
|
496
|
-
claimed**: the Stop-hook E2E covered `enabled: true` + `managed: false`
|
|
497
|
-
only, so the shipped default posture (`ai_team` absent, or
|
|
498
|
-
`enabled: false`) was never exercised — two new pins assert a strict no-op
|
|
499
|
-
(exit 0, no stdout, no state, no ledger). The command-suggestion surface
|
|
500
|
-
gained its own pin (exactly one eligible team command, its
|
|
501
|
-
`trigger_context` carrying the `ai_team.enabled is true` agent-side
|
|
502
|
-
precondition, all sub-commands ineligible, and zero `ai_team` awareness in
|
|
503
|
-
the deterministic suggester — so its output is invariant with respect to
|
|
504
|
-
that config).
|
|
505
|
-
- Stale `not yet manifest-wired` header comments in
|
|
506
|
-
`src/scripts/ai_team/review_gate.ts` and
|
|
507
|
-
`src/scripts/team_review_gate_hook.ts`: the Stop-concern registration
|
|
508
|
-
landed with team-mode Phase 4 (`hook_manifest.yaml`, claude `stop` chain),
|
|
509
|
-
so the comments told a reviewer auditing default-off that the hook was
|
|
510
|
-
still inert.
|
|
511
|
-
- Source-of-truth pointer drift: `src/agent-src/README.md` and the
|
|
512
|
-
`agents-md-thin-root` skill named the retired `.agent-src.uncondensed/`
|
|
513
|
-
tree; corrected to `src/`.
|
|
514
|
-
- **Embed-contract docs completed + de-drifted**
|
|
515
|
-
([`docs/contracts/local-server-ports.md`](docs/contracts/local-server-ports.md),
|
|
516
|
-
[`docs/contracts/local-server-api.md`](docs/contracts/local-server-api.md)):
|
|
517
|
-
the host-facing contract now carries the framing-DENY council reasoning, the
|
|
518
|
-
`local-server.json` discovery-file rules (`url` embeds `?token=` — hosts
|
|
519
|
-
rebuild from `port` + a fresh token read; `0600` is a contract invariant),
|
|
520
|
-
the `?token=` accepted-risk statement, the wizard-out-of-scope-for-embed-v1
|
|
521
|
-
note, and a Host-lifecycle section (idle-shutdown watchdog + keepalive,
|
|
522
|
-
headless refusal). `local-server-api.md` had three stale claims corrected:
|
|
523
|
-
the token IS persisted (`local-server.token`, mode `0600`) — not
|
|
524
|
-
"never written to disk"; headless `ui:serve` refuses with exit 2 — it does
|
|
525
|
-
not silently boot browserless; the ping example now shows the
|
|
526
|
-
`capabilities` block. Plus an explicit `capabilities.embed` assertion in
|
|
527
|
-
`tests/server/app.test.ts`. Closes `road-to-ac-embeddable-gui`.
|
|
528
|
-
|
|
529
|
-
> The former "6.0.0 at a glance" overview was drained on 2026-07-21 to
|
|
530
|
-
> [`docs/archive/CHANGELOG-6.0.0-overview.md`](docs/archive/CHANGELOG-6.0.0-overview.md).
|
|
33
|
+
_Nothing staged._ Twenty entries that had accumulated here were drained to
|
|
34
|
+
[`docs/archive/CHANGELOG-unreleased-drain-2026-10.md`](docs/archive/CHANGELOG-unreleased-drain-2026-10.md)
|
|
35
|
+
on 2026-10-13; every one of them had already shipped, the oldest in 9.7.0.
|
|
36
|
+
An entry belongs under a dated release section, not here — see
|
|
37
|
+
[`docs/contracts/CHANGELOG-conventions.md`](docs/contracts/CHANGELOG-conventions.md).
|
|
531
38
|
|
|
532
39
|
# Era: pre-4.5.0 — archived
|
|
533
40
|
|
|
@@ -880,64 +387,141 @@ Entry-shape contract: [`docs/contracts/CHANGELOG-conventions.md`](docs/contracts
|
|
|
880
387
|
> keeps the active era under the 250-line drift cap enforced by
|
|
881
388
|
> `tests/test_changelog_eras.py`.
|
|
882
389
|
|
|
883
|
-
# Era:
|
|
390
|
+
# Era: pre-17.1.0 — archived
|
|
884
391
|
|
|
885
|
-
>
|
|
392
|
+
> All entries before `17.1.0` live in
|
|
393
|
+
> [`docs/archive/CHANGELOG-pre-17.1.0.md`](docs/archive/CHANGELOG-pre-17.1.0.md).
|
|
394
|
+
> The archive is read-only; git tags remain the canonical
|
|
395
|
+
> source for what shipped. Splitting them out of the main file
|
|
396
|
+
> keeps the active era under the 250-line drift cap enforced by
|
|
397
|
+
> `tests/test_changelog_eras.py`.
|
|
398
|
+
|
|
399
|
+
# Era: 17.1.x — current
|
|
400
|
+
|
|
401
|
+
> Started at `17.1.0`. Full entries live inline below.
|
|
886
402
|
> The drift test caps this era at 250 lines of entry body; growth past
|
|
887
|
-
> that forces a new era split (`# Era:
|
|
403
|
+
> that forces a new era split (`# Era: 17.2.x`, etc.) — see
|
|
888
404
|
> [`docs/contracts/CHANGELOG-conventions.md § Era splits`](docs/contracts/CHANGELOG-conventions.md).
|
|
889
405
|
|
|
890
|
-
## [
|
|
406
|
+
## [17.1.0](https://github.com/event4u-app/agent-config/compare/17.0.0...17.1.0) (2026-10-23)
|
|
891
407
|
|
|
892
408
|
### Release highlights
|
|
893
409
|
|
|
894
|
-
- **Behaviour changes:**
|
|
895
|
-
- **Default changes + migration:**
|
|
896
|
-
- **Security and correctness:**
|
|
410
|
+
- **Behaviour changes:** _none_
|
|
411
|
+
- **Default changes + migration:** Breaking, pending in `BREAKING_CHANGES.md` and shipped by this release: **Three `fail_closed` hook guards run where they were silent.** The installed claude hook command now reaches a dispatcher staged under `~/.event4u/agent-config/runtime/` after a project-local install and before `PATH` ([`3f8c98e`](https://github.com/event4u-app/agent-config/commit/3f8c98e74), #2455). On machines installed through `npx`, or hosts launched with a bare `PATH`, every hook command used to end in a silent `exit 0`; there `block-no-verify` (refuses `git … --no-verify` and `core.hooksPath` overrides), `block-kernel-rule-writes` and `block-plumbing-writes` (refuse agent writes to this package's kernel rules and hook plumbing) now run and may refuse a tool call for the first time. Classed breaking by the AI council, 2026-10-19 (`agents/evidence/council/hook-carrier-release-note-class-20261019.md`). **`uninstall --global --purge` stops being a recursive delete of the host anchor.** Old scope: `fs.rmSync(anchor, { recursive: true })` on whole host configuration roots — `~/.claude/`, `~/.codex/`, `~/.config/zed/` — so everything under them went, whoever wrote it. New scope: only the anchor-relative paths this package's own deploy inventory recorded writing; the anchor itself is never removed, directories are pruned only when left empty, a recorded symlink is unlinked rather than followed, and a purge with no readable inventory for that anchor exits 1 having deleted nothing. A second change in the same area: a plain `uninstall --global` now keeps the lockfile while recorded content is still on disk, where it used to delete it.
|
|
412
|
+
- **Security and correctness:** pace free-hands shadow calls from the last free reply (c28d888); record the id a keyless route actually serves (9235bdc); a pre-ledger global refresh updates untouched files instead of preserving thousands (#2590) (601abd8); put the SC2016 directive on the node command it covers (029da1a); pin the aging-hour notice case to midday UTC (0d2efc5); assemble the reach self-test fixtures so prepack reads no shipped import (839a4d5); +26 more.
|
|
897
413
|
- **Honest nulls:** _none_
|
|
898
|
-
- **Known limitations:**
|
|
414
|
+
- **Known limitations:** a pre-ledger global refresh updates untouched files instead of preserving thousands (#2590) (src/scripts/install.ts declares a residual) (601abd8); a release waits for no review ledger (#2591) (src/scripts/_lib/release_findings_ingest.ts declares a residual) (e1dde82).
|
|
899
415
|
|
|
900
|
-
> **Governance mix:** governance-only
|
|
416
|
+
> **Governance mix:** governance-only 24 vs consumer-only 2 (mixed 39, maintenance 15; taxonomy 1.1.0; range ad30b6dfecd0..e1b086677d04).
|
|
901
417
|
|
|
902
418
|
### Features
|
|
903
419
|
|
|
904
|
-
* **
|
|
905
|
-
*
|
|
420
|
+
* **bench:** rerun the tier pair on a pinned tree; both tier claims underpowered ([479bcf0](https://github.com/event4u-app/agent-config/commit/479bcf0c2428d83dca4c21b71471415cbea5cec8))
|
|
421
|
+
* **gate:** a ticked step's tested symbols must reach a production entry ([1fd70d8](https://github.com/event4u-app/agent-config/commit/1fd70d8160dffa8a8cce04912493b405329189f9))
|
|
422
|
+
* **bench:** refuse to price with a stale or older-generation price row ([fe4fa4b](https://github.com/event4u-app/agent-config/commit/fe4fa4bcd7b9bffaba49a233b18a6e82bdcfcc7b))
|
|
423
|
+
* **bench:** bind bench evidence to the commit whose bytes it measured ([9972c55](https://github.com/event4u-app/agent-config/commit/9972c5575f64f8469a05da6e35307e2a1f38b202))
|
|
424
|
+
* **lint:** the owner lock reaches the roadmap decision and blocker lints ([b5bb1a5](https://github.com/event4u-app/agent-config/commit/b5bb1a5e83f2b0f4d9a386c8912b21026a5d4000))
|
|
425
|
+
* **bench:** free-hands shadow harness over the production ask path ([d148952](https://github.com/event4u-app/agent-config/commit/d1489529b8fff772175854d5ec269aea1b7349cc))
|
|
426
|
+
* **bench:** paired quality run for egress placeholders, PREREG (e) ([d5f7f45](https://github.com/event4u-app/agent-config/commit/d5f7f453d9ff94d0e7e1e0fe79fdc9aa5d5a1608))
|
|
427
|
+
* **spawn-guard:** reconstruct the reuse verdict per spawn at report time ([bc48e93](https://github.com/event4u-app/agent-config/commit/bc48e93a918a3c5c19d3e0d36307e1434b79e3d1))
|
|
428
|
+
* **council:** catalogue a keyless first-party route, maintainer-only ([e9009ba](https://github.com/event4u-app/agent-config/commit/e9009baac5f06db9e978e638bc2c5690489ca33b))
|
|
429
|
+
* **spawn-guard:** live worker_resume probe and reconstruction stamps ([4671ab7](https://github.com/event4u-app/agent-config/commit/4671ab758cb2ec6d3505f5121e2785d2eacd0c3c))
|
|
430
|
+
* **hooks:** field-level payload projection for advisory concerns ([e2e04d1](https://github.com/event4u-app/agent-config/commit/e2e04d1aa3f3fcfc6508532d5f82cb93a329927c))
|
|
431
|
+
* **egress:** the IBAN table names its registry release ([ce7783b](https://github.com/event4u-app/agent-config/commit/ce7783bd9f788291df6141bc5052cf5fec874aa4))
|
|
432
|
+
* **council:** a real self-hosted probe for loopback routes ([7b4054e](https://github.com/event4u-app/agent-config/commit/7b4054e5f94b0585384486fe8b3e65e48165bfc6))
|
|
433
|
+
* **ask:** shadow public-artifact typed asks on a free route ([a45480a](https://github.com/event4u-app/agent-config/commit/a45480aaf451d68775c90d22d0956719278bf2ba))
|
|
434
|
+
* **spawn-guard:** index the worker register instead of reading a ledger tail ([40786bb](https://github.com/event4u-app/agent-config/commit/40786bb420c2b52732664c04fd4d098a9f595ea9))
|
|
906
435
|
|
|
907
436
|
### Bug Fixes
|
|
908
437
|
|
|
909
|
-
* **
|
|
910
|
-
* **
|
|
911
|
-
* **
|
|
912
|
-
* **
|
|
913
|
-
* **
|
|
914
|
-
* **
|
|
915
|
-
* **
|
|
916
|
-
* **
|
|
917
|
-
* **
|
|
438
|
+
* **bench:** pace free-hands shadow calls from the last free reply ([c28d888](https://github.com/event4u-app/agent-config/commit/c28d888b6e003db06a642a43db9ccbab829dbaa9))
|
|
439
|
+
* **free-route:** record the id a keyless route actually serves ([9235bdc](https://github.com/event4u-app/agent-config/commit/9235bdc342cf360b36c2a318d67df759d6d3e153))
|
|
440
|
+
* **install:** a pre-ledger global refresh updates untouched files instead of preserving thousands (#2590) ([601abd8](https://github.com/event4u-app/agent-config/commit/601abd83d6a9817435d481267c85c8a69d1b1ae8))
|
|
441
|
+
* **ci:** put the SC2016 directive on the node command it covers ([029da1a](https://github.com/event4u-app/agent-config/commit/029da1a4b509efcc873fb716db4a84338d271e5d))
|
|
442
|
+
* **tests:** pin the aging-hour notice case to midday UTC ([0d2efc5](https://github.com/event4u-app/agent-config/commit/0d2efc5a820bca0a8626e56e933c1b1a35e5ae22))
|
|
443
|
+
* **gate:** assemble the reach self-test fixtures so prepack reads no shipped import ([839a4d5](https://github.com/event4u-app/agent-config/commit/839a4d564c4dd21aaf9d2da4805fd071ac32f69e))
|
|
444
|
+
* **release:** a release waits for no review ledger (#2591) ([e1dde82](https://github.com/event4u-app/agent-config/commit/e1dde822d02de813349b49c23b73317bfa43b27c))
|
|
445
|
+
* **tests:** the identity fixture carries the content ceiling too ([6a35ab8](https://github.com/event4u-app/agent-config/commit/6a35ab8a244b33b3351f0e46a4bac1220ac8d7e2))
|
|
446
|
+
* **tests:** free route fixtures carry the content ceiling the client now requires ([bdaeb97](https://github.com/event4u-app/agent-config/commit/bdaeb972e0ade5281287c6a88c4c493b568de6e8))
|
|
447
|
+
* **config:** the egress chunk raise names only the rows it carries ([8d8f84b](https://github.com/event4u-app/agent-config/commit/8d8f84b41055d3dd70114221ae38569a8982adc0))
|
|
448
|
+
* **bench:** read the store precision bar as PREREG (b) states it ([7c33852](https://github.com/event4u-app/agent-config/commit/7c33852caccbac7097d7d80381a8e0de96d2533b))
|
|
449
|
+
* **redaction:** store rows tag a digit run only where its shape is evidence ([50aa48d](https://github.com/event4u-app/agent-config/commit/50aa48d3019e0555d1948df2957c1e2e997ee67a))
|
|
450
|
+
* **docs:** correct four texts the #2585 review found stale, pin ratification answers ([140eb36](https://github.com/event4u-app/agent-config/commit/140eb36adc4b1f6396d3edb2a4c811f55ca734a5))
|
|
451
|
+
* **hooks:** a host rate marker sets its own source and parked_at ([d4b8475](https://github.com/event4u-app/agent-config/commit/d4b84753c0c7cc111f19d8971f81fa8f6dcdb2b6))
|
|
452
|
+
* **council:** a stance repair never leaves a resume flag behind ([dd2860f](https://github.com/event4u-app/agent-config/commit/dd2860f4d189f1deb3476d6dac05e7c6eb1d6d38))
|
|
453
|
+
* **council:** a base_url route member never holds a head role ([89af384](https://github.com/event4u-app/agent-config/commit/89af38437035c1daf0d3a153739374986d332b05))
|
|
454
|
+
* **council:** shadow calls send the hand payload, not the raw prompt ([788b002](https://github.com/event4u-app/agent-config/commit/788b0029e34a6c419eaae1d58b45c2834efda263))
|
|
455
|
+
* **council:** route members carry their content ceiling ([4ff3a8d](https://github.com/event4u-app/agent-config/commit/4ff3a8d307bb047c2282c6c6f15dd70a3326f883))
|
|
456
|
+
* **council:** refuse a callee that holds more than one declaration ([57c3ba1](https://github.com/event4u-app/agent-config/commit/57c3ba14458288485b9cb503d4514d71f98ad5ce))
|
|
457
|
+
* **tier-verdict:** read quality from an exact one-sided Clopper-Pearson bound ([f7383bd](https://github.com/event4u-app/agent-config/commit/f7383bd7b16f06fd78e87fb4b8d9863830320795))
|
|
458
|
+
* **update:** leave the global installed.lock to the global install ([2a01a5f](https://github.com/event4u-app/agent-config/commit/2a01a5f785ba11698bc047f4e3da95e6d77e5fb8))
|
|
459
|
+
* **ci:** silence the deliberate SC2016 in the egress latency step ([d104626](https://github.com/event4u-app/agent-config/commit/d10462685e34a131cfbe4c63bf5d80c6e1660480))
|
|
460
|
+
* **report:** close the reconstruction review findings and add the secondary (c) reading ([607fe33](https://github.com/event4u-app/agent-config/commit/607fe33bbc05b3b430d32995dc1ab21016ffcc5b))
|
|
461
|
+
* **bench:** free-hands shadow harness — retry, streak stop, window-scoped report ([1f6b85f](https://github.com/event4u-app/agent-config/commit/1f6b85f691a4f58a11f566a3c5e40df611cc67fe))
|
|
462
|
+
* **council:** hand a route member's key reference to the self-hosted probe ([73e7bf8](https://github.com/event4u-app/agent-config/commit/73e7bf85592539ac3621b4d04b9a6c608679caa8))
|
|
463
|
+
* **hooks:** close the review findings on the ledger index and the projection ([3158fc5](https://github.com/event4u-app/agent-config/commit/3158fc5e741b3af321db9abba0d9730c9b5bd188))
|
|
464
|
+
* **bench:** exclude unparsed sessions and re-read the warm-worker claims ([5de579f](https://github.com/event4u-app/agent-config/commit/5de579f5a7af78cf737cb92dd811514d945ee9a3))
|
|
465
|
+
* **council:** give the first-party route gate a roster writer, a shared root and a normalised match ([3b1ebcc](https://github.com/event4u-app/agent-config/commit/3b1ebcc71f0563f92e62c895f40ca611137f6a15))
|
|
466
|
+
* **council:** harden the self-hosted probe memo, scratch dir, models dir and auth ([96ed61d](https://github.com/event4u-app/agent-config/commit/96ed61de0d61546c9bc771e138a09c2cd72cdd83))
|
|
467
|
+
* **ask:** bound the shadow wait and record free exposure only when called ([32fc497](https://github.com/event4u-app/agent-config/commit/32fc4978c8dec8087464b669742e7a0e3387cddb))
|
|
468
|
+
* **spawn-guard:** close the ratification's three non-blocking findings ([667ec17](https://github.com/event4u-app/agent-config/commit/667ec17701e61628a3c07f8da1269ac8083dd19e))
|
|
469
|
+
* **council:** forward base_url route fields through the settings block ([e9312ba](https://github.com/event4u-app/agent-config/commit/e9312bad3de02a155e182b1c44dc137920cc74dd))
|
|
470
|
+
|
|
471
|
+
### Reverts
|
|
472
|
+
|
|
473
|
+
* **subagents:** package workers load project instructions and ac-researcher inherits again ([e3f32ac](https://github.com/event4u-app/agent-config/commit/e3f32ac44a414d4e2bc25491c0ccf283004e0b3b))
|
|
918
474
|
|
|
919
475
|
### Documentation
|
|
920
476
|
|
|
921
|
-
* **
|
|
477
|
+
* **roadmaps:** record the owner round and the council answers of 2026-10-23 ([f255228](https://github.com/event4u-app/agent-config/commit/f255228f48439cf83733535896162ccf537ca35f))
|
|
478
|
+
* **roadmap:** give the two new verify clauses an expectation ([948233e](https://github.com/event4u-app/agent-config/commit/948233effddd60a6275eb04ec0034f2fbc6795a1))
|
|
479
|
+
* **evidence:** ratify the raise_log correction, council round 3 of 2026-10-23 ([cb7da1f](https://github.com/event4u-app/agent-config/commit/cb7da1f8c2d747df7563999cd286a54c9eaa1ccd))
|
|
480
|
+
* **roadmap:** close AC-1, 2, 3, 5 and 7 of the tick roadmap ([16824c0](https://github.com/event4u-app/agent-config/commit/16824c000193e87fd0a002e5fa99ed319056db43))
|
|
481
|
+
* **roadmap:** receipts on the last six ticks ([59ec06d](https://github.com/event4u-app/agent-config/commit/59ec06df41184cea1df56fa1c082dcf094966071))
|
|
482
|
+
* **roadmap:** tick Phase 4, 1.4 and 6.1; receipts on every new tick ([7f9509f](https://github.com/event4u-app/agent-config/commit/7f9509fdc03c080407cce6e52b4dce50bfd4f2f0))
|
|
483
|
+
* **evidence:** replay every #2585 tick and fingerprint the main residue ([f3de42e](https://github.com/event4u-app/agent-config/commit/f3de42eff643a023ad3b14edc4460e8f97d04691))
|
|
484
|
+
* **bench:** record the PREREG (b) store reading, 0.55 % of tree files ([342cc7a](https://github.com/event4u-app/agent-config/commit/342cc7a374b1b52dd6dea4544f335dc2c5565f3b))
|
|
485
|
+
* **roadmap:** keep step 2.2 under the step cap ([2c28cc8](https://github.com/event4u-app/agent-config/commit/2c28cc826830d13f1810450cfba7927917c5dcf1))
|
|
486
|
+
* **roadmap:** shorten the one-detector 2.5 reopen note under the step cap ([a336969](https://github.com/event4u-app/agent-config/commit/a3369697781104026a0122fc48de41f7072b25b0))
|
|
487
|
+
* **roadmap:** road to a tick the shipped path earns, from inbox round 2026-10-aa ([9023428](https://github.com/event4u-app/agent-config/commit/90234285623d0727fc23e5cbd4fd568f4c6c40a3))
|
|
488
|
+
* **readme:** move the downloads badge beside the artefact counts ([6a0c9ea](https://github.com/event4u-app/agent-config/commit/6a0c9ea156785fc861bedcf8af9488120d0eefb5))
|
|
489
|
+
* **roadmaps:** owner rows read 'owner'; step notes trimmed under the word cap ([656a135](https://github.com/event4u-app/agent-config/commit/656a13553994a8b04b6271217d30412689ad1089))
|
|
490
|
+
* **roadmaps:** risk registers re-reviewed 2026-10-23; owned digest regenerated ([5831666](https://github.com/event4u-app/agent-config/commit/5831666901f4b7f8dea0ee4b1f2d57ea98b4eff0))
|
|
491
|
+
* **roadmaps:** archive the completed tier roadmap; risk registers re-reviewed ([5e46c8a](https://github.com/event4u-app/agent-config/commit/5e46c8a49afd6f320139044221a39d54d00df950))
|
|
492
|
+
* **roadmaps:** cold-start 3.5, 6.2, AC-2 and AC-8 close; 3.6 stays open, evaluated ([b6f7142](https://github.com/event4u-app/agent-config/commit/b6f7142204ccbbfbc447ee8b0dfeb3fd2462feab))
|
|
493
|
+
* **bench:** amend the free-hands PREREG before the first scored call ([4449316](https://github.com/event4u-app/agent-config/commit/44493165ebbeee3673ae2ad6ff4c9de6c6494fc2))
|
|
494
|
+
* **council:** condition (c) split twice; keep it and add a second reading ([df1947a](https://github.com/event4u-app/agent-config/commit/df1947a2542d7f650a9004308ce5c16157f09d80))
|
|
495
|
+
* **claims:** dated verdicts for the four cold-start claims ([c8028f5](https://github.com/event4u-app/agent-config/commit/c8028f5b27a72d096e4652268dda8121374ec2d7))
|
|
496
|
+
* **evidence:** file the reconstructed reuse window and the warm-worker readings ([d38df92](https://github.com/event4u-app/agent-config/commit/d38df921bf13401c08ee0e7d6e539b75f22ef25b))
|
|
497
|
+
* **roadmaps:** free-hands 6.2 and AC-3 — wired, harnessed, live run pending an operator ([b5d61ac](https://github.com/event4u-app/agent-config/commit/b5d61acb36fe602c8e1a9c2edb432ebd6cff3681))
|
|
498
|
+
* **ratification:** gated hook plumbing of the #2583 rest, 2/2 ratified ([bc07604](https://github.com/event4u-app/agent-config/commit/bc07604dd44faae97d7bd4c93802506cca8d220c))
|
|
499
|
+
* **roadmaps:** track the block-credential-reads false positive on filter expressions ([e157166](https://github.com/event4u-app/agent-config/commit/e1571668041fe58eb53a36758fe10db21fcd8da2))
|
|
500
|
+
* **roadmaps:** record the indexed register, the real probe, the attested route and AC-6 (c)/(e) ([a9da06f](https://github.com/event4u-app/agent-config/commit/a9da06f81a39658c7a12bc049f9a096d889d07b1))
|
|
501
|
+
* **bench:** pre-register the free-hands shadow window ([1bc9c41](https://github.com/event4u-app/agent-config/commit/1bc9c41c5dcc2ae4f6713c093e583072dd6d9936))
|
|
502
|
+
* **evidence:** accepted evidence-type marker on the two council prompts ([45b288d](https://github.com/event4u-app/agent-config/commit/45b288d451141188177676fa80c0a8fcbd0cd3e4))
|
|
503
|
+
* **roadmaps:** owner decisions O1–O6 and the council's three design calls ([a3c9cce](https://github.com/event4u-app/agent-config/commit/a3c9cce472ab21658f98f8f9a4acbd4240c7811b))
|
|
922
504
|
|
|
923
505
|
### Tests
|
|
924
506
|
|
|
925
|
-
* **
|
|
507
|
+
* **advisories:** pin the aging-hour case to midday UTC ([5412135](https://github.com/event4u-app/agent-config/commit/54121352fa8924dcf174764f84cc644d9e05824f))
|
|
508
|
+
* **bench:** worker-resume harness over a roadmap citation audit ([e382a41](https://github.com/event4u-app/agent-config/commit/e382a419691d38140987e17846c74c329831c61c))
|
|
509
|
+
* **bench:** measure PREREG (c) round trip on the identifier class ([86e8f46](https://github.com/event4u-app/agent-config/commit/86e8f467889c438cb1682efd38416e431254b078))
|
|
926
510
|
|
|
927
|
-
###
|
|
511
|
+
### Build
|
|
512
|
+
|
|
513
|
+
* **dist:** project the host-capability manifest context ([ecd24af](https://github.com/event4u-app/agent-config/commit/ecd24af6bde6dc8a89b1dd619c8bc049063643ef))
|
|
514
|
+
* **install:** regenerate the install bundle for the worker_resume probe ([7318dff](https://github.com/event4u-app/agent-config/commit/7318dffac580b546e42506905fe211b49aa54b09))
|
|
928
515
|
|
|
929
|
-
|
|
516
|
+
### CI
|
|
930
517
|
|
|
931
|
-
|
|
518
|
+
* **bench:** read PREREG (f) egress engine latency on the CI runner class ([7f23bb3](https://github.com/event4u-app/agent-config/commit/7f23bb3813bfc736087c1604369f863bae73070e))
|
|
519
|
+
|
|
520
|
+
### Chores
|
|
932
521
|
|
|
933
|
-
*
|
|
934
|
-
* road-to-svg-review-followups from two reviews of the SVG roadmaps (#2299) ([b015b74](https://github.com/event4u-app/agent-config/commit/b015b747f7c2eea4a8206aba846b82dcc6e84f40))
|
|
935
|
-
* add two ready SVG roadmaps from inbox-2026-10-l (#2298) ([fd02787](https://github.com/event4u-app/agent-config/commit/fd02787ef8e0e9eb21e9a0256e5f3ea9bca21492))
|
|
936
|
-
* give six added verify clauses an expectation that can fail ([9a5338a](https://github.com/event4u-app/agent-config/commit/9a5338aebd49923a894e803b7e21f0d5dbb5d7d3))
|
|
937
|
-
* add thirteen ready roadmaps from inbox-2026-10-g..k ([d8a9e43](https://github.com/event4u-app/agent-config/commit/d8a9e43a881bcf6ad9a8a96c83a4e4958f321098))
|
|
938
|
-
* record inbox-2026-10-g..k arrivals on held stubs and parked roadmaps ([243b6f3](https://github.com/event4u-app/agent-config/commit/243b6f30251da478e03a5f9aa3d60636a14ea0e1))
|
|
522
|
+
* **roadmap:** regenerate the owned digest for the new roadmap ([de05ef7](https://github.com/event4u-app/agent-config/commit/de05ef770947d5603418f3d20c2317529b85cf84))
|
|
939
523
|
|
|
940
|
-
Tests:
|
|
524
|
+
Tests: 32215 (+213 since 17.0.0)
|
|
941
525
|
|
|
942
526
|
# Era: pre-4.0.0 — archived
|
|
943
527
|
|