@event4u/agent-config 16.2.0 โ 16.4.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 +1 -1
- package/CHANGELOG.md +337 -234
- package/README.md +15 -13
- package/agents/templates/.ai-council.yml.example +26 -8
- package/dist/agent-src/commands/analyze/inbox.md +11 -8
- package/dist/agent-src/commands/analyze/roadmap-repos.md +1 -1
- package/dist/agent-src/commands/bug/fix.md +17 -2
- package/dist/agent-src/commands/bug/investigate.md +1 -1
- package/dist/agent-src/commands/commit/in-chunks.md +40 -31
- package/dist/agent-src/commands/commit.md +72 -33
- package/dist/agent-src/commands/condense.md +2 -8
- package/dist/agent-src/commands/council/debate.md +11 -7
- package/dist/agent-src/commands/council/default.md +10 -9
- package/dist/agent-src/commands/council.md +1 -1
- package/dist/agent-src/commands/estimate-ticket.md +1 -1
- package/dist/agent-src/commands/feature/explore.md +3 -3
- package/dist/agent-src/commands/feature/plan.md +2 -2
- package/dist/agent-src/commands/feature/roadmap.md +1 -1
- package/dist/agent-src/commands/fix/ci.md +18 -4
- package/dist/agent-src/commands/fix/commit-messages.md +48 -23
- package/dist/agent-src/commands/fix/pr-comments.md +3 -6
- package/dist/agent-src/commands/implement-ticket.md +4 -4
- package/dist/agent-src/commands/jira-ticket.md +1 -1
- package/dist/agent-src/commands/memory/add.md +4 -16
- package/dist/agent-src/commands/memory/load.md +5 -6
- package/dist/agent-src/commands/memory/promote.md +3 -16
- package/dist/agent-src/commands/mission/upgrade.md +3 -2
- package/dist/agent-src/commands/optimize/agents-dir.md +2 -2
- package/dist/agent-src/commands/optimize/deep.md +4 -2
- package/dist/agent-src/commands/optimize/rtk.md +4 -26
- package/dist/agent-src/commands/pr/create/description-only.md +18 -15
- package/dist/agent-src/commands/pr/create.md +42 -34
- package/dist/agent-src/commands/pr/merge.md +136 -9
- package/dist/agent-src/commands/prepare-for-review.md +13 -11
- package/dist/agent-src/commands/project/analyze.md +7 -35
- package/dist/agent-src/commands/refine-ticket.md +1 -1
- package/dist/agent-src/commands/review/changes.md +14 -19
- package/dist/agent-src/commands/roadmap/create.md +1 -1
- package/dist/agent-src/commands/roadmap/materialize.md +1 -1
- package/dist/agent-src/commands/roadmap/next.md +10 -1
- package/dist/agent-src/commands/roadmap/process-full.md +56 -42
- package/dist/agent-src/commands/roadmap/resolve-blockers.md +411 -0
- package/dist/agent-src/commands/roadmap/triage-parked.md +325 -0
- package/dist/agent-src/commands/roadmap.md +18 -4
- package/dist/agent-src/commands/tests/create.md +17 -3
- package/dist/agent-src/commands/tests/execute.md +22 -5
- package/dist/agent-src/commands/worktree/create.md +7 -3
- package/dist/agent-src/commands/worktree/verify.md +2 -1
- package/dist/agent-src/contexts/authority/decision-revisit-gate-enforcement.md +43 -0
- package/dist/agent-src/contexts/communication/rules-auto/design-fidelity-enforcement.md +24 -0
- package/dist/agent-src/contexts/communication/rules-auto/think-before-action-mechanics.md +5 -3
- package/dist/agent-src/contexts/communication/rules-auto/token-efficiency-mechanics.md +7 -9
- package/dist/agent-src/contexts/contracts/command-suggestion-flow.md +8 -6
- package/dist/agent-src/contexts/contracts/frugality-charter.md +8 -5
- package/dist/agent-src/contexts/execution/auto-dispatch-classification.md +7 -7
- package/dist/agent-src/contexts/execution/auto-orchestration-activation.md +0 -1
- package/dist/agent-src/contexts/execution/evidence-discipline.md +2 -2
- package/dist/agent-src/contexts/execution/non-interactive-contract.md +5 -8
- package/dist/agent-src/contexts/execution/rdp-gate.md +4 -4
- package/dist/agent-src/contexts/execution/roadmap-execution-contract.md +9 -8
- package/dist/agent-src/contexts/execution/roadmap-process-loop.md +99 -54
- package/dist/agent-src/contexts/execution/session-canary-enforcement-history.md +67 -0
- package/dist/agent-src/contexts/execution/subagent-routing.md +8 -8
- package/dist/agent-src/contexts/execution/subagent-steering.md +6 -4
- package/dist/agent-src/contexts/execution/terminal-states.md +2 -2
- package/dist/agent-src/contexts/execution/toolchain-resolver.md +95 -7
- package/dist/agent-src/contexts/subagent-configuration.md +1 -1
- package/dist/agent-src/guidelines/agent-infra/active-remediation-mechanics.md +39 -0
- package/dist/agent-src/guidelines/agent-infra/context-hygiene-mechanics.md +1 -1
- package/dist/agent-src/guidelines/agent-infra/cross-source-consistency-mechanics.md +8 -10
- package/dist/agent-src/guidelines/agent-infra/frontier-reasoning-operating-profile.md +3 -2
- package/dist/agent-src/guidelines/agent-infra/layered-settings.md +13 -1
- package/dist/agent-src/guidelines/agent-infra/roadmap-progress-mechanics.md +1 -1
- package/dist/agent-src/guidelines/agent-infra/self-improvement-pipeline.md +10 -3
- package/dist/agent-src/guidelines/agent-infra/size-and-scope.md +36 -0
- package/dist/agent-src/guidelines/php/git.md +15 -2
- package/dist/agent-src/rules/active-remediation.md +1 -2
- package/dist/agent-src/rules/analysis-skill-routing.md +0 -1
- package/dist/agent-src/rules/architecture.md +0 -1
- package/dist/agent-src/rules/artifact-drafting-protocol.md +0 -1
- package/dist/agent-src/rules/artifact-engagement-recording.md +0 -1
- package/dist/agent-src/rules/augment-edit-discipline.md +0 -1
- package/dist/agent-src/rules/autonomous-execution.md +1 -1
- package/dist/agent-src/rules/brand-consistency.md +0 -1
- package/dist/agent-src/rules/brand-source-of-truth.md +0 -1
- package/dist/agent-src/rules/broken-access-control.md +1 -1
- package/dist/agent-src/rules/cli-output-handling.md +0 -1
- package/dist/agent-src/rules/code-comment-discipline.md +0 -1
- package/dist/agent-src/rules/code-provenance.md +0 -1
- package/dist/agent-src/rules/command-suggestion-policy.md +1 -1
- package/dist/agent-src/rules/commit-conventions.md +1 -2
- package/dist/agent-src/rules/communication-through-line.md +1 -2
- package/dist/agent-src/rules/content-quoting-floor.md +1 -2
- package/dist/agent-src/rules/context-hygiene.md +6 -6
- package/dist/agent-src/rules/copilot-routing.md +1 -2
- package/dist/agent-src/rules/council-availability.md +4 -4
- package/dist/agent-src/rules/cross-source-consistency.md +4 -6
- package/dist/agent-src/rules/decision-revisit-gate.md +17 -35
- package/dist/agent-src/rules/delegation-policy.md +2 -3
- package/dist/agent-src/rules/design-fidelity.md +12 -16
- package/dist/agent-src/rules/design-review-after-ui-write.md +3 -3
- package/dist/agent-src/rules/devcontainer-routing.md +1 -2
- package/dist/agent-src/rules/doc-screenshot-hygiene.md +1 -1
- package/dist/agent-src/rules/docker-commands.md +0 -1
- package/dist/agent-src/rules/domain-adoption-policy.md +0 -1
- package/dist/agent-src/rules/domain-safety-disclaimer.md +1 -1
- package/dist/agent-src/rules/domain-safety-pii.md +1 -1
- package/dist/agent-src/rules/domain-safety-retention.md +1 -1
- package/dist/agent-src/rules/downstream-changes.md +0 -1
- package/dist/agent-src/rules/engineering-safety-floor.md +1 -1
- package/dist/agent-src/rules/evaluator-independence.md +3 -2
- package/dist/agent-src/rules/external-code-graph-interop.md +0 -1
- package/dist/agent-src/rules/external-reference-deep-dive.md +0 -1
- package/dist/agent-src/rules/fast-path-marker-visibility.md +2 -2
- package/dist/agent-src/rules/finance-safety-floor.md +1 -1
- package/dist/agent-src/rules/fix-what-you-see.md +6 -32
- package/dist/agent-src/rules/framework-neutrality-in-generic-skills.md +0 -1
- package/dist/agent-src/rules/git-history-discipline.md +2 -2
- package/dist/agent-src/rules/guidelines.md +0 -1
- package/dist/agent-src/rules/history-discipline.md +0 -1
- package/dist/agent-src/rules/icon-consistency.md +0 -1
- package/dist/agent-src/rules/image-likeness-and-rights.md +1 -1
- package/dist/agent-src/rules/improve-before-implement.md +0 -1
- package/dist/agent-src/rules/invite-challenge.md +0 -1
- package/dist/agent-src/rules/laravel-routing.md +1 -2
- package/dist/agent-src/rules/laravel-translations.md +0 -1
- package/dist/agent-src/rules/legal-safety-floor.md +3 -3
- package/dist/agent-src/rules/lethal-trifecta-guard.md +1 -1
- package/dist/agent-src/rules/linked-projects-onboarding-gate.md +0 -1
- package/dist/agent-src/rules/low-impact-corpus-privacy-floor.md +1 -1
- package/dist/agent-src/rules/markdown-safe-codeblocks.md +0 -1
- package/dist/agent-src/rules/media-governance-routing.md +13 -17
- package/dist/agent-src/rules/media-sync-ground-truth.md +0 -1
- package/dist/agent-src/rules/minimal-safe-diff.md +0 -1
- package/dist/agent-src/rules/missing-skill-recovery.md +0 -1
- package/dist/agent-src/rules/missing-tool-handling.md +0 -1
- package/dist/agent-src/rules/model-recommendation.md +0 -1
- package/dist/agent-src/rules/neighbour-precedence.md +64 -0
- package/dist/agent-src/rules/no-attribution-footers.md +0 -1
- package/dist/agent-src/rules/no-decorative-emojis-in-git-surfaces.md +0 -1
- package/dist/agent-src/rules/no-pr-progress-comments.md +0 -1
- package/dist/agent-src/rules/no-roadmap-references.md +0 -1
- package/dist/agent-src/rules/notes-first-reasoning.md +0 -1
- package/dist/agent-src/rules/onboarding-gate.md +0 -1
- package/dist/agent-src/rules/output-discipline.md +0 -1
- package/dist/agent-src/rules/package-ci-checks.md +0 -1
- package/dist/agent-src/rules/persona-governance.md +4 -5
- package/dist/agent-src/rules/php-coding.md +0 -1
- package/dist/agent-src/rules/prefer-enums-over-literals.md +0 -1
- package/dist/agent-src/rules/preservation-guard.md +0 -1
- package/dist/agent-src/rules/provider-lifecycle-discipline.md +3 -4
- package/dist/agent-src/rules/question-not-instruction.md +1 -1
- package/dist/agent-src/rules/reviewer-awareness.md +0 -1
- package/dist/agent-src/rules/roadmap-ci-steps-policy.md +0 -1
- package/dist/agent-src/rules/roadmap-progress-sync.md +4 -7
- package/dist/agent-src/rules/role-mode-adherence.md +0 -1
- package/dist/agent-src/rules/rule-type-governance.md +0 -1
- package/dist/agent-src/rules/runtime-safety.md +1 -1
- package/dist/agent-src/rules/scale-discipline.md +0 -1
- package/dist/agent-src/rules/secret-vcs-guard.md +1 -1
- package/dist/agent-src/rules/security-sensitive-stop.md +3 -3
- package/dist/agent-src/rules/self-repair-loop.md +0 -1
- package/dist/agent-src/rules/senior-engineering-discipline.md +0 -1
- package/dist/agent-src/rules/session-canary.md +7 -62
- package/dist/agent-src/rules/settings-ask-protocol.md +6 -6
- package/dist/agent-src/rules/size-enforcement.md +0 -1
- package/dist/agent-src/rules/skill-improvement-trigger.md +2 -3
- package/dist/agent-src/rules/skill-quality.md +0 -1
- package/dist/agent-src/rules/slash-command-routing-policy.md +0 -1
- package/dist/agent-src/rules/source-confidentiality.md +1 -1
- package/dist/agent-src/rules/source-discovery-gate.md +0 -1
- package/dist/agent-src/rules/source-of-truth.md +0 -1
- package/dist/agent-src/rules/spreadsheet-source-quality.md +1 -2
- package/dist/agent-src/rules/strategy-safety-floor.md +1 -1
- package/dist/agent-src/rules/symfony-routing.md +1 -2
- package/dist/agent-src/rules/think-before-action.md +0 -1
- package/dist/agent-src/rules/token-budget-discipline.md +12 -46
- package/dist/agent-src/rules/token-efficiency.md +0 -1
- package/dist/agent-src/rules/token-optimizer-maintenance.md +0 -1
- package/dist/agent-src/rules/tool-safety.md +1 -1
- package/dist/agent-src/rules/ui-audit-gate.md +1 -2
- package/dist/agent-src/rules/untrusted-input-defense.md +1 -1
- package/dist/agent-src/rules/upstream-proposal.md +0 -1
- package/dist/agent-src/rules/user-interaction.md +0 -1
- package/dist/agent-src/rules/user-interrupt-priority.md +1 -1
- package/dist/agent-src/scripts/archive_completed_roadmaps.ts +115 -20
- package/dist/agent-src/scripts/deferral_carry.ts +339 -0
- package/dist/agent-src/scripts/gate_budget.ts +47 -23
- package/dist/agent-src/scripts/gate_execute.ts +12 -4
- package/dist/agent-src/scripts/update_roadmap_progress.ts +4 -1
- package/dist/agent-src/skills/ai-council/SKILL.md +7 -4
- package/dist/agent-src/skills/ai-council/references/cost-and-redaction.md +21 -11
- package/dist/agent-src/skills/ai-council/references/procedure.md +12 -6
- package/dist/agent-src/skills/analysis-autonomous-mode/SKILL.md +1 -1
- package/dist/agent-src/skills/api-design/data/manifest.json +2 -2
- package/dist/agent-src/skills/api-testing/SKILL.md +17 -0
- package/dist/agent-src/skills/bug-analyzer/SKILL.md +1 -1
- package/dist/agent-src/skills/code-intelligence/SKILL.md +14 -2
- package/dist/agent-src/skills/command-routing/SKILL.md +3 -4
- package/dist/agent-src/skills/conventional-commits-writing/SKILL.md +127 -139
- package/dist/agent-src/skills/corpus-grounding/ATTRIBUTION.md +39 -0
- package/dist/agent-src/skills/corpus-grounding/SKILL.md +8 -2
- package/dist/agent-src/skills/database/data/manifest.json +2 -2
- package/dist/agent-src/skills/database/data/query-tuning.csv +13 -13
- package/dist/agent-src/skills/design-system-capture/SKILL.md +0 -3
- package/dist/agent-src/skills/design-system-capture/references/import-procedure.md +1 -1
- package/dist/agent-src/skills/estimate-ticket/SKILL.md +1 -1
- package/dist/agent-src/skills/existing-ui-audit/SKILL.md +2 -2
- package/dist/agent-src/skills/fe-design/SKILL.md +1 -1
- package/dist/agent-src/skills/feature-planning/SKILL.md +1 -1
- package/dist/agent-src/skills/git-workflow/SKILL.md +44 -44
- package/dist/agent-src/skills/git-workflow/references/branch-update.md +312 -0
- package/dist/agent-src/skills/git-workflow/references/commit-subject.md +205 -0
- package/dist/agent-src/skills/iconography/SKILL.md +1 -1
- package/dist/agent-src/skills/jira-integration/SKILL.md +3 -3
- package/dist/agent-src/skills/js-library-packaging/SKILL.md +2 -2
- package/dist/agent-src/skills/merge-conflicts/SKILL.md +10 -4
- package/dist/agent-src/skills/monorepo-workspace/SKILL.md +1 -1
- package/dist/agent-src/skills/po-discovery/SKILL.md +1 -1
- package/dist/agent-src/skills/quality-tools/SKILL.md +11 -1
- package/dist/agent-src/skills/quality-tools/references/go-tools.md +76 -0
- package/dist/agent-src/skills/quality-tools/references/python-tools.md +104 -0
- package/dist/agent-src/skills/refine-ticket/SKILL.md +4 -4
- package/dist/agent-src/skills/review-routing/SKILL.md +2 -2
- package/dist/agent-src/skills/roadmap-writing/SKILL.md +2 -2
- package/dist/agent-src/skills/skill-improvement-pipeline/SKILL.md +5 -3
- package/dist/agent-src/skills/source-discovery/SKILL.md +1 -1
- package/dist/agent-src/skills/storybook-workshop/SKILL.md +3 -3
- package/dist/agent-src/skills/tailwind-engineer/SKILL.md +4 -2
- package/dist/agent-src/skills/test-case-discovery/SKILL.md +7 -0
- package/dist/agent-src/skills/test-driven-development/SKILL.md +17 -0
- package/dist/agent-src/skills/test-performance/SKILL.md +19 -1
- package/dist/agent-src/skills/testing-anti-patterns/SKILL.md +1 -1
- package/dist/agent-src/skills/ui-component-architect/SKILL.md +2 -2
- package/dist/agent-src/skills/using-git-worktrees/SKILL.md +1 -1
- package/dist/agent-src/skills/verify-repair-loop/SKILL.md +2 -2
- package/dist/agent-src/templates/AGENTS.md +1 -1
- package/dist/agent-src/templates/agent-settings.md +46 -129
- package/dist/agent-src/templates/agents/agent-project-settings.example.yml +3 -3
- package/dist/agent-src/templates/command.md +2 -2
- package/dist/agent-src/templates/roadmaps.md +6 -1
- package/dist/agent-src/templates/scripts/work_engine/_lib/agent_settings.ts +0 -6
- package/dist/agent-src/templates/scripts/work_engine/directives/backend/_self_fix.ts +11 -7
- package/dist/agent-src/templates/scripts/work_engine/directives/ui/apply.ts +48 -6
- package/dist/agent-src/templates/scripts/work_engine/hooks/builtin/decision_trace.ts +3 -2
- package/dist/agent-src/templates/scripts/work_engine/hooks/builtin/memory_visibility.ts +2 -1
- package/dist/agent-src/templates/scripts/work_engine/hooks/settings.ts +0 -6
- package/dist/agent-src/templates/scripts/work_engine/scoring/decision_engine.ts +9 -12
- package/dist/agent-src/templates/scripts/work_engine/scoring/memory_visibility.ts +2 -1
- package/dist/agent-src/templates/scripts/work_engine/stack/runner.ts +774 -109
- package/dist/agent-src/templates/skill.md +1 -1
- package/dist/cli/registry.js +2 -1
- package/dist/cli-delegate/archive_completed_roadmaps.js +92 -12
- package/dist/cli-delegate/check_update_banner.js +207 -120
- package/dist/cli-delegate/chunk-523HCFYO.js +90 -0
- package/dist/cli-delegate/{chunk-FP36SWJD.js โ chunk-5GPULQBE.js} +2797 -338
- package/dist/cli-delegate/{chunk-IGD6ERX6.js โ chunk-6SRJTYJS.js} +42 -176
- package/dist/cli-delegate/chunk-6V5FMA3P.js +186 -0
- package/dist/cli-delegate/{chunk-M2DPGFZ4.js โ chunk-6V6TA25H.js} +22 -152
- package/dist/cli-delegate/chunk-6YQC2HLF.js +415 -0
- package/dist/cli-delegate/{chunk-E4XIZDIB.js โ chunk-7HKRE54K.js} +1 -64
- package/dist/cli-delegate/chunk-7IQE3D5S.js +191 -0
- package/dist/cli-delegate/{chunk-YJ72UIAK.js โ chunk-AED2VQGM.js} +1245 -249
- package/dist/cli-delegate/{chunk-7HQ52DHU.js โ chunk-AL3RZ22D.js} +1 -1
- package/dist/cli-delegate/chunk-DEIV7XP7.js +108 -0
- package/dist/cli-delegate/{chunk-DBH4AHDK.js โ chunk-ED7KCMLB.js} +9 -11
- package/dist/cli-delegate/chunk-F3QDG2GT.js +2569 -0
- package/dist/cli-delegate/{chunk-6KFEC3G7.js โ chunk-G5VVIZRC.js} +3 -3
- package/dist/cli-delegate/{chunk-FC75PGJE.js โ chunk-H76PHZBI.js} +149 -61
- package/dist/cli-delegate/chunk-IAYTIIQW.js +67 -0
- package/dist/cli-delegate/chunk-JQOM7TTM.js +1201 -0
- package/dist/cli-delegate/chunk-KB5FZ655.js +208 -0
- package/dist/cli-delegate/{chunk-7RQP4UDH.js โ chunk-KR6EM23A.js} +235 -1455
- package/dist/cli-delegate/{chunk-LTYVIY76.js โ chunk-KXXWJTDO.js} +6 -11
- package/dist/cli-delegate/{chunk-T7L2QK3K.js โ chunk-LQOCRFWT.js} +1 -1
- package/dist/cli-delegate/{chunk-6KM6ORRY.js โ chunk-MDPPKQCQ.js} +58 -9
- package/dist/cli-delegate/{chunk-4XFP2Y3E.js โ chunk-MSUL5NYP.js} +5 -5
- package/dist/cli-delegate/chunk-OAFSJBHH.js +272 -0
- package/dist/cli-delegate/{chunk-4E2W63DA.js โ chunk-OKJUIAPS.js} +62 -1
- package/dist/cli-delegate/{chunk-QAJS5YWY.js โ chunk-PHD7OOLE.js} +2 -1
- package/dist/cli-delegate/{chunk-P6ZHP5W2.js โ chunk-PWX7CKMD.js} +4 -4
- package/dist/cli-delegate/{chunk-NDJLNC6Q.js โ chunk-T6BP34WI.js} +1 -0
- package/dist/cli-delegate/{chunk-7XGBX6ZH.js โ chunk-T7XSJSUQ.js} +1144 -589
- package/dist/cli-delegate/chunk-ULQRUR23.js +208 -0
- package/dist/cli-delegate/chunk-WQWXGIWB.js +1779 -0
- package/dist/cli-delegate/{chunk-RGNIWTEA.js โ chunk-XQTPXKFA.js} +1 -1
- package/dist/cli-delegate/{chunk-NUHLI2RX.js โ chunk-YCU3TIXH.js} +2 -0
- package/dist/cli-delegate/chunk-ZBZV2G5R.js +210 -0
- package/dist/cli-delegate/{chunk-WGXTVKCQ.js โ chunk-ZUZKZYCN.js} +5 -3
- package/dist/cli-delegate/cmd_analyze_session.js +223 -43
- package/dist/cli-delegate/cmd_brand_status.js +3 -2
- package/dist/cli-delegate/cmd_conformance.js +1252 -249
- package/dist/cli-delegate/cmd_converge.js +3 -3
- package/dist/cli-delegate/cmd_doctor.js +19 -9
- package/dist/cli-delegate/cmd_doctor_neighbours.js +30 -0
- package/dist/cli-delegate/cmd_explain.js +45 -21
- package/dist/cli-delegate/cmd_export.js +13 -10
- package/dist/cli-delegate/cmd_fleet.js +3 -3
- package/dist/cli-delegate/cmd_git_convention.js +1851 -0
- package/dist/cli-delegate/cmd_handoff.js +44 -22
- package/dist/cli-delegate/cmd_mcp_available.js +3 -2
- package/dist/cli-delegate/cmd_memory_get.js +3 -1
- package/dist/cli-delegate/cmd_migrate.js +3 -3
- package/dist/cli-delegate/cmd_packs_active.js +5 -4
- package/dist/cli-delegate/cmd_preflight.js +6 -6
- package/dist/cli-delegate/cmd_prune.js +14 -11
- package/dist/cli-delegate/cmd_refresh.js +2 -1
- package/dist/cli-delegate/cmd_route_audit.js +10 -8
- package/dist/cli-delegate/cmd_route_explain.js +4 -4
- package/dist/cli-delegate/cmd_session_recycle.js +10 -7
- package/dist/cli-delegate/cmd_settings_check.js +54 -7
- package/dist/cli-delegate/cmd_settings_get.js +18 -8
- package/dist/cli-delegate/cmd_settings_migrate.js +13 -10
- package/dist/cli-delegate/cmd_settings_set.js +4 -4
- package/dist/cli-delegate/cmd_sync.js +14 -11
- package/dist/cli-delegate/cmd_uninstall.js +15 -12
- package/dist/cli-delegate/cmd_update.js +7 -7
- package/dist/cli-delegate/cmd_upgrade.js +9 -8
- package/dist/cli-delegate/cmd_validate.js +15 -12
- package/dist/cli-delegate/cmd_versions.js +5 -5
- package/dist/cli-delegate/deferral_carry.js +16 -0
- package/dist/cli-delegate/gate_budget.js +1 -1
- package/dist/cli-delegate/gate_execute.js +3 -3
- package/dist/cli-delegate/roadmap_gates.js +6 -6
- package/dist/cli-delegate/update_roadmap_progress.js +1 -1
- package/dist/discovery/deprecation-report.md +1 -1
- package/dist/discovery/discovery-manifest.json +232 -141
- package/dist/discovery/discovery-manifest.json.sha256 +1 -1
- package/dist/discovery/discovery-manifest.summary.md +3 -3
- package/dist/discovery/dormancy-report.md +1 -1
- package/dist/discovery/orphan-report.md +1 -1
- package/dist/discovery/packs.json +26 -9
- package/dist/discovery/trust-report.md +3 -3
- package/dist/discovery/workspaces.json +7 -4
- package/dist/hooks/dispatch.js +5655 -6623
- package/dist/hooks/dispatch.sha256 +1 -1
- package/dist/install/claudePathsPlan.js +47 -6
- package/dist/install/claudeRuleRewrite.js +7 -0
- package/dist/install/emit_host_rules_cli.js +39 -36
- package/dist/install/globalRuleScope.js +87 -0
- package/dist/install/host_rule_ownership.js +160 -0
- package/dist/install/install.mjs +2336 -1249
- package/dist/install/installThinLayer.js +289 -0
- package/dist/install/installedRuleLinks.js +262 -0
- package/dist/install/wizard-plan.js +24 -0
- package/dist/mcp/awesome-mcp-servers.row.md +1 -1
- package/dist/mcp/mcp-cloudflare-catalogue.json +2 -2
- package/dist/mcp/registry-manifest.json +5 -5
- package/dist/mcp/server.json +2 -2
- package/dist/mcp/server.mjs +36504 -30986
- package/dist/router.json +1 -1
- package/dist/scripts/_lib/agent_settings.js +26 -120
- package/dist/scripts/_lib/claude_settings_hooks.js +10 -8
- package/dist/scripts/_lib/compile_time_toggles.js +12 -21
- package/dist/scripts/_lib/git_convention.js +232 -0
- package/dist/scripts/_lib/global_deploy_inventory.js +730 -0
- package/dist/scripts/_lib/installed_layer.js +704 -0
- package/dist/scripts/_lib/lean_projection_mode.js +218 -15
- package/dist/scripts/_lib/package_root.js +68 -0
- package/dist/scripts/_lib/rule_consequence_class.js +45 -0
- package/dist/scripts/_lib/rule_injection.js +67 -10
- package/dist/scripts/_lib/rule_law_section.js +122 -0
- package/dist/scripts/_lib/settings_removed_keys.js +168 -0
- package/dist/scripts/_lib/thin_rules.js +535 -0
- package/dist/scripts/_lib/windsurf_render.js +60 -0
- package/dist/scripts/condense.js +14 -26
- package/dist/scripts/project_thin_rules.js +14 -294
- package/dist/server/app.js +2 -1
- package/dist/server/gitKeysGate.js +105 -0
- package/dist/server/routes/settings.js +67 -8
- package/dist/server/routes/wizard.js +4 -0
- package/dist/server/schemas/settings.js +29 -81
- package/dist/shared/skillRanking.js +103 -16
- package/dist/ui/assets/{index-Cwq4d0hX.js โ index-C3djEJah.js} +2 -2
- package/dist/ui/index.html +1 -1
- package/docs/MIGRATION.md +72 -1
- package/docs/contracts/settings-classes.md +39 -67
- package/docs/guidelines/agent-infra/active-remediation-mechanics.md +39 -0
- package/docs/guidelines/agent-infra/context-hygiene-mechanics.md +1 -1
- package/docs/guidelines/agent-infra/cross-source-consistency-mechanics.md +8 -10
- package/docs/guidelines/agent-infra/frontier-reasoning-operating-profile.md +3 -2
- package/docs/guidelines/agent-infra/layered-settings.md +13 -1
- package/docs/guidelines/agent-infra/roadmap-progress-mechanics.md +1 -1
- package/docs/guidelines/agent-infra/self-improvement-pipeline.md +10 -3
- package/docs/guidelines/agent-infra/size-and-scope.md +36 -0
- package/docs/guidelines/php/git.md +15 -2
- package/package.json +1 -1
- package/src/agent-src/scripts/archive_completed_roadmaps.ts +115 -20
- package/src/agent-src/scripts/deferral_carry.ts +339 -0
- package/src/agent-src/scripts/gate_budget.ts +47 -23
- package/src/agent-src/scripts/gate_execute.ts +12 -4
- package/src/agent-src/scripts/update_roadmap_progress.ts +4 -1
- package/src/agent-src/templates/AGENTS.md +1 -1
- package/src/agent-src/templates/scripts/work_engine/_lib/agent_settings.ts +0 -6
- package/src/agent-src/templates/scripts/work_engine/directives/backend/_self_fix.ts +11 -7
- package/src/agent-src/templates/scripts/work_engine/directives/ui/apply.ts +48 -6
- package/src/agent-src/templates/scripts/work_engine/hooks/builtin/decision_trace.ts +3 -2
- package/src/agent-src/templates/scripts/work_engine/hooks/builtin/memory_visibility.ts +2 -1
- package/src/agent-src/templates/scripts/work_engine/hooks/settings.ts +0 -6
- package/src/agent-src/templates/scripts/work_engine/scoring/decision_engine.ts +9 -12
- package/src/agent-src/templates/scripts/work_engine/scoring/memory_visibility.ts +2 -1
- package/src/agent-src/templates/scripts/work_engine/stack/runner.ts +774 -109
- package/src/config/agent-settings.template.yml +141 -334
- package/src/config/agents-paths.yml +16 -0
- package/src/config/assurance-capability-registry.json +7 -3
- package/src/config/ci-local-parity.yml +3 -0
- package/src/config/continuity-surface.json +10 -3
- package/src/config/discovery/packs.yml +17 -1
- package/src/config/evaluator-budgets.json +23 -10
- package/src/config/gate-coverage.yml +138 -3
- package/src/config/gate-violation-baselines.json +64 -16
- package/src/config/gitignore-block.txt +19 -0
- package/src/config/hook-bundle-budget.json +25 -0
- package/src/config/hook-token-budget.json +6 -1
- package/src/config/host-instruction-limits.json +33 -0
- package/src/config/release-gate-locality.yml +2 -1
- package/src/config/routing-coverage-seed.json +67 -4
- package/src/config/rule-activation-census.json +7 -3
- package/src/config/rule-consequence-class.json +161 -0
- package/src/config/rule-law-ceilings.json +105 -0
- package/src/config/rule-obligations.json +833 -0
- package/src/install/claudePathsPlan.ts +46 -4
- package/src/install/claudeRuleRewrite.ts +10 -1
- package/src/install/emit_host_rules_cli.ts +43 -34
- package/src/install/globalRuleScope.ts +109 -0
- package/src/install/host_rule_ownership.ts +170 -0
- package/src/install/installThinLayer.ts +378 -0
- package/src/install/installedRuleLinks.ts +308 -0
- package/src/install/wizard-plan.ts +24 -0
- package/src/scripts/_cli/cmd_analyze_session.ts +9 -15
- package/src/scripts/_cli/cmd_conformance.ts +13 -2
- package/src/scripts/_cli/cmd_doctor.ts +33 -81
- package/src/scripts/_cli/cmd_doctor_neighbours.ts +426 -0
- package/src/scripts/_cli/cmd_explain.ts +72 -14
- package/src/scripts/_cli/cmd_git_convention.ts +637 -0
- package/src/scripts/_cli/cmd_settings_check.ts +66 -8
- package/src/scripts/_cli/cmd_settings_get.ts +18 -3
- package/src/scripts/_cli/doctor_execution.ts +72 -1
- package/src/scripts/_dispatch.bash +53 -4
- package/src/scripts/_lib/agent_settings.ts +26 -124
- package/src/scripts/_lib/blocked_by_marker.ts +1 -1
- package/src/scripts/_lib/claude_settings_hooks.ts +10 -8
- package/src/scripts/_lib/compile_time_toggles.ts +12 -21
- package/src/scripts/_lib/dispatch_import_closure.ts +163 -0
- package/src/scripts/_lib/estate_offsets.ts +241 -0
- package/src/scripts/_lib/exemption_shape.ts +143 -0
- package/src/scripts/_lib/fnv.ts +23 -0
- package/src/scripts/_lib/foreign_scan.ts +106 -0
- package/src/scripts/_lib/git_base_ref.ts +92 -0
- package/src/scripts/_lib/git_convention.ts +291 -0
- package/src/scripts/_lib/git_convention_carrier.ts +389 -0
- package/src/scripts/_lib/git_convention_grammar.ts +246 -0
- package/src/scripts/_lib/git_convention_measure.ts +344 -0
- package/src/scripts/_lib/gitignore_block.ts +314 -0
- package/src/scripts/_lib/global_deploy_inventory.ts +106 -0
- package/src/scripts/_lib/graph_feeder_record.ts +437 -0
- package/src/scripts/_lib/hook_settings.ts +73 -0
- package/src/scripts/_lib/host_capability.ts +40 -19
- package/src/scripts/_lib/host_hook_merge.ts +165 -0
- package/src/scripts/_lib/installed_layer.ts +963 -0
- package/src/scripts/_lib/json_merge.ts +82 -0
- package/src/scripts/_lib/json_pointers.ts +93 -11
- package/src/scripts/_lib/knowledge_global.ts +14 -1
- package/src/scripts/_lib/lean_projection_mode.ts +275 -15
- package/src/scripts/_lib/machine_wake.ts +16 -3
- package/src/scripts/_lib/module_reach.ts +456 -0
- package/src/scripts/_lib/neighbour_census.ts +760 -0
- package/src/scripts/_lib/neighbour_contradictions.ts +236 -0
- package/src/scripts/_lib/neighbour_scan.ts +122 -0
- package/src/scripts/_lib/neighbour_tool_use.ts +187 -0
- package/src/scripts/_lib/prompt_shape.ts +46 -0
- package/src/scripts/_lib/ratification_artifact.ts +220 -1
- package/src/scripts/_lib/ratification_subject.ts +92 -0
- package/src/scripts/_lib/release_findings_ingest.ts +15 -7
- package/src/scripts/_lib/release_highlights.ts +5 -0
- package/src/scripts/_lib/release_migration_gate.ts +19 -3
- package/src/scripts/_lib/reserved_name_sweep.ts +73 -0
- package/src/scripts/_lib/review_coverage.ts +134 -0
- package/src/scripts/_lib/rule_consequence_class.ts +71 -0
- package/src/scripts/_lib/rule_injection.ts +130 -10
- package/src/scripts/_lib/rule_law_section.ts +147 -0
- package/src/scripts/_lib/rule_layer_overlap.ts +58 -0
- package/src/scripts/_lib/rule_obligations.ts +205 -0
- package/src/scripts/_lib/self_repair.ts +1 -1
- package/src/scripts/_lib/settings_removed_keys.ts +173 -0
- package/src/scripts/_lib/skill_origin.ts +254 -0
- package/src/scripts/_lib/structured_ask.ts +64 -21
- package/src/scripts/_lib/test_red_state.ts +5 -0
- package/src/scripts/_lib/thin_rules.ts +620 -0
- package/src/scripts/_lib/touched_file_quality.ts +570 -0
- package/src/scripts/_lib/turn_end_refusals.ts +77 -2
- package/src/scripts/_lib/windsurf_render.ts +63 -0
- package/src/scripts/_lib/worker_budget.ts +1 -1
- package/src/scripts/adr/regenerate_index.ts +16 -1
- package/src/scripts/ai_council/cli_call_budget.ts +13 -5
- package/src/scripts/ai_council/clients.ts +26 -57
- package/src/scripts/ai_council/config.ts +8 -8
- package/src/scripts/ai_council/modification_review.ts +100 -0
- package/src/scripts/ai_council/modification_review_questions.ts +90 -0
- package/src/scripts/ai_council/orchestrator.ts +5 -5
- package/src/scripts/ai_council/spend_gate.ts +18 -7
- package/src/scripts/ai_council/vendor_defaults.ts +45 -0
- package/src/scripts/ai_team/config.ts +11 -16
- package/src/scripts/audit_skill_overlap.ts +261 -0
- package/src/scripts/audit_user_type_axis.ts +20 -8
- package/src/scripts/before_complete_hook.ts +243 -12
- package/src/scripts/bench_ab_clone.ts +1 -2
- package/src/scripts/bench_concern_spawn_path.ts +129 -0
- package/src/scripts/bench_graph_feeder_latency.ts +584 -0
- package/src/scripts/bench_touched_file_quality.ts +238 -0
- package/src/scripts/check_agent_artifact_location.ts +36 -0
- package/src/scripts/check_branch_freshness.ts +147 -24
- package/src/scripts/check_enforcement_coverage.ts +130 -0
- package/src/scripts/check_enforcement_matrix.ts +377 -20
- package/src/scripts/check_estate_count.ts +130 -153
- package/src/scripts/check_evaluator_budgets.ts +4 -0
- package/src/scripts/check_finding_dispositions.ts +196 -21
- package/src/scripts/check_gate_coverage.ts +4 -3
- package/src/scripts/check_gate_reachability.ts +48 -1
- package/src/scripts/check_generator_sync.ts +48 -0
- package/src/scripts/check_hook_bundle_composition.ts +477 -0
- package/src/scripts/check_kernel_edit_ratified.ts +132 -14
- package/src/scripts/check_memory.ts +7 -1
- package/src/scripts/check_pack_size.ts +1 -1
- package/src/scripts/check_release_highlights.ts +10 -0
- package/src/scripts/check_release_manifest_content.ts +189 -0
- package/src/scripts/check_release_pr_shape.ts +38 -15
- package/src/scripts/check_standing_rule_delivery.ts +129 -13
- package/src/scripts/check_suppression_hygiene.ts +2 -5
- package/src/scripts/check_verify_expectation_delta.ts +521 -0
- package/src/scripts/ci_settle.ts +42 -5
- package/src/scripts/classify_merge_risk.ts +320 -0
- package/src/scripts/closure_scan.ts +91 -1
- package/src/scripts/code_graph/detect.ts +127 -7
- package/src/scripts/code_graph/foreign.ts +194 -0
- package/src/scripts/code_graph/query.ts +217 -4
- package/src/scripts/code_graph/types.ts +26 -2
- package/src/scripts/code_graph/validate.ts +3 -1
- package/src/scripts/code_graph/verbs.ts +103 -0
- package/src/scripts/command_suggester/settings.ts +8 -108
- package/src/scripts/command_suggester/types.ts +4 -5
- package/src/scripts/compile_hook_manifest.ts +33 -1
- package/src/scripts/condense.ts +14 -27
- package/src/scripts/consumer_matrix.ts +102 -0
- package/src/scripts/context_hygiene_hook.ts +13 -23
- package/src/scripts/cost/preflight.mjs +12 -1
- package/src/scripts/council_cli.ts +7 -7
- package/src/scripts/dispatch_r2_reviewer.ts +24 -11
- package/src/scripts/estate_exemption_shape.ts +202 -0
- package/src/scripts/explain_run.ts +8 -13
- package/src/scripts/generate_git_convention_grammar.ts +127 -0
- package/src/scripts/generate_host_cost_table.ts +21 -4
- package/src/scripts/handoff_context_hook.ts +86 -37
- package/src/scripts/hook_manifest.json +1 -1
- package/src/scripts/hook_manifest.yaml +175 -15
- package/src/scripts/hooks/block_config_weakening.ts +115 -7
- package/src/scripts/hooks/block_plumbing_writes.ts +37 -5
- package/src/scripts/hooks/code_graph_context_hook.ts +252 -23
- package/src/scripts/hooks/concern_failure_policy.ts +280 -0
- package/src/scripts/hooks/concern_registry.ts +2 -0
- package/src/scripts/hooks/delegation_nudge_hook.ts +2 -3
- package/src/scripts/hooks/dispatch_hook.ts +52 -52
- package/src/scripts/hooks/evidence_independence.ts +12 -4
- package/src/scripts/hooks/exit_codes.ts +2 -1
- package/src/scripts/hooks/host_lowering.json +1 -1
- package/src/scripts/hooks/host_lowering.ts +19 -1
- package/src/scripts/hooks/mcp_usage_observation_hook.ts +121 -0
- package/src/scripts/hooks/one_question_per_ask_hook.ts +41 -25
- package/src/scripts/hooks/payload_stub.ts +10 -1
- package/src/scripts/hooks/push_settle_hook.ts +4 -3
- package/src/scripts/hooks/rule_inject_hook.ts +795 -60
- package/src/scripts/hooks/state_io.ts +8 -4
- package/src/scripts/hooks/table_fingerprint.ts +21 -0
- package/src/scripts/hooks/telemetry_usage_hook.ts +24 -7
- package/src/scripts/hooks/turn_end_gate_hook.ts +85 -0
- package/src/scripts/hooks_status.ts +112 -0
- package/src/scripts/injection_scan_hook.ts +7 -0
- package/src/scripts/install-hooks.sh +42 -14
- package/src/scripts/install.ts +78 -215
- package/src/scripts/installed_layer_report.ts +103 -0
- package/src/scripts/language_mirror_hook.ts +15 -6
- package/src/scripts/learning_sidecar.ts +119 -8
- package/src/scripts/lint_blocker_citations.ts +198 -0
- package/src/scripts/lint_evidence_artifacts.ts +9 -0
- package/src/scripts/lint_hook_concern_budget.ts +10 -21
- package/src/scripts/lint_hook_manifest.ts +53 -0
- package/src/scripts/lint_major_migration_sections.ts +156 -26
- package/src/scripts/lint_pack_boundaries.ts +465 -29
- package/src/scripts/lint_roadmap_blockers.ts +282 -29
- package/src/scripts/lint_roadmap_complexity.ts +4 -2
- package/src/scripts/lint_rule_law_section.ts +647 -0
- package/src/scripts/lint_rule_skill_pack_reach.ts +17 -0
- package/src/scripts/lint_settings_classes.ts +1 -1
- package/src/scripts/lint_ticked_unmet_criteria.ts +165 -0
- package/src/scripts/lint_workflow_security.ts +173 -6
- package/src/scripts/mcp_server/consumer_tool_catalog.json +53 -0
- package/src/scripts/mcp_server/graph_tools.ts +72 -3
- package/src/scripts/measure_routing_signal.ts +54 -16
- package/src/scripts/measure_skill_ranker_baseline.ts +221 -8
- package/src/scripts/memory_learn_hook.ts +91 -6
- package/src/scripts/model_rule_injection.ts +55 -8
- package/src/scripts/onboarding_gate_hook.ts +7 -6
- package/src/scripts/print_required_checks.ts +15 -3
- package/src/scripts/probe_host_compliance.ts +33 -5
- package/src/scripts/probe_turnaround.ts +183 -3
- package/src/scripts/project_thin_rules.ts +34 -327
- package/src/scripts/ratification_header.ts +77 -0
- package/src/scripts/refusal_envelope.ts +138 -0
- package/src/scripts/release_publication.ts +29 -3
- package/src/scripts/report_dispatch_import_closure.ts +76 -0
- package/src/scripts/report_evidence_temperature.ts +657 -0
- package/src/scripts/report_installed_rule_links.ts +274 -0
- package/src/scripts/report_label_agreement.ts +233 -0
- package/src/scripts/report_module_reach.ts +212 -0
- package/src/scripts/report_obligation_mechanism.ts +228 -0
- package/src/scripts/report_parked_blockers.ts +222 -0
- package/src/scripts/report_required_checks_drift.ts +196 -0
- package/src/scripts/report_single_token_triggers.ts +277 -0
- package/src/scripts/report_skill_ranker_confusion.ts +543 -0
- package/src/scripts/report_standing_payload_by_host.ts +188 -15
- package/src/scripts/report_verification_record_coverage.ts +306 -0
- package/src/scripts/routing_doctor.ts +2 -2
- package/src/scripts/rule_activation_census.ts +5 -2
- package/src/scripts/rule_trigger_eval.ts +9 -9
- package/src/scripts/schemas/agent-settings.schema.json +17 -31
- package/src/scripts/schemas/command.schema.json +1 -1
- package/src/scripts/schemas/review-findings.schema.json +3 -2
- package/src/scripts/schemas/rule.schema.json +5 -0
- package/src/scripts/schemas/skill.schema.json +1 -1
- package/src/scripts/self_review_gate.ts +101 -9
- package/src/scripts/skill_tools/score_skill_relevance.ts +314 -40
- package/src/scripts/sweep_skill_ranker_signals.ts +129 -0
- package/src/scripts/sync_gitignore.ts +29 -235
- package/src/scripts/sync_pr_branch.ts +403 -132
- package/src/scripts/trigger_eval_grandfather.json +0 -21
- package/src/server/schemas/settings.ts +42 -176
- package/src/shared/skillRanking.ts +169 -14
- package/dist/cli-delegate/chunk-5R7HOLAF.js +0 -99
- package/dist/cli-delegate/chunk-JNMVLWLR.js +0 -4457
- package/dist/cli-delegate/chunk-YDPILCOL.js +0 -152
- package/src/scripts/_lib/config_chain.ts +0 -477
- package/src/scripts/_lib/conformance_report.ts +0 -403
- package/src/scripts/_lib/eval_discrimination.ts +0 -95
- package/src/scripts/_lib/evaluator_promotion.ts +0 -225
- package/src/scripts/_lib/file_slicer.ts +0 -117
- package/src/scripts/_lib/legacy_boundary_map.ts +0 -228
- package/src/scripts/_lib/minimality_tiebreak.ts +0 -168
- package/src/scripts/_lib/overbuild_lens_contract.ts +0 -196
- package/src/scripts/_lib/role_split.ts +0 -338
|
@@ -87,7 +87,7 @@ Structure, controls, grid and breakpoints are never this skill's to adjust;
|
|
|
87
87
|
those stay 1:1 with the artifact and belong to the rule, not to a
|
|
88
88
|
utility-class decision. **Icons are out of scope here as well, and this skill
|
|
89
89
|
asserts no obligation about them** โ the icon system belongs to
|
|
90
|
-
|
|
90
|
+
`icon-consistency`. An earlier revision of
|
|
91
91
|
this paragraph claimed icons "stay 1:1 with the artifact" with no citation of
|
|
92
92
|
any kind, while putting them outside its own scope in the same sentence; the
|
|
93
93
|
claim is withdrawn rather than defended, because a clause that reached the tree
|
|
@@ -97,7 +97,9 @@ Token authoring (DTCG 3-layer model, CSS-var/Tailwind generation) lives
|
|
|
97
97
|
in [`design-tokens`](../design-tokens/SKILL.md); its
|
|
98
98
|
`tokens.ts validate --dir <path>` is the **single token-discipline
|
|
99
99
|
linter** โ the mechanical check behind this rule (no hardcoded hex / px /
|
|
100
|
-
rem outside the token files).
|
|
100
|
+
rem outside the token files). That skill ships with the `frontend-design`
|
|
101
|
+
pack: without it the rule above still binds and is checked by reading,
|
|
102
|
+
not by a linter. Greenfield Tailwind config: bundled
|
|
101
103
|
`scripts/tailwind_config_gen.ts` (Apache-2.0-derived, pure templating)
|
|
102
104
|
scaffolds `tailwind.config.{js,ts}` per framework.
|
|
103
105
|
|
|
@@ -39,6 +39,13 @@ CAP PER BEHAVIOR: 5โ8 CASES โ EACH MUST FAIL FOR A DISTINCT REASON.
|
|
|
39
39
|
|
|
40
40
|
## Does this change owe an executable behavior contract?
|
|
41
41
|
|
|
42
|
+
This section is the decision *Gherkin*, *BDD*, *Cucumber*, *Behat* and
|
|
43
|
+
*given-when-then* are meant to reach โ each pinned as a should-trigger case in
|
|
44
|
+
`evals/triggers.json`, with German exemplars for *Cucumber* and *Behat*. That
|
|
45
|
+
corpus specifies
|
|
46
|
+
the intent; it does not route, and this skill's `description` carries none of
|
|
47
|
+
the terms. A decision, not a guide to writing one.
|
|
48
|
+
|
|
42
49
|
Cases and contracts are not the same artifact. A **case** is something you assert
|
|
43
50
|
in the project's unit runner. An **executable behavior contract** โ a
|
|
44
51
|
specification written in the language of whoever asked for the change, and run
|
|
@@ -313,6 +313,23 @@ export async function retry<T>(op: () => Promise<T>): Promise<T> {
|
|
|
313
313
|
Run again โ passes. Configurable attempt count, backoff, and jitter all
|
|
314
314
|
wait for their own failing tests.
|
|
315
315
|
|
|
316
|
+
## The filtered probe, per ecosystem
|
|
317
|
+
|
|
318
|
+
The discipline above is stack-independent; the **command** is not, and every
|
|
319
|
+
runner invocation elsewhere in this file is a PHP one. Resolve the runner with
|
|
320
|
+
`resolve_toolchain` (`work_engine/stack/runner.ts`) and read its `ecosystems`,
|
|
321
|
+
then filter with that ecosystem's own form โ never the whole suite:
|
|
322
|
+
|
|
323
|
+
| `ecosystems` | Filtered probe |
|
|
324
|
+
|---|---|
|
|
325
|
+
| `php` | `vendor/bin/pest --filter '<name>'` ยท `php artisan test --filter '<name>'` |
|
|
326
|
+
| `js` | `npx vitest run -t '<name>'` ยท `npx jest -t '<name>'` |
|
|
327
|
+
| `python` | `pytest -k '<expr>'` ยท `pytest path/to/test.py::test_name` |
|
|
328
|
+
| `go` | `go test -run '<regexp>' ./pkg/...` |
|
|
329
|
+
|
|
330
|
+
A TypeScript repository resolves the ecosystem `js`, never `typescript`. The
|
|
331
|
+
whole suite is the final gate and never the per-iteration probe, in every row.
|
|
332
|
+
|
|
316
333
|
## Gotchas
|
|
317
334
|
|
|
318
335
|
* Running the full suite instead of a filtered test hides the REDโGREEN
|
|
@@ -174,4 +174,22 @@ Replace dynamic `getPdo()` probing with explicit config:
|
|
|
174
174
|
- Do NOT use RefreshDatabase when DatabaseTransactions works โ 10x slower.
|
|
175
175
|
- Do NOT run full test suite on every code change โ use `--filter`.
|
|
176
176
|
- Do NOT add test-only indexes โ fix test design instead.
|
|
177
|
-
- Do NOT disable parallel testing to "fix" flaky tests โ fix the root cause.
|
|
177
|
+
- Do NOT disable parallel testing to "fix" flaky tests โ fix the root cause.
|
|
178
|
+
|
|
179
|
+
## Where the time goes, per ecosystem
|
|
180
|
+
|
|
181
|
+
The diagnosis above is PHPUnit-shaped. The method โ measure before optimising,
|
|
182
|
+
find the slowest tests first, separate setup cost from assertion cost โ
|
|
183
|
+
transfers; the instrument does not. Resolve the runner with
|
|
184
|
+
`resolve_toolchain` and read its `ecosystems`:
|
|
185
|
+
|
|
186
|
+
| `ecosystems` | Slowest-test instrument | The usual first cause |
|
|
187
|
+
|---|---|---|
|
|
188
|
+
| `php` | `--profile` / Pest's duration column | database refresh per test |
|
|
189
|
+
| `js` | `vitest --reporter=verbose`, `jest --detectOpenHandles` | module transform and a leaked handle |
|
|
190
|
+
| `python` | `pytest --durations=20` | session-scoped fixtures rebuilt per test |
|
|
191
|
+
| `go` | `go test -v`, `-cpuprofile`, `-race` for the slow-and-flaky pair | a `TestMain` that starts real I/O |
|
|
192
|
+
|
|
193
|
+
`go test` caches a package's result until its inputs change, so a suite that
|
|
194
|
+
looks fast on the second run may not have run at all โ `-count=1` defeats the
|
|
195
|
+
cache when you are measuring.
|
|
@@ -206,7 +206,7 @@ Backstop grep โ skip/xfail added to chase green (a hit in a diff that also "fi
|
|
|
206
206
|
rg -n '\b(it|test|describe)\.skip\b|\.only\b|xit\(|xdescribe\(|@pytest\.mark\.(skip|xfail)|@Disabled|->markTestSkipped\(' .
|
|
207
207
|
```
|
|
208
208
|
|
|
209
|
-
This is the test-surface instance of the `autonomous-execution`
|
|
209
|
+
This is the test-surface instance of the `autonomous-execution` allowlist-growth antipattern (bulk `skip`/`xfail` to force green counts as the tool being wrong, not the content) and the `verify-before-complete` floor (green must be *earned*, not manufactured).
|
|
210
210
|
|
|
211
211
|
### The named smells โ canonical vocabulary, and what it does NOT cover
|
|
212
212
|
|
|
@@ -61,7 +61,7 @@ than under-splitting. Meet BOTH conditions before you extract.
|
|
|
61
61
|
**Read `DESIGN.md` ยง Owned components first** โ it is the project's own inventory of what
|
|
62
62
|
it already owns (component, status, story file, registry item), filled from the story files
|
|
63
63
|
rather than from memory by
|
|
64
|
-
|
|
64
|
+
`design-system-capture`. It is the cheapest possible
|
|
65
65
|
prior-art check: one table, and a `deprecated` row tells you not to reach for something that
|
|
66
66
|
still exists in the tree. Absent or empty โ fall through to
|
|
67
67
|
[`existing-ui-audit`](../existing-ui-audit/SKILL.md), which reads the codebase itself.
|
|
@@ -104,7 +104,7 @@ checkable before it reaches a page. That skill is stack-agnostic and ships in
|
|
|
104
104
|
`engineering-base`, so a plain-`react` project receives it exactly as a
|
|
105
105
|
`react-shadcn` one does. The state-coverage matrix the story set is derived
|
|
106
106
|
from is React-specific and lives in
|
|
107
|
-
|
|
107
|
+
`react-shadcn-ui` ยง Step 3, deliberately not
|
|
108
108
|
duplicated here; a Blade, Vue or Livewire lane derives its story set from that
|
|
109
109
|
lane's own state list instead.
|
|
110
110
|
|
|
@@ -136,7 +136,7 @@ passes. For the global location, skip โ path is outside the repo.
|
|
|
136
136
|
### 4. Create the worktree
|
|
137
137
|
|
|
138
138
|
```bash
|
|
139
|
-
git worktree add .worktrees/<branch-name> -b <branch-name>
|
|
139
|
+
git worktree add ".worktrees/<branch-name>" -b "<branch-name>"
|
|
140
140
|
```
|
|
141
141
|
|
|
142
142
|
**Then address the worktree by flag, not by `cd`.** Every tool that matters
|
|
@@ -75,7 +75,7 @@ regressions are detectable. Pick the verdict commands per the project's
|
|
|
75
75
|
|---|---|---|
|
|
76
76
|
| `threshold` | all targeted checks green | numeric pass bar, **absolute** (fraction of total), not "ยฑ N tests" |
|
|
77
77
|
| `allow_regressions` | `false` | a revision breaking a baseline-green check stops the loop |
|
|
78
|
-
| `max_attempts` | **3** | hard cap (test feedback is more actionable than diff critique โ one more than `do-and-judge`'s 2;
|
|
78
|
+
| `max_attempts` | **3** | hard cap, this loop's own number (test feedback is more actionable than diff critique โ one more than `do-and-judge`'s 2); independent of [`autonomous-execution`](../../rules/autonomous-execution.md)'s `execution.fix_loop_max` budget, which now defaults to 10 |
|
|
79
79
|
| `plateau_window` | 3 | stop if the last *window* scores sit within `tolerance` |
|
|
80
80
|
| `tolerance` | small absolute fraction | flake jitter that does **not** count as improvement |
|
|
81
81
|
|
|
@@ -294,7 +294,7 @@ iter2 fixes A, breaks B, 92% โ "PASS" โ regression ignored
|
|
|
294
294
|
phantom-verification check bound at step 3.4, with its fixture corpus in
|
|
295
295
|
`tests/fixtures/tamper-corpus/` and its polarity proven both ways by
|
|
296
296
|
`--self-test`.
|
|
297
|
-
* [`autonomous-execution`](../../rules/autonomous-execution.md) โ the
|
|
297
|
+
* [`autonomous-execution`](../../rules/autonomous-execution.md) โ the `execution.fix_loop_max` cap (this loop's own `max_attempts` is a separate, smaller number).
|
|
298
298
|
* [`resident-process-governance`](../../docs/contracts/resident-process-governance.md) โ the
|
|
299
299
|
runtime-free constraint this loop honors.
|
|
300
300
|
* Optional impact pre-step (when a code-graph is present, ADR-124): run
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
## Pointers
|
|
15
15
|
|
|
16
16
|
- **Filling out this AGENTS.md** โ section templates, capability bullets, multi-agent entry flow, monorepo layout: [`consumer-agents-md-guide`](.augment/contexts/contracts/consumer-agents-md-guide.md).
|
|
17
|
-
- **Behavior rules** (9 always-on; rest routed) โ [`.augment/rules/`](.augment/rules/). Kernel rules
|
|
17
|
+
- **Behavior rules** (9 always-on; rest routed) โ [`.augment/rules/`](.augment/rules/). Kernel rules change only by a ratified edit; overrides may tighten.
|
|
18
18
|
- **Skills (on-demand expertise)** โ domain skills surfaced by description, invoked on trigger match: [`.augment/skills/`](.augment/skills/).
|
|
19
19
|
- **Commands (workflows)** โ slash-commands the agent runs end-to-end (`/work`, `/create-pr`, โฆ): [`.augment/commands/`](.augment/commands/).
|
|
20
20
|
- **Project-specific docs** โ your own architecture notes, roadmaps, sessions, contexts: [`agents/`](agents/).
|
|
@@ -111,20 +111,6 @@ personal:
|
|
|
111
111
|
# Detected and set by /onboard on first run.
|
|
112
112
|
rtk_installed: false
|
|
113
113
|
|
|
114
|
-
# Minimal output mode (true, false)
|
|
115
|
-
# true = short bullet points during work, concise summary at the end
|
|
116
|
-
# false = verbose explanations and reasoning
|
|
117
|
-
minimal_output: true
|
|
118
|
-
|
|
119
|
-
# Play-by-play mode (true, false)
|
|
120
|
-
# true = briefly share intermediate findings as you go
|
|
121
|
-
# false = silently investigate, only report the conclusion
|
|
122
|
-
play_by_play: false
|
|
123
|
-
|
|
124
|
-
# Prefix PR comment replies with a bot icon ๐ค (true, false)
|
|
125
|
-
# Personal preference โ each developer decides for themselves.
|
|
126
|
-
pr_comment_bot_icon: false
|
|
127
|
-
|
|
128
114
|
# Autonomous execution โ suppress trivial workflow questions (on, off, auto)
|
|
129
115
|
# on = act on the obvious next step; never ask "Step 2 or 3?", "should I commit?", etc.
|
|
130
116
|
# off = ask trivial workflow questions (legacy behavior)
|
|
@@ -136,9 +122,6 @@ personal:
|
|
|
136
122
|
|
|
137
123
|
# --- Project / team preferences ---
|
|
138
124
|
project:
|
|
139
|
-
# Path to the PR template file (relative to project root)
|
|
140
|
-
pr_template: .github/pull_request_template.md
|
|
141
|
-
|
|
142
125
|
# Target repository for universal improvement PRs (e.g. org/agent-config)
|
|
143
126
|
upstream_repo: ""
|
|
144
127
|
|
|
@@ -224,14 +207,6 @@ hooks:
|
|
|
224
207
|
# outside the standard location.
|
|
225
208
|
# script: scripts/chat_history.ts
|
|
226
209
|
|
|
227
|
-
# --- Optional pipelines ---
|
|
228
|
-
pipelines:
|
|
229
|
-
# Skill improvement pipeline (true, false)
|
|
230
|
-
# true = after meaningful tasks, propose learning capture and improvements (default)
|
|
231
|
-
# false = silent, no post-task analysis
|
|
232
|
-
# Included by every rule_loading_tier except `custom`.
|
|
233
|
-
skill_improvement: true
|
|
234
|
-
|
|
235
210
|
# --- Roadmap execution ---
|
|
236
211
|
#
|
|
237
212
|
# Controls when /roadmap:process-* runs the project's quality pipeline.
|
|
@@ -239,22 +214,6 @@ pipelines:
|
|
|
239
214
|
# response โ that cadence is governed by `roadmap-progress-sync` and
|
|
240
215
|
# is non-negotiable. This setting only governs *quality tool runs*.
|
|
241
216
|
roadmap:
|
|
242
|
-
# Skip the pre-run confirmation gate when /roadmap:process-step|phase|full
|
|
243
|
-
# is invoked (true, false).
|
|
244
|
-
# true = default. The command name itself names the scope; if a
|
|
245
|
-
# single active roadmap is discoverable (or the user named
|
|
246
|
-
# one), the loop starts immediately. The resolved roadmap /
|
|
247
|
-
# cadence / council setting are surfaced inline as a one-shot
|
|
248
|
-
# note so an unwanted pick can still be aborted mid-stream.
|
|
249
|
-
# false = legacy. The loop shows the pre-run summary with numbered
|
|
250
|
-
# options (Go / Different roadmap / Different scope / Toggle
|
|
251
|
-
# council / Abort) and waits for input.
|
|
252
|
-
# The gate is still shown โ regardless of this flag โ when the roadmap
|
|
253
|
-
# is ambiguous (multiple active, none named) or a scope / cadence
|
|
254
|
-
# conflict has no sensible default. The flag suppresses the
|
|
255
|
-
# confirmation, never a genuine "which roadmap?" question.
|
|
256
|
-
skip_pre_run_gate: true
|
|
257
|
-
|
|
258
217
|
# When to run quality tools during /roadmap:process-step|phase|full.
|
|
259
218
|
# end_of_roadmap = once, before archiving (default โ fastest, fewest tokens)
|
|
260
219
|
# per_phase = once after every completed phase
|
|
@@ -292,7 +251,8 @@ subagents:
|
|
|
292
251
|
judge_model: ""
|
|
293
252
|
|
|
294
253
|
# Maximum number of parallel subagent invocations (integer, default 3)
|
|
295
|
-
# Set to 1 to serialize.
|
|
254
|
+
# Set to 1 to serialize. A limit the model reads from settings โ no
|
|
255
|
+
# code counts spawns against it.
|
|
296
256
|
max_parallel: 3
|
|
297
257
|
|
|
298
258
|
# --- Recursive self-verification (see skills/recursive-verification) ---
|
|
@@ -369,17 +329,8 @@ onboarding:
|
|
|
369
329
|
# never auto-executes โ the user picks. See `rules/command-suggestion-policy.md`.
|
|
370
330
|
commands:
|
|
371
331
|
suggestion:
|
|
372
|
-
#
|
|
373
|
-
#
|
|
374
|
-
enabled: true
|
|
375
|
-
# Minimum match score (0.0โ1.0) before a suggestion surfaces.
|
|
376
|
-
confidence_floor: 0.6
|
|
377
|
-
# Cooldown in seconds between re-suggestions of the same
|
|
378
|
-
# (command, evidence) pair. Default 600 = 10m.
|
|
379
|
-
cooldown_seconds: 600
|
|
380
|
-
# Max number of command suggestions before the as-is option.
|
|
381
|
-
# The as-is option is always extra (total rendered = max_options + 1).
|
|
382
|
-
max_options: 4
|
|
332
|
+
# The layer is always on; floor 0.6, cooldown 600s and a cap of 4
|
|
333
|
+
# options (plus the as-is option) are fixed.
|
|
383
334
|
# Commands to never suggest. Still work when typed explicitly.
|
|
384
335
|
blocklist: []
|
|
385
336
|
|
|
@@ -398,23 +349,13 @@ commands:
|
|
|
398
349
|
# Critical info (breaking changes, migrations, security, rollback) is
|
|
399
350
|
# ALWAYS included at every tier โ the tier governs explanatory depth only.
|
|
400
351
|
#
|
|
401
|
-
# api_examples (default true): add a fenced JSON example for API-endpoint
|
|
402
|
-
# changes ONLY when grounded in a real source (DTO/resource, OpenAPI,
|
|
403
|
-
# fixture, probe); else a one-line pointer, never an invented example.
|
|
404
|
-
#
|
|
405
352
|
# screenshots (default false): capability-gated frontend screenshots.
|
|
406
353
|
# true attempts capture only when the host has browser/preview tooling;
|
|
407
354
|
# emits a note and leaves the placeholder when absent โ never blocks the PR.
|
|
408
|
-
#
|
|
409
|
-
# ui_paths / api_paths: optional globs to make frontend / API detection
|
|
410
|
-
# explicit; empty = a light heuristic that fails open.
|
|
411
355
|
create_pr:
|
|
412
356
|
preview_description: false
|
|
413
357
|
detail_level: min
|
|
414
|
-
api_examples: true
|
|
415
358
|
screenshots: false
|
|
416
|
-
ui_paths: []
|
|
417
|
-
api_paths: []
|
|
418
359
|
|
|
419
360
|
# --- Telemetry (artefact engagement, default-off) ---
|
|
420
361
|
#
|
|
@@ -426,36 +367,20 @@ commands:
|
|
|
426
367
|
# (once Phase 3 of road-to-artifact-engagement-telemetry lands).
|
|
427
368
|
# --- Verbosity (token frugality) ---
|
|
428
369
|
#
|
|
429
|
-
#
|
|
430
|
-
#
|
|
370
|
+
# What the agent shows after acting. Default = terse. Four former toggles
|
|
371
|
+
# (preview_artifacts, routine_confirmations, post_action_reports,
|
|
372
|
+
# intent_announcements) were retired on 2026-10-09 with the terse default
|
|
373
|
+
# as fixed behavior.
|
|
431
374
|
# See agents/roadmaps/road-to-token-frugality.md for the full rationale
|
|
432
375
|
# and the contexts/contracts/frugality-charter.md for the writer-side
|
|
433
376
|
# standard.
|
|
434
377
|
verbosity:
|
|
435
|
-
# Show generated commit messages, PR titles/bodies, branch names
|
|
436
|
-
# before acting. false = use generated content directly.
|
|
437
|
-
preview_artifacts: false
|
|
438
|
-
|
|
439
|
-
# Confirmation prompts for routine workflow steps when there is
|
|
440
|
-
# one obvious answer ("looks good โ commit?"). Iron-Law gates
|
|
441
|
-
# (commit-policy, scope-control git-ops, non-destructive) ALWAYS
|
|
442
|
-
# ask regardless of this flag.
|
|
443
|
-
routine_confirmations: false
|
|
444
|
-
|
|
445
378
|
# Offer "run AI Council on this?" inside delivery commands
|
|
446
379
|
# (/feature-plan, /review-changes, /roadmap-create). Council
|
|
447
380
|
# commands themselves (/council, /create-pr โ already excluded)
|
|
448
381
|
# are unaffected.
|
|
449
382
|
offer_council_in_delivery: false
|
|
450
383
|
|
|
451
|
-
# Multi-line status / summary blocks after a successful action.
|
|
452
|
-
# off | minimal | full โ default minimal (one-line confirmation).
|
|
453
|
-
post_action_reports: minimal
|
|
454
|
-
|
|
455
|
-
# Intent announcements ("Let me checkโฆ", "Now I willโฆ", "Found
|
|
456
|
-
# it") in skill bodies. false = act and emit the result.
|
|
457
|
-
intent_announcements: false
|
|
458
|
-
|
|
459
384
|
# Script stdout chatter from `scripts/*.ts`, `scripts/*.sh`, and
|
|
460
385
|
# `.augment/scripts/`. Read by the helper module
|
|
461
386
|
# `scripts/_lib/script_output.ts`.
|
|
@@ -473,19 +398,6 @@ verbosity:
|
|
|
473
398
|
# safe task per Phase 10.3.
|
|
474
399
|
taskfile_command_echo: false
|
|
475
400
|
|
|
476
|
-
# --- Telegraph condensation (output-side) ---
|
|
477
|
-
#
|
|
478
|
-
# One lever, deliberately: whether the telegraph-speak rule ships at all.
|
|
479
|
-
# The rule body states its own grammar scope โ which carve-outs (numbered
|
|
480
|
-
# options, Iron-Law literals, code, paths) stay full prose โ so there is no
|
|
481
|
-
# separate scope key to pin.
|
|
482
|
-
telegraph:
|
|
483
|
-
# speak: false = DORMANT (the shipped default). The rule is omitted from
|
|
484
|
-
# dist/router.json entirely, so its body never reaches a host. That
|
|
485
|
-
# omission is what stops the cost. Set true only after an output-side
|
|
486
|
-
# bench clears the kill-criterion bar.
|
|
487
|
-
speak: false
|
|
488
|
-
|
|
489
401
|
telemetry:
|
|
490
402
|
artifact_engagement:
|
|
491
403
|
# Master switch. `false` (default) produces zero file IO and zero
|
|
@@ -612,11 +524,7 @@ the canonical narrative lives in
|
|
|
612
524
|
| `personal.open_edited_files` | `true`, `false` | `false` | Auto-open edited files in the IDE after edits |
|
|
613
525
|
| `personal.canary_name` | first name | _(empty)_ | Per-project OVERRIDE of the name the agent addresses the user with (session-canary). The name itself lives user-globally: `identity.name` in the wizard's `settings/.agent-user.yml`, fallback `personal.canary_name` in the user-global settings. See `rules/session-canary.md`. |
|
|
614
526
|
| `personal.rtk_installed` | `true`, `false` | `false` | Whether rtk (Rust Token Killer) is installed. Detected and set by `/onboard`. |
|
|
615
|
-
| `personal.minimal_output` | `true`, `false` | `true` | When `true`: short bullet points during work, concise summary at end. When `false`: verbose explanations. |
|
|
616
|
-
| `personal.play_by_play` | `true`, `false` | `false` | When `true`: share intermediate findings during investigation. When `false`: work silently, report only the conclusion. |
|
|
617
|
-
| `personal.pr_comment_bot_icon` | `true`, `false` | `false` | Prefix PR comment replies with ๐ค to indicate bot-authored replies. Personal preference โ each developer decides. |
|
|
618
527
|
| `personal.autonomy` | `on`, `off`, `auto` | `auto` | Suppress trivial workflow questions and act on the obvious next step. `auto` (default) defaults to `off` but flips to `on` after a prose opt-in like "arbeite selbststรคndig". `on` suppresses trivial questions unconditionally. `off` is the legacy ask-everything mode. Blocking decisions (security, scope expansion, push/merge/branch/PR/tag) are never suppressed. See `rules/autonomous-execution.md`. |
|
|
619
|
-
| `project.pr_template` | file path | `.github/pull_request_template.md` | Path to PR template file. Read this instead of searching for it. |
|
|
620
528
|
| `project.upstream_repo` | `org/repo` | _(empty)_ | Target repository for universal improvement PRs (e.g., `org/agent-config`). |
|
|
621
529
|
| `project.improvement_pr_branch_prefix` | string | `improve/agent-` | Branch prefix for agent improvement PRs. |
|
|
622
530
|
| `github.pr_reply_method` | `replies_endpoint`, `create_review_comment`, `auto` | `create_review_comment` | GitHub API method for replying to PR review comments. `auto` detects on first use. |
|
|
@@ -625,12 +533,10 @@ the canonical narrative lives in
|
|
|
625
533
|
| `chat_history.enabled` | `true`, `false` | `true` | Persist chat events to `agents/runtime/.agent-chat-history` (JSONL) for crash recovery. |
|
|
626
534
|
| `chat_history.frequency` | `per_turn`, `per_phase`, `per_tool` | per profile | Logging granularity. Defaults: `minimal`โ`per_turn`, `balanced`โ`per_phase`, `full`โ`per_tool`. |
|
|
627
535
|
| `chat_history.text_limits.{user,agent,tool,phase}` | integer (chars) | `user=0`, `agent=5000`, `tool=200`, `phase=200` | Per-entry-type text-length cap. `0` = verbatim, no slice. `N > 0` = collapse whitespace, slice to N chars, append `" โฆ [+K chars]"` so the log self-reports truncation. Defaults match `DEFAULT_TEXT_LIMITS` in `scripts/chat_history.ts`. |
|
|
628
|
-
| `hooks.concern_budget.
|
|
536
|
+
| `hooks.concern_budget.tier1_concerns` | list | `[]` | Concern budget gate for the hook dispatcher (`lint_hook_concern_budget`): restricts `fail_closed: true` to this allowlist. The per-cell cap (8) is fixed and the gate is warn-only unless run with `--strict`. |
|
|
629
537
|
| `hooks.injection_scan.enabled` | `true`, `false` | `false` | PostToolUse prompt-injection scanner: scans tool output for injection signatures and warns in context (exit 2) โ never blocks. |
|
|
630
538
|
| `hooks.rtk_wrap.enabled` | `true`, `false` | `false` | PreToolUse RTK-wrap nudge: when `rtk` is on PATH, warns (exit 2, never blocks) to re-run a verbose CLI command wrapped with rtk. |
|
|
631
539
|
| `hooks.design_slop.enabled` | `true`, `false` | `false` | PreToolUse anti-slop nudge: runs the `lint_design_slop` registry against about-to-be-written UI content and warns (exit 2, never blocks) on P0/P1 aesthetic tells. |
|
|
632
|
-
| `pipelines.skill_improvement` | `true`, `false` | `true` | When `true`: propose learning capture after meaningful tasks. When `false`: silent. Included in every profile except `custom`. |
|
|
633
|
-
| `roadmap.skip_pre_run_gate` | `true`, `false` | `true` | When `true` (default): `/roadmap:process-step\|phase\|full` skips the interactive pre-run summary and starts the loop immediately โ the resolved roadmap, cadence, and council are surfaced inline so an unwanted pick can still be aborted. When `false`: the loop shows the pre-run summary with numbered options (Go / Different roadmap / Different scope / Toggle council / Abort) and waits. The gate is always shown โ regardless of this flag โ when the roadmap is ambiguous (multiple active, none named) or a scope / cadence conflict has no sensible default. |
|
|
634
540
|
| `roadmap.quality_cadence` | `end_of_roadmap`, `per_phase`, `per_step` | `end_of_roadmap` | When `/roadmap:process-step|phase|full` runs the project's quality pipeline โ only relevant when `quality.local_auto_run` is `true`; when it is `false` (the default) local pipeline runs are suppressed at every cadence and remote CI is the gate. Default skips per-step / per-phase runs and gates only the final archival. `per_phase` runs once after every phase; `per_step` is the legacy verbose mode. Step checkboxes and the dashboard are always updated regardless. |
|
|
635
541
|
| `quality.local_auto_run` | `true`, `false` | `false` | When `false` (default): agent NEVER runs the project's quality pipeline (`task ci`, `make test`, `npm run check`, PHPStan, ECS, Rector, test suites) proactively โ and does not ask. The user runs quality tools manually; remote CI is the authoritative gate. The agent runs one only on (1) an explicit ask this turn, (2) a concrete CI failure (run exactly that failing check), or (3) the new-gate carve-out. When `true`: opt-in legacy โ agent runs the pipeline autonomously when work is ready for verification. **Carve-out**: NEW CI gates / smoke tests / test files MUST run locally regardless of this flag โ without execution the new gate is unverified evidence. Iron Law `verify-before-complete` still applies; suppressed runs are surfaced ("quality gates delegated to remote CI"), never claimed as passing. |
|
|
636
542
|
| `subagents.implementer_model` | model alias or empty | _(empty)_ | Model for implementer subagents. Empty = same tier as session model. See [subagent-configuration](../contexts/subagent-configuration.md). |
|
|
@@ -641,23 +547,11 @@ the canonical narrative lives in
|
|
|
641
547
|
| `personas.override` | list of persona ids | `[]` | Developer-local override of the team default lens cast (not in the shipped personal template โ add the block when needed). Empty = inherit `personas.default` from `.agent-project-settings.yml`. See [`layered-settings`](../guidelines/agent-infra/layered-settings.md). |
|
|
642
548
|
| `personas.ignore` | list of persona ids | `[]` | Persona ids dropped from the default cast locally. Ignored personas stay invokable via `--personas=<id>`. |
|
|
643
549
|
| `onboarding.onboarded` | `true`, `false` | `false` | Whether `/onboard` has run on this project. The `onboarding-gate` rule prompts for `/onboard` when this is `false`. Missing entirely = legacy project, treated as onboarded. |
|
|
644
|
-
| `commands.suggestion.enabled` | `true`, `false` | `true` | Master switch for the command-suggestion layer. `false` = the layer is silent; explicit `/commands` still work. See `rules/command-suggestion-policy.md`. |
|
|
645
|
-
| `commands.suggestion.confidence_floor` | `0.0`โ`1.0` | `0.6` | Minimum match score before a suggestion surfaces. Per-command frontmatter (`suggestion.confidence_floor`) overrides this global floor. |
|
|
646
|
-
| `commands.suggestion.cooldown_seconds` | integer | `600` | Cooldown between re-suggestions of the same `(command, evidence)` pair. `600` = 10m. |
|
|
647
|
-
| `commands.suggestion.max_options` | integer | `4` | Max number of command suggestions before the always-present "run as-is" option (total rendered = `max_options + 1`). |
|
|
648
550
|
| `commands.suggestion.blocklist` | list of command names | `[]` | Commands that never appear as a suggestion. They still work when typed explicitly. |
|
|
649
551
|
| `commands.create_pr.preview_description` | `true`, `false` | `false` | When `false`: `/create-pr` skips the title/body preview + adjust loop and uses the generated content directly. Saves agent tokens. When `true`: show title and body before creating and ask for adjustments. `/create-pr:description-only` always previews regardless of this setting. |
|
|
650
552
|
| `commands.create_pr.detail_level` | `min`, `med`, `max` | `min` | Verbosity tier of the PR Description body. `min` = title + 2-3 sentence what/why/impact + ticket; `med` = + grouped changes + tests note; `max` = + how-to-test + edge cases + reviewer guidance. Critical info (breaking / migration / security / rollback) is included at every tier. |
|
|
651
|
-
| `commands.create_pr.api_examples` | `true`, `false` | `true` | Add a grounded JSON example for API-endpoint changes; `true` includes one only from a real source (DTO/OpenAPI/fixture/probe), else a pointer, never invented; `false` = never. |
|
|
652
553
|
| `commands.create_pr.screenshots` | `true`, `false` | `false` | Capability-gated frontend screenshots. `true` attempts capture when browser/preview tooling is present; notes-and-skips otherwise, never blocks the PR. Before/after is best-effort. |
|
|
653
|
-
| `commands.create_pr.ui_paths` | glob list | `[]` | Optional globs pinning frontend detection; empty = light heuristic, fail-open. |
|
|
654
|
-
| `commands.create_pr.api_paths` | glob list | `[]` | Optional globs pinning API-endpoint detection; empty = light heuristic, fail-open. |
|
|
655
|
-
| `verbosity.preview_artifacts` | `true`, `false` | `false` | Show generated commit messages, PR titles/bodies, branch names before acting. `false` = use generated content directly. See the token-frugality plate under `agents/roadmaps/` (Phase 2/3). |
|
|
656
|
-
| `verbosity.routine_confirmations` | `true`, `false` | `false` | Confirmation prompts for routine workflow steps when there is one obvious answer ("looks good โ commit?"). Iron-Law gates (`commit-policy`, `scope-control` git-ops, `non-destructive-by-default`) ALWAYS ask regardless. |
|
|
657
554
|
| `verbosity.offer_council_in_delivery` | `true`, `false` | `false` | Offer "run AI Council on this?" inside delivery commands (`/feature-plan`, `/review-changes`). Council commands themselves are unaffected. `/roadmap:create` no longer reads it โ under a mission the council is a step, resolved from `agent-config council:status`, never an offer. |
|
|
658
|
-
| `verbosity.post_action_reports` | `off`, `minimal`, `full` | `minimal` | Multi-line status / summary blocks after a successful action. `off` = no report; `minimal` = one-line confirmation; `full` = bullet list. |
|
|
659
|
-
| `verbosity.intent_announcements` | `true`, `false` | `false` | Intent announcements ("Let me checkโฆ", "Now I willโฆ", "Found it") in skill bodies. `false` = act and emit the result. |
|
|
660
|
-
| `telegraph.speak` | `true`, `false` | `false` | Whether the telegraph-speak rule ships at all. `false` (default) = dormant: the projector omits the rule from `dist/router.json`, so its body never reaches a host. The rule body states its own grammar scope and carve-outs (numbered options, Iron-Law literals, code, paths), so this is the only lever. |
|
|
661
555
|
| `telemetry.artifact_engagement.enabled` | `true`, `false` | `false` | Master switch for the artefact engagement log. Not in the shipped template โ a missing `telemetry:` section means disabled (the recording rule no-ops). Default-off; zero file IO and zero token cost when `false`. Maintainer-targeted; consumers leave it off. |
|
|
662
556
|
| `telemetry.artifact_engagement.granularity` | `task`, `phase-step`, `tool-call` | `task` | Boundary at which events are recorded. `tool-call` is expensive โ opt-in only. |
|
|
663
557
|
| `telemetry.artifact_engagement.record.consulted` | `true`, `false` | `true` | When `true`: record artefacts loaded into context. |
|
|
@@ -675,11 +569,6 @@ the canonical narrative lives in
|
|
|
675
569
|
| `linked_projects_max_files` | integer | `20000` | File-count ceiling above which a detected sibling is flagged `large` (awareness only). Never excludes. |
|
|
676
570
|
| `knowledge.global_sharing.enabled` | `true`, `false` | `true` | **User-global** (keep in `~/.event4u/agent-config/agent-settings.yml`). Master switch for the file-first global knowledge-card store (ADR-100; default-ON per ADR-119, the council-validated bounded-downside flip superseding ADR-103 โ adversarially spot-checked redaction incl. hidden-unicode hardening, narrowest tier default, pre-registered demotion trigger). `false` fully no-ops the layer (single-key revert); v1 project-local cards unaffected. |
|
|
677
571
|
| `knowledge.global_sharing.allowed_tiers` | list of `public`,`vendor`,`proprietary` | `[public]` | Origin tiers auto-eligible to cross a project boundary. Narrowest default per ADR-119; `vendor` is a deliberate opt-in widening. `proprietary` is manual-only regardless (the gate hard-codes it). |
|
|
678
|
-
| `knowledge.global_sharing.redaction.enabled` | `true`, `false` | `true` | Run the privacy-floor + source-confidentiality scan before any card goes global. |
|
|
679
|
-
| `knowledge.global_sharing.redaction.halt_on_trigger` | `true`, `false` | `true` | Halt-and-surface on a confidential-pattern hit; never silent-share, never auto-rewrite. |
|
|
680
|
-
| `knowledge.global_sharing.auto_promote_threshold` | integer | `2` | Distinct-repo count that triggers a promotion **suggestion** (never a silent write). |
|
|
681
|
-
| `knowledge.global_sharing.freshness.hypothesis_after_days` | integer | `90` | Global card older than this is lead-only (positive structure re-confirmed before use). |
|
|
682
|
-
| `knowledge.global_sharing.freshness.stale_after_days` | integer | `180` | Global card older than this is skipped until re-verified. |
|
|
683
572
|
|
|
684
573
|
### Rename-Map (migration)
|
|
685
574
|
|
|
@@ -693,15 +582,10 @@ Applied automatically when `scripts/install` finds a legacy `.agent-settings`
|
|
|
693
582
|
| `open_edited_files` | `personal.open_edited_files` |
|
|
694
583
|
| `user_name` | `personal.user_name` |
|
|
695
584
|
| `rtk_installed` | `personal.rtk_installed` |
|
|
696
|
-
| `minimal_output` | `personal.minimal_output` |
|
|
697
|
-
| `play_by_play` | `personal.play_by_play` |
|
|
698
|
-
| `pr_comment_bot_icon` | `personal.pr_comment_bot_icon` |
|
|
699
|
-
| `pr_template` | `project.pr_template` |
|
|
700
585
|
| `upstream_repo` | `project.upstream_repo` |
|
|
701
586
|
| `improvement_pr_branch_prefix` | `project.improvement_pr_branch_prefix` |
|
|
702
587
|
| `github_pr_reply_method` | `github.pr_reply_method` |
|
|
703
588
|
| `eloquent_access_style` | `eloquent.access_style` |
|
|
704
|
-
| `skill_improvement_pipeline` | `pipelines.skill_improvement` |
|
|
705
589
|
| `subagent_implementer_model` | `subagents.implementer_model` |
|
|
706
590
|
| `subagent_judge_model` | `subagents.judge_model` |
|
|
707
591
|
| `subagent_max_parallel` | `subagents.max_parallel` |
|
|
@@ -709,6 +593,40 @@ Applied automatically when `scripts/install` finds a legacy `.agent-settings`
|
|
|
709
593
|
Unknown keys in the legacy file are preserved under a `_legacy:` section
|
|
710
594
|
so nothing is silently dropped; the migration log points them out.
|
|
711
595
|
|
|
596
|
+
### Retired keys
|
|
597
|
+
|
|
598
|
+
These keys were removed because their shipped default is the only behavior
|
|
599
|
+
the package supports; the behavior they described is unchanged. A leftover
|
|
600
|
+
value in an older `.agent-settings.yml` is ignored with one stderr line per key
|
|
601
|
+
(`<key> was removed (<what decides instead>); ignored.`) โ the registry is
|
|
602
|
+
`REMOVED_KEYS` in `scripts/_lib/settings_removed_keys.ts`. Delete the line to
|
|
603
|
+
silence it.
|
|
604
|
+
|
|
605
|
+
| Retired 2026-10-09 | Fixed behavior |
|
|
606
|
+
|---|---|
|
|
607
|
+
| `personal.minimal_output`, `personal.play_by_play`, `verbosity.preview_artifacts`, `verbosity.routine_confirmations`, `verbosity.post_action_reports`, `verbosity.intent_announcements` | terse replies, no narration, no preview, no routine confirmation, one-line post-action report (`direct-answers` Iron Law 3) |
|
|
608
|
+
| `personal.pr_comment_bot_icon` | no ๐ค prefix (`no-decorative-emojis-in-git-surfaces`) |
|
|
609
|
+
| `telegraph.speak` | the telegraph-speak rule does not ship (bench verdict, ADR telegraph/0002) |
|
|
610
|
+
| `tokens.rich_skills` | `token_budget_class: rich` skills load in full (`token-budget-discipline`) |
|
|
611
|
+
| `reasoning.auto_gate`, `reasoning.components.*` (nine switches) | every RDP component follows the gate's task and host signals (`rdp-gate`); `reasoning.enabled` stays the hard off |
|
|
612
|
+
| `roadmap.skip_pre_run_gate` | no pre-run confirmation; only an ambiguous roadmap or an unresolvable conflict shows the gate |
|
|
613
|
+
| `roadmap.dashboard_regen_cadence` | dashboard regen every 5th closed step, at phase boundaries, at reply end and on any file-shape touch |
|
|
614
|
+
| `commands.auto_detect` | orchestrators auto-detect; opt one out with `auto_detect: false` in its front-matter or one run with `--no-auto-detect` |
|
|
615
|
+
| `commands.suggestion.enabled`, `.confidence_floor`, `.cooldown_seconds`, `.max_options` | suggestion layer always on, floor 0.6, cooldown 600 s, at most 4 options; `blocklist` and per-command frontmatter still apply |
|
|
616
|
+
| `commands.create_pr.api_examples`, `.ui_paths`, `.api_paths` | grounded API examples always added; frontend / API detection by the light heuristic |
|
|
617
|
+
| `memory.cadence` | the ๐ง memory line renders whenever a memory type was asked; `memory.visibility: off` still silences it |
|
|
618
|
+
| `memory.review_threshold` | `/memory load` previews intake signals above a fixed 10 |
|
|
619
|
+
| `knowledge.global_sharing.redaction.*`, `.auto_promote_threshold`, `.freshness.*` | redaction always runs and halts on a hit; promotion suggested at 2 repos; lead-only after 90 days, skipped after 180 |
|
|
620
|
+
| `hooks.concern_budget.max_per_event`, `.hard_fail` | at most 8 concerns per (platform, event) cell; warn-only unless the gate runs with `--strict` |
|
|
621
|
+
| `decision_engine.surface_traces` | no per-phase decision-trace file (accepted in the `decision_engine:` block and ignored) |
|
|
622
|
+
| `decision_engine.on_block_fallback` | an `on_block: ask` that times out stops (accepted and ignored) |
|
|
623
|
+
| `explain.enable_last` | `agent-config explain last` always renders the trace |
|
|
624
|
+
| `project.pr_template` | `/create-pr` reads `.github/pull_request_template.md` |
|
|
625
|
+
| `pipelines.skill_improvement` | post-task learning capture is always proposed (`skill-improvement-trigger`) |
|
|
626
|
+
| `consistency.cross_source` | cross-source discrepancies are always surfaced and asked, batched into one question |
|
|
627
|
+
| `subagents.downshift` | delegable sub-tasks always run on the lowest-capable tier they declare |
|
|
628
|
+
| `ai_team.suppress_setup_hint` | the one-line team-mode setup hint is always shown (accepted and ignored in the `ai_team:` block) |
|
|
629
|
+
|
|
712
630
|
## Cost profiles
|
|
713
631
|
|
|
714
632
|
The `rule_loading_tier` setting selects which agent surfaces are active. See
|
|
@@ -721,10 +639,9 @@ The `rule_loading_tier` setting selects which agent surfaces are active. See
|
|
|
721
639
|
| `full` | `balanced` + Tool adapters (GitHub / Jira, read-only, opt-in). |
|
|
722
640
|
| `custom` | Ignore profile โ every matrix value must be set explicitly. |
|
|
723
641
|
|
|
724
|
-
**Learning loop:**
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
settings file if you want a silent agent without touching the profile.
|
|
642
|
+
**Learning loop:** post-task learning capture runs in every profile via the
|
|
643
|
+
`skill-improvement-trigger` rule. It is a proposal the user confirms, not a
|
|
644
|
+
setting (`pipelines.skill_improvement` was retired on 2026-10-09).
|
|
728
645
|
|
|
729
646
|
Other per-feature toggles may be added in future releases; when they land,
|
|
730
647
|
they ship with a live consumer in code and get documented here, not before.
|
|
@@ -7,8 +7,8 @@
|
|
|
7
7
|
# Precedence (lowest โ highest):
|
|
8
8
|
# 1. Package defaults (shipped by event4u/agent-config)
|
|
9
9
|
# 2. ~/.event4u/agent-config/agent-settings.yml โ user-global DX-comfort
|
|
10
|
-
# defaults (whitelist:
|
|
11
|
-
#
|
|
10
|
+
# defaults (whitelist: `MERGEABLE_KEYS` in scripts/_lib/agent_settings.ts,
|
|
11
|
+
# e.g. name, ide, rule_loading_tier, personal.autonomy). Created on opt-in via
|
|
12
12
|
# /onboard; project-local files always win. Legacy
|
|
13
13
|
# ~/.config/agent-config/agent-settings.yml is read as a fallback.
|
|
14
14
|
# 3. This file (.agent-project-settings.yml) โ team defaults
|
|
@@ -39,7 +39,7 @@ schema_version: 1
|
|
|
39
39
|
# CI guard: a release bump of `package.json` must update this value
|
|
40
40
|
# in lockstep โ see scripts/check_template_pin_drift.ts (road-to-
|
|
41
41
|
# portable-runtime-and-update-check P3.3).
|
|
42
|
-
agent_config_version: "16.
|
|
42
|
+
agent_config_version: "16.4.0"
|
|
43
43
|
|
|
44
44
|
# --- Project identity ---
|
|
45
45
|
project:
|
|
@@ -74,8 +74,8 @@ suggestion:
|
|
|
74
74
|
[Frugality Charter](../contexts/contracts/frugality-charter.md):
|
|
75
75
|
no preview-then-confirm pair, no "Ready to proceed?" gate, no
|
|
76
76
|
numbered options unless options differ in *consequence* (per
|
|
77
|
-
`no-cheap-questions ยง Pre-Send Self-Check`).
|
|
78
|
-
|
|
77
|
+
`no-cheap-questions ยง Pre-Send Self-Check`). A routine step with one
|
|
78
|
+
obvious answer is never confirmed.
|
|
79
79
|
|
|
80
80
|
Only emit a numbered-options block when ALL of:
|
|
81
81
|
1. Two or more options carry distinct consequences (not sequencing/format),
|
|
@@ -335,7 +335,12 @@ that was never a judgement call.
|
|
|
335
335
|
same reply as the checkbox flip that cleared it, per
|
|
336
336
|
[`roadmap-progress-sync`](../rules/roadmap-progress-sync.md). A
|
|
337
337
|
step gated by a specific blocker may cross-reference it inline:
|
|
338
|
-
`- [ ] โฆ <!-- blocked-by: <blocker-id> -->`.
|
|
338
|
+
`- [ ] โฆ <!-- blocked-by: <blocker-id> -->`. A bare id resolves in the
|
|
339
|
+
same file only. A blocker declared in ANOTHER active roadmap or stub is
|
|
340
|
+
named `<!-- blocked-by: <roadmap-stem>#<blocker-id> -->`; a target found
|
|
341
|
+
only in `later/`, `archive/` or `skipped/` is not resolvable. The marker
|
|
342
|
+
must name an OPEN blocker โ once it resolves, remove the marker โ and
|
|
343
|
+
`lint_roadmap_blockers` reads it on a continuation line too.
|
|
339
344
|
|
|
340
345
|
**A blocker stops execution; a hold stops publication.** The two are not
|
|
341
346
|
interchangeable and never substitute for one another. A blocker says the work
|
|
@@ -207,7 +207,6 @@ export const MERGEABLE_KEYS: readonly string[] = [
|
|
|
207
207
|
// weak-host-lift-tiering + token-program-integration verdicts; ADR
|
|
208
208
|
// records the whitelist addition). Wins over rule_loading_tier.
|
|
209
209
|
'discipline_profile',
|
|
210
|
-
'memory.cadence',
|
|
211
210
|
'personal.bot_icon',
|
|
212
211
|
'personal.autonomy',
|
|
213
212
|
// Knowledge-card global cross-project sharing is a USER-GLOBAL setting
|
|
@@ -215,11 +214,6 @@ export const MERGEABLE_KEYS: readonly string[] = [
|
|
|
215
214
|
// ~/.event4u/agent-config/agent-settings.yml values are honoured.
|
|
216
215
|
'knowledge.global_sharing.enabled',
|
|
217
216
|
'knowledge.global_sharing.allowed_tiers',
|
|
218
|
-
'knowledge.global_sharing.redaction.enabled',
|
|
219
|
-
'knowledge.global_sharing.redaction.halt_on_trigger',
|
|
220
|
-
'knowledge.global_sharing.auto_promote_threshold',
|
|
221
|
-
'knowledge.global_sharing.freshness.hypothesis_after_days',
|
|
222
|
-
'knowledge.global_sharing.freshness.stale_after_days',
|
|
223
217
|
];
|
|
224
218
|
|
|
225
219
|
const _DEFAULTS: SettingsDict = {};
|
|
@@ -24,10 +24,13 @@
|
|
|
24
24
|
*
|
|
25
25
|
* Two floors, neither invented here:
|
|
26
26
|
*
|
|
27
|
-
* - **Ceiling** โ {@link SELF_FIX_CEILING} attempts per lane
|
|
28
|
-
*
|
|
29
|
-
*
|
|
30
|
-
*
|
|
27
|
+
* - **Ceiling** โ {@link SELF_FIX_CEILING} attempts per lane. This is the
|
|
28
|
+
* engine's own number, independent of the `autonomous-execution` rule's
|
|
29
|
+
* `execution.fix_loop_max` budget (now a default-10 ladder) โ a
|
|
30
|
+
* deterministic, critic-free retry on an already-known verdict has no
|
|
31
|
+
* judgement call for that ladder's escalation rungs to apply to. The
|
|
32
|
+
* counters below are per-lane rather than per-run; each lane is its own
|
|
33
|
+
* target.
|
|
31
34
|
* - **No-progress** โ two consecutive attempts producing an identical verdict
|
|
32
35
|
* signature stop the loop immediately, budget remaining or not. This is the
|
|
33
36
|
* floor the `recursive-verification` skill already stated in prose ("two
|
|
@@ -47,9 +50,10 @@ import { type Any, Outcome, StepResult, agent_directive } from '../../delivery_s
|
|
|
47
50
|
/**
|
|
48
51
|
* Attempts allowed per lane before the loop exits PARTIAL.
|
|
49
52
|
*
|
|
50
|
-
*
|
|
51
|
-
*
|
|
52
|
-
*
|
|
53
|
+
* The engine's own number โ not borrowed from `autonomous-execution`'s
|
|
54
|
+
* `execution.fix_loop_max` budget, which now defaults to 10 with a
|
|
55
|
+
* strategy-shift ladder. A deterministic, critic-free retry on an
|
|
56
|
+
* already-known verdict has no judgement call that ladder's rungs apply to.
|
|
53
57
|
*/
|
|
54
58
|
export const SELF_FIX_CEILING = 3;
|
|
55
59
|
|