@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
|
@@ -252,7 +252,7 @@ Declared by `produces_roadmap: true` in the frontmatter and enforced by
|
|
|
252
252
|
`lint_roadmap_producers`: a producer that does not end here reds CI.
|
|
253
253
|
|
|
254
254
|
Read `planning.closure_pass` (missing = `true`). When active, run
|
|
255
|
-
|
|
255
|
+
`/challenge-me closure` on the
|
|
256
256
|
roadmap this command just produced, before handing back:
|
|
257
257
|
|
|
258
258
|
```bash
|
|
@@ -96,18 +96,32 @@ branch** — that is what makes the deliverable remote. Then:
|
|
|
96
96
|
1. Commit the fix (chunked, the agent picks the split per
|
|
97
97
|
[`commit-policy`](../../../rules/commit-policy.md) — never ask how).
|
|
98
98
|
2. Update the branch against its PR base first:
|
|
99
|
-
|
|
100
|
-
the
|
|
99
|
+
`agent-config git:convention sync --base origin/<base>`, `<base>` being the
|
|
100
|
+
`baseRefName` of the branch's `OPEN` pull request (`gh pr view --json
|
|
101
|
+
state,baseRefName`; a closed or merged one does not count) — otherwise, and
|
|
102
|
+
without `--base`, the target is the default branch, wrong for any other base — then regenerate any derived files
|
|
103
|
+
the merge touched (`task sync && task generate-tools`). Under
|
|
104
|
+
`git.update_strategy: rebase` the script refuses a behind branch (exit 3); rebase on the user's request
|
|
105
|
+
instead ([`branch-update`](../../../../skills/git-workflow/references/branch-update.md)),
|
|
106
|
+
never merge the base in. An exit 3 whose line reads `TARGET_POLICY_STALE`
|
|
107
|
+
is not this branch's update: the branch is current with the pull request's
|
|
108
|
+
non-default target, and that target is itself behind the default branch its
|
|
109
|
+
convergence policy requires, so a rebase cannot clear it — report it as the target's update and leave the branch. On exit 4 the strategy could not be read — a
|
|
110
|
+
settings file that does not parse, a value outside the schema, or a value
|
|
111
|
+
only a user-global file sets; the line names the reason code and the file.
|
|
112
|
+
Nothing was merged: stop, report that line, and do not push until the file
|
|
113
|
+
is fixed. A PR left behind its
|
|
101
114
|
base accumulates conflicts for the moment someone wants to merge it, and a
|
|
102
115
|
push against a moved base is rejected — both cost a round trip that this one
|
|
103
116
|
call prevents.
|
|
104
117
|
3. Push. The instruction named it; do not raise a separate ask
|
|
105
|
-
(
|
|
118
|
+
(`/create-pr` § 4d item 5).
|
|
106
119
|
4. Re-verify remotely: `./scripts-run src/scripts/check_pr_ci_current`, then
|
|
107
120
|
settle the check set on the new head. Report the *remote* verdict, never the
|
|
108
121
|
local one.
|
|
109
122
|
|
|
110
|
-
Bounded by
|
|
123
|
+
Bounded by the `execution.fix_loop_max` budget (default 10) and its ladder,
|
|
124
|
+
per failing target ([`autonomous-execution`](../../../rules/autonomous-execution.md)).
|
|
111
125
|
|
|
112
126
|
### Rules
|
|
113
127
|
|
|
@@ -62,8 +62,15 @@ Stop and report — do not proceed to step 2 — when any holds:
|
|
|
62
62
|
Run `## Procedure: Establish the house convention` from
|
|
63
63
|
[`conventional-commits-writing`](../../../skills/conventional-commits-writing/SKILL.md)
|
|
64
64
|
verbatim: tier-1 sources first (opened and read, never taken from a grep hit),
|
|
65
|
-
then the capped-weighted consensus pass with bots, merges, reverts and release
|
|
66
|
-
automation excluded.
|
|
65
|
+
then the capped-weighted consensus pass — `agent-config git:convention measure` — with bots, merges, reverts and release
|
|
66
|
+
automation excluded. When that tier-1 search found no configured source, a
|
|
67
|
+
declared `git.commit_format: ticket-conventional` (the skill's tier 1b; `ticket-scope`
|
|
68
|
+
is the template default and declares nothing) is the target: report it as
|
|
69
|
+
`Declared : git.commit_format: …`, skip step 3's style question, and keep the
|
|
70
|
+
other authorisations. A configured source always outranks it — including step
|
|
71
|
+
3's tier-1 veto.
|
|
72
|
+
|
|
73
|
+
Ticket reading, placement and precedence: [`commit-subject`](../../../../skills/git-workflow/references/commit-subject.md).
|
|
67
74
|
|
|
68
75
|
Report what it found, in one block, before offering anything:
|
|
69
76
|
|
|
@@ -190,7 +197,7 @@ Then, in one block, state:
|
|
|
190
197
|
for a branch a teammate already has;
|
|
191
198
|
- whether the range crosses the **default branch** — rewriting merged history
|
|
192
199
|
is a different order of disruption and gets its own sentence;
|
|
193
|
-
- the
|
|
200
|
+
- the recovery ref you are about to write.
|
|
194
201
|
|
|
195
202
|
**Ask for the rewrite and, when the range is already pushed, the force-push in
|
|
196
203
|
the same block.** [`git-history-discipline`](../../../rules/git-history-discipline.md)
|
|
@@ -207,10 +214,19 @@ Wait. Do not run anything in the turn you ask.
|
|
|
207
214
|
|
|
208
215
|
### 7. Rewrite
|
|
209
216
|
|
|
210
|
-
**7a.
|
|
217
|
+
**7a. Pin the published ref, keep the old head, and capture what the
|
|
218
|
+
verification will compare against.** When the range is already pushed, first
|
|
219
|
+
run the `resolve` block of
|
|
220
|
+
[`branch-update.md` § The rebase sequence](../../../../skills/git-workflow/references/branch-update.md#the-rebase-sequence)
|
|
221
|
+
to set `REMOTE` and `RB` — never `@{u}`, which is the base for a branch pushed
|
|
222
|
+
without `-u`. An unresolved target means no rewrite.
|
|
211
223
|
|
|
212
224
|
```bash
|
|
213
|
-
git
|
|
225
|
+
PUBLISHED=$(git ls-remote "$REMOTE" "refs/heads/$RB") \
|
|
226
|
+
|| { echo "STOP: could not read $REMOTE/$RB — nothing was rewritten" >&2; exit 1; } # pushed range only
|
|
227
|
+
EXPECTED=$(cut -f1 <<<"$PUBLISHED")
|
|
228
|
+
SAVE="refs/agent-config/rewrites/$(date -u +%Y%m%dT%H%M%SZ)-msgfix/before"
|
|
229
|
+
git update-ref "$SAVE" HEAD
|
|
214
230
|
git rev-list --count HEAD > /tmp/precount.txt
|
|
215
231
|
git log ${BASE:+$BASE..}HEAD --pretty=format:'%aN%x09%aE%x09%ad%x09%s' > /tmp/preplan.txt
|
|
216
232
|
```
|
|
@@ -229,17 +245,21 @@ bracketed form:
|
|
|
229
245
|
```bash
|
|
230
246
|
git filter-repo --force --refs "${BASE:+$BASE..}HEAD" \
|
|
231
247
|
--commit-callback '
|
|
232
|
-
import re
|
|
248
|
+
import json, re, subprocess
|
|
233
249
|
ME = {b"me@example.com"} # the step-5 address set, bare, no <>
|
|
234
|
-
PAT = re.compile(rb"^\[?([A-Z][A-Z0-9]+-[0-9]+)\]?[: ]\s*(.+)$")
|
|
235
250
|
if len(commit.parents) > 1:
|
|
236
251
|
return
|
|
237
252
|
if commit.author_email not in ME:
|
|
238
253
|
return
|
|
239
254
|
subject, sep, body = commit.message.partition(b"\n")
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
255
|
+
out = subprocess.run(["agent-config", "git:convention", "ticket", subject.decode(), "--json"],
|
|
256
|
+
capture_output=True, text=True, check=True).stdout
|
|
257
|
+
ticket = json.loads(out)["ticket"]
|
|
258
|
+
if ticket is None:
|
|
259
|
+
return
|
|
260
|
+
lead = re.compile(rb"^\[?" + re.escape(ticket.encode()) + rb"\]?[: ]\s*")
|
|
261
|
+
if lead.match(subject):
|
|
262
|
+
commit.message = b"[" + ticket.encode() + b"] " + lead.sub(b"", subject, count=1) + sep + body
|
|
243
263
|
'
|
|
244
264
|
```
|
|
245
265
|
|
|
@@ -254,10 +274,12 @@ rewriting nothing:
|
|
|
254
274
|
cross-wire precisely because they need opposite forms.
|
|
255
275
|
- **Merges are skipped in the callback too**, or the rewrite touches commits the
|
|
256
276
|
step-6 table did not list.
|
|
257
|
-
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
277
|
+
- **The ticket comes from `agent-config git:convention ticket`**, never a regex
|
|
278
|
+
literal, so the rewrite reads tickets exactly as `/commit` does — the verb must
|
|
279
|
+
be on `PATH`, and `check=True` makes a missing one fail loudly. A callback that
|
|
280
|
+
references a helper nothing defines is not a callback that failed loudly —
|
|
281
|
+
Python evaluates the name only if control reaches it, so a wrong author filter
|
|
282
|
+
hides the missing helper completely.
|
|
261
283
|
|
|
262
284
|
`--refs` implies partial mode, which is what keeps the `origin` remote that
|
|
263
285
|
plain `filter-repo` strips as a safety measure; `--partial` is not needed
|
|
@@ -286,7 +308,7 @@ not exit that state.
|
|
|
286
308
|
|
|
287
309
|
```bash
|
|
288
310
|
git rev-list --count HEAD # equals /tmp/precount.txt
|
|
289
|
-
git diff
|
|
311
|
+
git diff "$SAVE" HEAD --stat # MUST be empty
|
|
290
312
|
git log ${BASE:+$BASE..}HEAD --pretty=format:'%aN%x09%aE%x09%ad%x09%s' > /tmp/postplan.txt
|
|
291
313
|
diff /tmp/preplan.txt /tmp/postplan.txt
|
|
292
314
|
```
|
|
@@ -304,21 +326,24 @@ The authorisation was taken in step 6, together with the rewrite's. Push in this
|
|
|
304
326
|
turn:
|
|
305
327
|
|
|
306
328
|
```bash
|
|
307
|
-
git push --force-with-lease
|
|
308
|
-
git
|
|
329
|
+
git push --force-with-lease="refs/heads/$RB:$EXPECTED" "$REMOTE" "HEAD:refs/heads/$RB"
|
|
330
|
+
[ "$(git ls-remote "$REMOTE" "refs/heads/$RB" | cut -f1)" = "$(git rev-parse HEAD)" ]
|
|
309
331
|
```
|
|
310
332
|
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
333
|
+
The lease carries the SHA pinned in 7a, never a bare `--force-with-lease`, and
|
|
334
|
+
never `--force`; a rejected lease is a stop — refetch and report. Leave the
|
|
335
|
+
recovery ref in place: it lives outside `refs/tags/`, so `git push --tags`
|
|
336
|
+
cannot publish it. Tell the user its name, that recovery is
|
|
337
|
+
`git reset --keep <ref>` — plus a leased force-push, since the rewrite was
|
|
338
|
+
already pushed — and that `git update-ref -d <ref>` removes it.
|
|
314
339
|
|
|
315
340
|
### 9. Report
|
|
316
341
|
|
|
317
342
|
- Convention chosen, and how it was established (measured / user-supplied / tier-1).
|
|
318
343
|
- Range, author scope, commits rewritten vs unchanged.
|
|
319
344
|
- The `diff /tmp/preplan.txt /tmp/postplan.txt` result and the
|
|
320
|
-
`git diff <
|
|
321
|
-
- The
|
|
345
|
+
`git diff <recovery-ref> HEAD --stat` result, both quoted.
|
|
346
|
+
- The recovery ref and the one-line recovery command.
|
|
322
347
|
- Whether it was pushed, and to where.
|
|
323
348
|
|
|
324
349
|
## Do NOT
|
|
@@ -329,7 +354,7 @@ force-push, since the rewrite was already pushed.
|
|
|
329
354
|
instruction — and never by offering it as a menu option they did not raise.
|
|
330
355
|
- Do NOT compare `commit.author_email` against a bracketed address, or pass a
|
|
331
356
|
bare address to `--author`.
|
|
332
|
-
- Do NOT treat an empty `git diff <
|
|
357
|
+
- Do NOT treat an empty `git diff <recovery-ref> HEAD` as proof the rewrite happened.
|
|
333
358
|
- Do NOT use `git filter-branch`, bare `git push --force`, or `--no-verify`.
|
|
334
359
|
- Do NOT rewrite into a style the repo's own validator rejects.
|
|
335
360
|
- Do NOT let a chosen style carry an attribution trailer, a subject emoji, or
|
|
@@ -183,13 +183,10 @@ already live.
|
|
|
183
183
|
`"The fallback covers legacy data where getTime() returns a string."`
|
|
184
184
|
- Never start multiple replies with "Fixed". Mix it up: "Done", "Good catch", "Yep", etc.
|
|
185
185
|
|
|
186
|
-
###
|
|
186
|
+
### No bot icon prefix
|
|
187
187
|
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
bot-authored.
|
|
191
|
-
|
|
192
|
-
Example: `🤖 Good catch, fixed.`
|
|
188
|
+
Never prefix a reply with `🤖 ` — it is on the universal blacklist of
|
|
189
|
+
[`no-decorative-emojis-in-git-surfaces`](../../../rules/no-decorative-emojis-in-git-surfaces.md).
|
|
193
190
|
|
|
194
191
|
If `false` or `.agent-settings.yml` doesn't exist, do NOT add the prefix.
|
|
195
192
|
|
|
@@ -29,8 +29,8 @@ packs:
|
|
|
29
29
|
Accept one of five input paths:
|
|
30
30
|
|
|
31
31
|
1. **Explicit key** — `/implement-ticket PROJ-123`
|
|
32
|
-
2. **Branch detection** — no arg → `git
|
|
33
|
-
`
|
|
32
|
+
2. **Branch detection** — no arg → `agent-config git:convention ticket` on the
|
|
33
|
+
current branch ([`commit-subject`](../../../skills/git-workflow/references/commit-subject.md) § Reading the ticket)
|
|
34
34
|
3. **Pasted text** — markdown block under the command
|
|
35
35
|
4. **URL** — `/implement-ticket https://…/browse/PROJ-123`
|
|
36
36
|
5. **Local ticket bundle** — a path to a bundle ticket file,
|
|
@@ -131,7 +131,7 @@ On exit `1`, look at the first line after `[halt] outcome=… step=…`:
|
|
|
131
131
|
options verbatim, wait for the user, write their answer back onto the
|
|
132
132
|
matching state slice, then re-run the engine. Never guess.
|
|
133
133
|
|
|
134
|
-
A **cross-source discrepancy** discovered while planning or applying — ticket text contradicting an attached mockup, a spec silent on a clearly-needed behavior, or a spec-vs-codebase conflict (per [`cross-source-consistency`](../rules/cross-source-consistency.md)
|
|
134
|
+
A **cross-source discrepancy** discovered while planning or applying — ticket text contradicting an attached mockup, a spec silent on a clearly-needed behavior, or a spec-vs-codebase conflict (per [`cross-source-consistency`](../rules/cross-source-consistency.md)) — is a blocking user question, not a silent resolution: surface it as the `questions[0]` halt and wait, never expand scope on a plausible inference.
|
|
135
135
|
|
|
136
136
|
### 4. Directive mapping
|
|
137
137
|
|
|
@@ -213,7 +213,7 @@ Declared by `produces_roadmap: true` in the frontmatter and enforced by
|
|
|
213
213
|
`lint_roadmap_producers`: a producer that does not end here reds CI.
|
|
214
214
|
|
|
215
215
|
Read `planning.closure_pass` (missing = `true`). When active, run
|
|
216
|
-
|
|
216
|
+
`/challenge-me closure` on the
|
|
217
217
|
roadmap this command just produced, before handing back:
|
|
218
218
|
|
|
219
219
|
```bash
|
|
@@ -95,7 +95,7 @@ Declared by `produces_roadmap: true` in the frontmatter and enforced by
|
|
|
95
95
|
`lint_roadmap_producers`: a producer that does not end here reds CI.
|
|
96
96
|
|
|
97
97
|
Read `planning.closure_pass` (missing = `true`). When active, run
|
|
98
|
-
|
|
98
|
+
`/challenge-me closure` on the
|
|
99
99
|
roadmap this command just produced, before handing back:
|
|
100
100
|
|
|
101
101
|
```bash
|
|
@@ -121,22 +121,10 @@ link resolves. Broken link → block and ask the user to fix.
|
|
|
121
121
|
- Duplicate of an existing entry (step 2) — update instead.
|
|
122
122
|
- Missing `source:` — an entry without evidence cannot be reviewed.
|
|
123
123
|
|
|
124
|
-
## Output format
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
- `off` → emit nothing on success; surface gate failures only.
|
|
130
|
-
- `minimal` (default) → one line:
|
|
131
|
-
`✅ Added <type>/<id> (gate: PASS)`.
|
|
132
|
-
- `full` → multi-line block:
|
|
133
|
-
|
|
134
|
-
```
|
|
135
|
-
✅ Added <type>/<id> (confidence: <high|medium|low>)
|
|
136
|
-
Path: agents/memory/<type>.yml (or agents/memory/<type>/<hash>.yml)
|
|
137
|
-
Gate: scripts/check_memory.ts → PASS
|
|
138
|
-
Next: commit and link from the relevant skill/command.
|
|
139
|
-
```
|
|
124
|
+
## Output format
|
|
125
|
+
|
|
126
|
+
One line on success: `✅ Added <type>/<id> (gate: PASS)`. Gate failures are
|
|
127
|
+
always surfaced.
|
|
140
128
|
|
|
141
129
|
## See also
|
|
142
130
|
|
|
@@ -134,15 +134,15 @@ After step 4, count unreviewed intake entries for the same type:
|
|
|
134
134
|
node -e "const d = []; process.stdin.on('data', c => d.push(c)); process.stdin.on('end', () => console.log(JSON.parse(d.join('')).length))"
|
|
135
135
|
```
|
|
136
136
|
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
**>
|
|
137
|
+
The threshold is a fixed **10** (the `memory.review_threshold` key was retired
|
|
138
|
+
on 2026-10-09 with that default as the behavior). If the count is **≤ 10**,
|
|
139
|
+
skip this step silently. If **> 10**, surface a numbered preview of the top-3 highest-
|
|
140
140
|
confidence intake signals (see
|
|
141
141
|
[`memory-consolidation`](../../skills/memory-consolidation/SKILL.md)
|
|
142
142
|
§ Phase 3 for the consolidation contract):
|
|
143
143
|
|
|
144
144
|
```
|
|
145
|
-
> ⚠️ {N} unreviewed intake signals for `{type}` (threshold
|
|
145
|
+
> ⚠️ {N} unreviewed intake signals for `{type}` (threshold 10).
|
|
146
146
|
> Top 3 by confidence:
|
|
147
147
|
>
|
|
148
148
|
> 1. [conf=high] {sig-id} — {one-line observation}
|
|
@@ -156,8 +156,7 @@ confidence intake signals (see
|
|
|
156
156
|
```
|
|
157
157
|
|
|
158
158
|
Default action is **skip** — the load completes regardless. This is a
|
|
159
|
-
nudge, not a gate.
|
|
160
|
-
step entirely (feature off). Never auto-promote.
|
|
159
|
+
nudge, not a gate. Never auto-promote.
|
|
161
160
|
|
|
162
161
|
## When to reject
|
|
163
162
|
|
|
@@ -205,23 +205,10 @@ git push -u origin memory/promote-<curated-id>
|
|
|
205
205
|
# Then route to /create-pr with the memory-promote template hint.
|
|
206
206
|
```
|
|
207
207
|
|
|
208
|
-
### 7. Report
|
|
208
|
+
### 7. Report
|
|
209
209
|
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
- `off` → emit nothing on success; surface errors only.
|
|
214
|
-
- `minimal` (default) → one line:
|
|
215
|
-
`→ Promoted <sig-id> → <curated-id> (PR: <url or branch>)`.
|
|
216
|
-
- `full` → multi-line block:
|
|
217
|
-
|
|
218
|
-
```
|
|
219
|
-
> ✅ Promotion drafted.
|
|
220
|
-
> - Signal: <sig-id>
|
|
221
|
-
> - Curated: <curated-id> in agents/memory/<type>.yml
|
|
222
|
-
> - PR: <url or branch name>
|
|
223
|
-
> - Next: review + merge
|
|
224
|
-
```
|
|
210
|
+
One line on success: `→ Promoted <sig-id> → <curated-id> (PR: <url or branch>)`.
|
|
211
|
+
Errors are always surfaced.
|
|
225
212
|
|
|
226
213
|
## Safety
|
|
227
214
|
|
|
@@ -170,8 +170,9 @@ them.
|
|
|
170
170
|
[`verify-before-complete`](../../rules/verify-before-complete.md).
|
|
171
171
|
- Every catalog `command:` field is restricted to the safe-prefix allowlist.
|
|
172
172
|
Never run arbitrary shell commands from the catalog.
|
|
173
|
-
- The
|
|
174
|
-
|
|
173
|
+
- The `execution.fix_loop_max` retry budget and its ladder from
|
|
174
|
+
[`autonomous-execution`](../../rules/autonomous-execution.md)
|
|
175
|
+
apply per breaking-change fix step, not per mission.
|
|
175
176
|
- Never skip the size-tier surface step — the user must see the scope before the
|
|
176
177
|
provisional branch is created.
|
|
177
178
|
|
|
@@ -97,8 +97,8 @@ surface changes.
|
|
|
97
97
|
- **Delete** — preview file, confirm, delete, scrub references.
|
|
98
98
|
- **Update** — apply explicit content changes (remove stale refs, refresh sections, add missing info).
|
|
99
99
|
- **Create context** — hand off to `/context create` with area pre-selected.
|
|
100
|
-
4. **Update roadmap progress** — flip `[ ]` → `[x]` after each action; show progress bar.
|
|
101
|
-
5. **Summary** —
|
|
100
|
+
4. **Update roadmap progress** — flip `[ ]` → `[x]` after each action; show progress bar. Continue silently to the next action — the user can interrupt; a routine "next?" confirmation is never asked.
|
|
101
|
+
5. **Summary** — one line of counts (moved · merged · deleted · updated · remaining).
|
|
102
102
|
|
|
103
103
|
**Rules:** confirm before every destructive action; always update references when moving/renaming; update the roadmap after each completed action; show file content before delete; check `.augment/` references too.
|
|
104
104
|
|
|
@@ -96,8 +96,10 @@ above that, re-invoke deliberately with fresh context.
|
|
|
96
96
|
gain is the failure the metric exists to catch.
|
|
97
97
|
- The council splits on the same question twice → STOP, escalate that
|
|
98
98
|
question to the user instead of burning a third loop on it.
|
|
99
|
-
-
|
|
100
|
-
|
|
99
|
+
- A validation target failing 3 consecutive refinement attempts triggers
|
|
100
|
+
the rule's mandatory strategy shift; exhausting the full
|
|
101
|
+
`execution.fix_loop_max` budget (default 10) on the same target → STOP
|
|
102
|
+
(`autonomous-execution`).
|
|
101
103
|
|
|
102
104
|
### Hard exclusions — never inside this command
|
|
103
105
|
|
|
@@ -125,32 +125,10 @@ Run a quick test to confirm rtk picks up the filters:
|
|
|
125
125
|
rtk config 2>&1 | tail -5
|
|
126
126
|
```
|
|
127
127
|
|
|
128
|
-
### 7. Present results
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
- `off` → emit nothing on success; surface errors only.
|
|
134
|
-
- `minimal` (default) → one line: `→ N filters configured in .rtk/rtk.toml`.
|
|
135
|
-
- `full` → multi-line summary table:
|
|
136
|
-
|
|
137
|
-
```
|
|
138
|
-
| # | Filter | Match | Max |
|
|
139
|
-
|-----|--------------|---------------------------------------------------------------|------|
|
|
140
|
-
| 1 | phpstan | phpstan\|quality:phpstan\|vendor/bin/phpstan | 80 |
|
|
141
|
-
| 2 | pest | pest\|phpunit\|artisan test | 60 |
|
|
142
|
-
| 3 | tsc | tsc\|tsc --noEmit | 60 |
|
|
143
|
-
| 4 | eslint | eslint\|next lint | 50 |
|
|
144
|
-
| 5 | vitest | vitest\|jest | 50 |
|
|
145
|
-
| 6 | playwright | playwright\|@playwright/test | 40 |
|
|
146
|
-
| 7 | ruff | ruff check\|ruff format | 60 |
|
|
147
|
-
| 8 | mypy | mypy\|pyright | 50 |
|
|
148
|
-
| 9 | pytest | pytest\|python -m pytest | 50 |
|
|
149
|
-
| 10 | golangci | golangci-lint\|go vet | 50 |
|
|
150
|
-
| 11 | gotest | go test | 40 |
|
|
151
|
-
| 12 | cargo | cargo build\|cargo check\|cargo clippy\|cargo test\|cargo fmt | 50 |
|
|
152
|
-
| ... | ... | (add per project as the toolchain grows) | ... |
|
|
153
|
-
```
|
|
128
|
+
### 7. Present results
|
|
129
|
+
|
|
130
|
+
One line on success: `→ N filters configured in .rtk/rtk.toml`. Errors are
|
|
131
|
+
always surfaced.
|
|
154
132
|
|
|
155
133
|
### Rules
|
|
156
134
|
|
|
@@ -22,11 +22,10 @@ packs:
|
|
|
22
22
|
|
|
23
23
|
> **Carve-out:** this command's *purpose* is the copyable preview of
|
|
24
24
|
> the PR description. It therefore **ignores**
|
|
25
|
-
> `
|
|
26
|
-
>
|
|
27
|
-
>
|
|
28
|
-
>
|
|
29
|
-
> PR is actually being created.
|
|
25
|
+
> `commands.create_pr.preview_description` — that flag governs only the
|
|
26
|
+
> bare `/create-pr` flow's preview-and-adjust loop. Removing the preview
|
|
27
|
+
> here would make the command a no-op. Do not "fix" this; the suppression
|
|
28
|
+
> flag only applies when the PR is actually being created.
|
|
30
29
|
|
|
31
30
|
## Input
|
|
32
31
|
|
|
@@ -87,7 +86,15 @@ That's 6 round-trips for what should be 2.
|
|
|
87
86
|
|
|
88
87
|
### 3. Build the PR title
|
|
89
88
|
|
|
90
|
-
-
|
|
89
|
+
- **Squash merge** — the method `/pr:merge` § 9 reads
|
|
90
|
+
(`gh repo view --json mergeCommitAllowed,squashMergeAllowed,rebaseMergeAllowed`)
|
|
91
|
+
is squash: the title becomes the commit subject on the base, so build it as a
|
|
92
|
+
subject in the convention in force — `DEV-4673 fix(working-time): correct absence calculation`
|
|
93
|
+
under `ticket-conventional`, `fix(DEV-4673): correct absence calculation` under
|
|
94
|
+
the default — and pipe it through `agent-config git:convention subject`; act on
|
|
95
|
+
the exit code as `/commit` step 5 does.
|
|
96
|
+
- **Any other method** — `{TICKET-ID}: {summary}` (e.g. `DEV-4673: Fix absence working time calculation`).
|
|
97
|
+
- The rule: [`commit-subject`](../../../../../skills/git-workflow/references/commit-subject.md) § A title that becomes a commit.
|
|
91
98
|
- Use the Jira ticket summary if available, otherwise derive from commits.
|
|
92
99
|
- If no ticket: use the most descriptive commit message or ask the user.
|
|
93
100
|
|
|
@@ -173,13 +180,12 @@ summary and `## How to test` is omitted):
|
|
|
173
180
|
|
|
174
181
|
#### 4.3 API response examples (evidence-grounded)
|
|
175
182
|
|
|
176
|
-
|
|
177
|
-
the
|
|
178
|
-
|
|
183
|
+
When the diff touches an API endpoint, add a fenced request/response example
|
|
184
|
+
under the Description. This is not a setting — it always applies, and the
|
|
185
|
+
grounding rule below is what keeps it honest.
|
|
179
186
|
|
|
180
187
|
**Detect an API-endpoint change** (fail-open — no false enrichment when
|
|
181
|
-
ambiguous)
|
|
182
|
-
the light heuristic — a route file (`routes/`, `**/api/**`, `*Controller*`,
|
|
188
|
+
ambiguous) with the light heuristic — a route file (`routes/`, `**/api/**`, `*Controller*`,
|
|
183
189
|
resource/serializer classes) whose diff adds or changes an endpoint or its
|
|
184
190
|
request/response shape. No confident match → skip silently.
|
|
185
191
|
|
|
@@ -212,8 +218,6 @@ Response `201`:
|
|
|
212
218
|
```
|
|
213
219
|
~~~
|
|
214
220
|
|
|
215
|
-
`api_examples: false` → skip this step entirely.
|
|
216
|
-
|
|
217
221
|
#### 4.4 Screenshots for frontend changes (capability-gated)
|
|
218
222
|
|
|
219
223
|
Read `commands.create_pr.screenshots` (default `false`). `false` → skip this
|
|
@@ -223,8 +227,7 @@ When `true`, this is a **capability-gated contract, never a runtime
|
|
|
223
227
|
orchestrator** — the package ships instructions, the host provides the tools:
|
|
224
228
|
|
|
225
229
|
1. **Frontend-change gate.** Only proceed if the diff touches a frontend
|
|
226
|
-
surface
|
|
227
|
-
the light heuristic (`.vue` / `.tsx` / `.jsx` / `.blade.php` / `.svelte`,
|
|
230
|
+
surface by the light heuristic (`.vue` / `.tsx` / `.jsx` / `.blade.php` / `.svelte`,
|
|
228
231
|
component/view/page/template dirs, CSS/Tailwind). No match → skip silently.
|
|
229
232
|
2. **Capability gate — explicit, never silent.** Screenshots need host
|
|
230
233
|
browser/preview tooling (a Playwright/browser MCP **and** a reachable dev-server
|