@event4u/agent-config 7.5.0 → 8.0.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/.claude-plugin/marketplace.json +8 -1
- package/AGENTS.md +9 -9
- package/CHANGELOG.md +325 -0
- package/README.md +35 -5
- package/dist/agent-src/commands/analytics/prune.md +1 -1
- package/dist/agent-src/commands/analytics/show.md +1 -1
- package/dist/agent-src/commands/analyze/decision.md +2 -2
- package/dist/agent-src/commands/analyze/incident.md +2 -2
- package/dist/agent-src/commands/analyze/near-miss.md +2 -2
- package/dist/agent-src/commands/analyze/postmortem.md +2 -2
- package/dist/agent-src/commands/analyze/premortem.md +2 -2
- package/dist/agent-src/commands/cost-report.md +25 -0
- package/dist/agent-src/commands/evals/analyze.json +30 -0
- package/dist/agent-src/commands/evals/mission-upgrade.json +30 -0
- package/dist/agent-src/commands/implement-ticket.md +1 -1
- package/dist/agent-src/commands/knowledge/forget.md +1 -1
- package/dist/agent-src/commands/knowledge/ingest.md +1 -1
- package/dist/agent-src/commands/knowledge/list.md +1 -1
- package/dist/agent-src/commands/memory/load.md +12 -11
- package/dist/agent-src/commands/memory/promote.md +30 -0
- package/dist/agent-src/commands/memory/propose.md +16 -2
- package/dist/agent-src/commands/mission/upgrade.md +1 -1
- package/dist/agent-src/commands/module/explore.md +11 -7
- package/dist/agent-src/commands/optimize-project.md +243 -0
- package/dist/agent-src/commands/optimize.md +5 -0
- package/dist/agent-src/commands/pr/create.md +37 -8
- package/dist/agent-src/commands/prediction-pool.md +2 -2
- package/dist/agent-src/commands/profile/activate.md +3 -3
- package/dist/agent-src/commands/profile/deactivate.md +2 -2
- package/dist/agent-src/commands/profile/show.md +3 -3
- package/dist/agent-src/commands/research/deep.md +5 -0
- package/dist/agent-src/commands/research/report.md +2 -1
- package/dist/agent-src/commands/roadmap/create.md +88 -10
- package/dist/agent-src/commands/roadmap/materialize.md +1 -1
- package/dist/agent-src/commands/roadmap/process-full.md +15 -2
- package/dist/agent-src/commands/roadmap/process-phase.md +18 -6
- package/dist/agent-src/commands/roadmap/process-step.md +4 -0
- package/dist/agent-src/commands/roadmap.md +1 -1
- package/dist/agent-src/commands/security-audit-config.md +1 -1
- package/dist/agent-src/commands/sync-agent-settings.md +1 -1
- package/dist/agent-src/commands/sync-gitignore/fix.md +42 -6
- package/dist/agent-src/commands/team-knowledge/bootstrap.md +106 -0
- package/dist/agent-src/commands/team-knowledge/consolidate.md +105 -0
- package/dist/agent-src/commands/team-knowledge.md +64 -0
- package/dist/agent-src/contexts/authority/commit-mechanics.md +8 -0
- package/dist/agent-src/contexts/authority/destructive-mechanics.md +11 -0
- package/dist/agent-src/contexts/authority/scope-mechanics.md +25 -0
- package/dist/agent-src/contexts/communication/rules-auto/reply-close-mechanics.md +43 -0
- package/dist/agent-src/contexts/contracts/agents-md-anatomy.md +1 -1
- package/dist/agent-src/contexts/contracts/artifact-engagement-flow.md +2 -2
- package/dist/agent-src/contexts/contracts/frugality-charter.md +1 -0
- package/dist/agent-src/contexts/execution/auto-dispatch-classification.md +14 -4
- package/dist/agent-src/contexts/execution/autonomy-mechanics.md +11 -0
- package/dist/agent-src/contexts/execution/orchestration-telemetry.md +32 -8
- package/dist/agent-src/contexts/execution/roadmap-execution-contract.md +107 -0
- package/dist/agent-src/contexts/execution/roadmap-process-loop.md +71 -15
- package/dist/agent-src/contexts/execution/subagent-steering.md +41 -1
- package/dist/agent-src/contexts/override-system.md +1 -1
- package/dist/agent-src/personas/brand-strategist.md +0 -1
- package/dist/agent-src/personas/data-integrity.md +66 -0
- package/dist/agent-src/personas/design-director.md +0 -1
- package/dist/agent-src/personas/performance-engineer.md +66 -0
- package/dist/agent-src/personas/production-validator.md +73 -0
- package/dist/agent-src/rules/agent-authority.md +3 -4
- package/dist/agent-src/rules/analysis-skill-routing.md +3 -5
- package/dist/agent-src/rules/architecture.md +2 -4
- package/dist/agent-src/rules/artifact-drafting-protocol.md +35 -6
- package/dist/agent-src/rules/artifact-engagement-recording.md +2 -4
- package/dist/agent-src/rules/ask-when-uncertain.md +10 -14
- package/dist/agent-src/rules/augment-edit-discipline.md +3 -5
- package/dist/agent-src/rules/autonomous-execution.md +3 -5
- package/dist/agent-src/rules/brand-consistency.md +3 -5
- package/dist/agent-src/rules/brand-source-of-truth.md +3 -5
- package/dist/agent-src/rules/cli-output-handling.md +4 -6
- package/dist/agent-src/rules/command-suggestion-policy.md +3 -5
- package/dist/agent-src/rules/commit-conventions.md +3 -5
- package/dist/agent-src/rules/commit-policy.md +8 -10
- package/dist/agent-src/rules/content-quoting-floor.md +88 -0
- package/dist/agent-src/rules/context-hygiene.md +3 -5
- package/dist/agent-src/rules/copilot-routing.md +4 -6
- package/dist/agent-src/rules/decision-revisit-gate.md +120 -0
- package/dist/agent-src/rules/delegation-policy.md +10 -6
- package/dist/agent-src/rules/design-fidelity.md +3 -5
- package/dist/agent-src/rules/devcontainer-routing.md +4 -6
- package/dist/agent-src/rules/direct-answers.md +13 -17
- package/dist/agent-src/rules/docker-commands.md +3 -5
- package/dist/agent-src/rules/domain-adoption-policy.md +3 -5
- package/dist/agent-src/rules/domain-safety-disclaimer.md +3 -5
- package/dist/agent-src/rules/domain-safety-pii.md +3 -5
- package/dist/agent-src/rules/domain-safety-retention.md +3 -5
- package/dist/agent-src/rules/downstream-changes.md +3 -4
- package/dist/agent-src/rules/engineering-safety-floor.md +3 -5
- package/dist/agent-src/rules/external-reference-deep-dive.md +3 -5
- package/dist/agent-src/rules/fast-path-marker-visibility.md +3 -5
- package/dist/agent-src/rules/finance-safety-floor.md +3 -6
- package/dist/agent-src/rules/framework-neutrality-in-generic-skills.md +3 -5
- package/dist/agent-src/rules/git-history-discipline.md +3 -5
- package/dist/agent-src/rules/guidelines.md +2 -4
- package/dist/agent-src/rules/icon-consistency.md +3 -5
- package/dist/agent-src/rules/image-likeness-and-rights.md +3 -5
- package/dist/agent-src/rules/improve-before-implement.md +5 -5
- package/dist/agent-src/rules/invite-challenge.md +3 -5
- package/dist/agent-src/rules/language-and-tone.md +13 -15
- package/dist/agent-src/rules/laravel-routing.md +3 -5
- package/dist/agent-src/rules/laravel-translations.md +3 -5
- package/dist/agent-src/rules/legal-safety-floor.md +3 -5
- package/dist/agent-src/rules/lethal-trifecta-guard.md +3 -5
- package/dist/agent-src/rules/linked-projects-onboarding-gate.md +4 -7
- package/dist/agent-src/rules/low-impact-corpus-privacy-floor.md +3 -5
- package/dist/agent-src/rules/markdown-safe-codeblocks.md +2 -4
- package/dist/agent-src/rules/media-governance-routing.md +3 -5
- package/dist/agent-src/rules/media-sync-ground-truth.md +3 -5
- package/dist/agent-src/rules/minimal-safe-diff.md +5 -5
- package/dist/agent-src/rules/missing-tool-handling.md +3 -5
- package/dist/agent-src/rules/model-recommendation.md +4 -6
- package/dist/agent-src/rules/no-attribution-footers.md +3 -5
- package/dist/agent-src/rules/no-cheap-questions.md +5 -8
- package/dist/agent-src/rules/no-decorative-emojis-in-git-surfaces.md +3 -6
- package/dist/agent-src/rules/no-pr-progress-comments.md +3 -6
- package/dist/agent-src/rules/no-roadmap-references.md +3 -5
- package/dist/agent-src/rules/non-destructive-by-default.md +11 -13
- package/dist/agent-src/rules/notes-first-reasoning.md +3 -5
- package/dist/agent-src/rules/onboarding-gate.md +4 -6
- package/dist/agent-src/rules/output-discipline.md +3 -5
- package/dist/agent-src/rules/package-ci-checks.md +3 -5
- package/dist/agent-src/rules/persona-governance.md +2 -4
- package/dist/agent-src/rules/php-coding.md +3 -5
- package/dist/agent-src/rules/preservation-guard.md +2 -4
- package/dist/agent-src/rules/provider-lifecycle-discipline.md +3 -5
- package/dist/agent-src/rules/reviewer-awareness.md +5 -6
- package/dist/agent-src/rules/roadmap-ci-steps-policy.md +3 -5
- package/dist/agent-src/rules/roadmap-progress-sync.md +5 -5
- package/dist/agent-src/rules/role-mode-adherence.md +2 -4
- package/dist/agent-src/rules/rule-type-governance.md +3 -5
- package/dist/agent-src/rules/runtime-safety.md +2 -4
- package/dist/agent-src/rules/scope-control.md +10 -11
- package/dist/agent-src/rules/security-sensitive-stop.md +4 -5
- package/dist/agent-src/rules/size-enforcement.md +2 -4
- package/dist/agent-src/rules/skill-improvement-trigger.md +3 -5
- package/dist/agent-src/rules/skill-quality.md +3 -5
- package/dist/agent-src/rules/slash-command-routing-policy.md +3 -5
- package/dist/agent-src/rules/source-confidentiality.md +3 -5
- package/dist/agent-src/rules/source-discovery-gate.md +3 -5
- package/dist/agent-src/rules/source-of-truth.md +3 -5
- package/dist/agent-src/rules/strategy-safety-floor.md +3 -5
- package/dist/agent-src/rules/symfony-routing.md +4 -6
- package/dist/agent-src/rules/telegraph-speak.md +4 -5
- package/dist/agent-src/rules/think-before-action.md +7 -4
- package/dist/agent-src/rules/token-budget-discipline.md +29 -5
- package/dist/agent-src/rules/token-efficiency.md +3 -5
- package/dist/agent-src/rules/token-optimizer-maintenance.md +3 -5
- package/dist/agent-src/rules/tool-safety.md +2 -4
- package/dist/agent-src/rules/ui-audit-gate.md +3 -6
- package/dist/agent-src/rules/untrusted-input-defense.md +3 -5
- package/dist/agent-src/rules/upstream-proposal.md +4 -6
- package/dist/agent-src/rules/user-interaction.md +7 -5
- package/dist/agent-src/rules/user-interrupt-priority.md +17 -8
- package/dist/agent-src/rules/verify-before-complete.md +12 -22
- package/dist/agent-src/scripts/archive_completed_roadmaps.ts +3 -3
- package/dist/agent-src/scripts/update_roadmap_progress.ts +197 -7
- package/dist/agent-src/skills/adr-create/SKILL.md +48 -42
- package/dist/agent-src/skills/agent-docs-writing/SKILL.md +18 -0
- package/dist/agent-src/skills/agent-security-review/SKILL.md +1 -1
- package/dist/agent-src/skills/ai-council/SKILL.md +14 -1
- package/dist/agent-src/skills/blameless-post-mortem/SKILL.md +0 -3
- package/dist/agent-src/skills/brand/SKILL.md +1 -1
- package/dist/agent-src/skills/brand-identity/SKILL.md +3 -3
- package/dist/agent-src/skills/brand-strategy/SKILL.md +1 -1
- package/dist/agent-src/skills/brand-to-tokens/SKILL.md +3 -3
- package/dist/agent-src/skills/canvas-design/SKILL.md +6 -0
- package/dist/agent-src/skills/check-refs/SKILL.md +7 -4
- package/dist/agent-src/skills/code-review/SKILL.md +1 -0
- package/dist/agent-src/skills/complexity-first-planning/SKILL.md +6 -5
- package/dist/agent-src/skills/condense-memory/SKILL.md +11 -11
- package/dist/agent-src/skills/context-document/SKILL.md +17 -0
- package/dist/agent-src/skills/corpus-grounding/SKILL.md +3 -3
- package/dist/agent-src/skills/decision-record/SKILL.md +6 -0
- package/dist/agent-src/skills/decision-review/SKILL.md +5 -3
- package/dist/agent-src/skills/deep-reading-analyst/SKILL.md +6 -1
- package/dist/agent-src/skills/design-intelligence/SKILL.md +5 -2
- package/dist/agent-src/skills/design-intelligence/references/design-languages.md +1 -1
- package/dist/agent-src/skills/design-tokens/SKILL.md +10 -4
- package/dist/agent-src/skills/design-variations/SKILL.md +127 -0
- package/dist/agent-src/skills/design-variations/evals/triggers.json +17 -0
- package/dist/agent-src/skills/emit-tickets/SKILL.md +4 -4
- package/dist/agent-src/skills/fe-design/SKILL.md +20 -0
- package/dist/agent-src/skills/html-deck/SKILL.md +123 -0
- package/dist/agent-src/skills/html-deck/evals/triggers.json +17 -0
- package/dist/agent-src/skills/html-deck/templates/deck-shell.html +77 -0
- package/dist/agent-src/skills/judge-code-quality/SKILL.md +1 -0
- package/dist/agent-src/skills/laravel/SKILL.md +0 -1
- package/dist/agent-src/skills/learning-to-rule-or-skill/SKILL.md +46 -0
- package/dist/agent-src/skills/lint-skills/SKILL.md +6 -6
- package/dist/agent-src/skills/md-language-check/SKILL.md +3 -3
- package/dist/agent-src/skills/memory-consolidation/SKILL.md +66 -1
- package/dist/agent-src/skills/migration-architect/SKILL.md +1 -0
- package/dist/agent-src/skills/module-detect-on-the-fly/SKILL.md +2 -2
- package/dist/agent-src/skills/performance-analysis/SKILL.md +2 -0
- package/dist/agent-src/skills/prediction-pool-optimizer/SKILL.md +4 -4
- package/dist/agent-src/skills/premortem/SKILL.md +0 -3
- package/dist/agent-src/skills/project-analysis-core/SKILL.md +16 -0
- package/dist/agent-src/skills/reasoning-orchestrator/SKILL.md +3 -1
- package/dist/agent-src/skills/release-comms/SKILL.md +46 -45
- package/dist/agent-src/skills/roadmap-management/SKILL.md +21 -0
- package/dist/agent-src/skills/roadmap-writing/SKILL.md +32 -2
- package/dist/agent-src/skills/root-cause-frameworks/SKILL.md +0 -3
- package/dist/agent-src/skills/security-audit/SKILL.md +1 -0
- package/dist/agent-src/skills/skill-improvement-pipeline/SKILL.md +4 -0
- package/dist/agent-src/skills/source-discovery/SKILL.md +22 -3
- package/dist/agent-src/skills/subagent-orchestration/SKILL.md +33 -14
- package/dist/agent-src/skills/subagent-orchestration/prompts/README.md +11 -0
- package/dist/agent-src/skills/subagent-orchestration/prompts/do-in-steps.md +8 -0
- package/dist/agent-src/skills/systematic-debugging/SKILL.md +29 -0
- package/dist/agent-src/skills/threat-modeling/SKILL.md +2 -2
- package/dist/agent-src/skills/typography-system/SKILL.md +2 -2
- package/dist/agent-src/skills/verify-completion-evidence/SKILL.md +2 -0
- package/dist/agent-src/skills/wireframe/SKILL.md +118 -0
- package/dist/agent-src/skills/wireframe/evals/triggers.json +17 -0
- package/dist/agent-src/templates/agent-settings.md +22 -1
- package/dist/agent-src/templates/agents/agent-project-settings.example.yml +1 -1
- package/dist/agent-src/templates/command.md +2 -2
- package/dist/agent-src/templates/contexts/knowledge-pages.md +116 -0
- package/dist/agent-src/templates/hooks/pre-commit-frontmatter +1 -1
- package/dist/agent-src/templates/roadmaps.md +70 -2
- package/dist/agent-src/templates/rule.md +1 -1
- package/dist/agent-src/templates/scripts/README.md +3 -3
- package/dist/agent-src/templates/scripts/work_engine/_lib/agent_settings.ts +109 -0
- package/dist/agent-src/templates/tickets.md +8 -8
- package/dist/cli/commands/recordTriggerEval.test.js +1 -1
- package/dist/cli/commands/recordTriggerEval.test.js.map +1 -1
- package/dist/cli/initRouting.js +4 -2
- package/dist/cli/initRouting.js.map +1 -1
- package/dist/cli/registry.js +1 -0
- package/dist/cli/registry.js.map +1 -1
- package/dist/discovery/deprecation-report.md +1 -1
- package/dist/discovery/discovery-manifest.json +718 -240
- package/dist/discovery/discovery-manifest.json.sha256 +1 -1
- package/dist/discovery/discovery-manifest.summary.md +8 -8
- package/dist/discovery/orphan-report.md +1 -1
- package/dist/discovery/packs.json +43 -28
- package/dist/discovery/trust-report.md +12 -11
- package/dist/discovery/workspaces.json +29 -18
- package/dist/install/preflight.js +173 -0
- package/dist/install/preflight.js.map +1 -0
- package/dist/mcp/registry-manifest.json +4 -4
- package/dist/router.json +1 -1
- package/dist/server/routes/settings.js +4 -0
- package/dist/server/routes/settings.js.map +1 -1
- package/dist/server/schemas/settings.js +3 -1
- package/dist/server/schemas/settings.js.map +1 -1
- package/docs/CLAIMS.md +108 -0
- package/docs/MIGRATION.md +3 -3
- package/docs/architecture.md +5 -5
- package/docs/benchmark.md +133 -2
- package/docs/benchmark.pinned.yml +31 -0
- package/docs/capability-matrix.md +1 -0
- package/docs/catalog.md +70 -60
- package/docs/command-flows.md +15 -3
- package/docs/comparison.yaml +35 -0
- package/docs/contracts/agents-layout.md +148 -0
- package/docs/contracts/brand-token-consumption.md +5 -0
- package/docs/contracts/capability-boundary.md +5 -0
- package/docs/contracts/command-category-governance.md +5 -0
- package/docs/contracts/command-clusters.md +1 -0
- package/docs/contracts/command-surface-tiers.md +1 -1
- package/docs/contracts/conformance.md +84 -0
- package/docs/contracts/creative-pack-boundary.md +5 -0
- package/docs/contracts/discovery-manifest.schema.json +5 -4
- package/docs/contracts/file-ownership-matrix.json +4605 -985
- package/docs/contracts/governance-enforcement-projection.md +5 -0
- package/docs/contracts/gui-wizard.md +1 -1
- package/docs/contracts/hook-architecture-v1.md +2 -2
- package/docs/contracts/implement-ticket-flow.md +1 -1
- package/docs/contracts/kernel-membership.md +13 -0
- package/docs/contracts/mcp-tool-inventory.md +23 -23
- package/docs/contracts/no-runtime-boundary.md +6 -1
- package/docs/contracts/review-lens-schema.md +5 -0
- package/docs/contracts/rule-router.md +102 -8
- package/docs/contracts/skill-bundled-assets.md +1 -1
- package/docs/contracts/skill-dry-run.md +1 -1
- package/docs/contracts/subagent-boundary.md +5 -0
- package/docs/contracts/ticket-bundle-format.md +9 -4
- package/docs/contracts/tier-3-contrib-plugin.md +2 -2
- package/docs/contracts/write-engine.md +3 -0
- package/docs/customization.md +87 -15
- package/docs/decisions/ADR-107-legal-domain-pack-adoption.md +1 -1
- package/docs/decisions/ADR-109-subagent-v1-contract.md +246 -0
- package/docs/decisions/ADR-110-discipline-profile-resolution-locus.md +105 -0
- package/docs/decisions/INDEX.md +2 -0
- package/docs/distribution/awesome-list-submission.md +46 -0
- package/docs/distribution/launch-story-draft.md +58 -0
- package/docs/end-to-end-walkthroughs.md +2 -2
- package/docs/getting-started.md +2 -2
- package/docs/guidelines/agent-infra/asking-and-brevity-examples.md +24 -0
- package/docs/guidelines/agent-infra/corpus-grounding-authoring.md +1 -1
- package/docs/guidelines/agent-infra/linked-projects-onboarding-gate.md +2 -2
- package/docs/guidelines/agent-infra/missing-tool-handling.md +3 -3
- package/docs/guidelines/agent-infra/verify-before-complete-demos.md +2 -2
- package/docs/guidelines/augment-portability-patterns.md +1 -1
- package/docs/guidelines/code-clarity.md +19 -0
- package/docs/guidelines/design-antipatterns-triggers.json +2 -1
- package/docs/guidelines/design-antipatterns.md +10 -1
- package/docs/guidelines/design-modes.md +6 -0
- package/docs/guidelines/php/general.md +9 -1
- package/docs/guidelines/php/php-coding-patterns.md +7 -0
- package/docs/guides/cross-repo-retrieval.md +1 -1
- package/docs/guides/frontend-design-corpus-refresh.md +2 -2
- package/docs/guides/local-analytics.md +4 -4
- package/docs/guides/skill-discovery.md +1 -1
- package/docs/guides/skill-preview.md +1 -1
- package/docs/hook-payload-capture.md +6 -6
- package/docs/install-friction-report.md +66 -0
- package/docs/installation.md +1 -1
- package/docs/maintainers/optional-media-deps.md +50 -0
- package/docs/mcp-server.md +11 -12
- package/docs/media/proof-demo.cast +14 -0
- package/docs/media/proof-demo.gif +0 -0
- package/docs/migration/consumer-template-consumption-model.md +1 -1
- package/docs/migration/divergences/bench-stats-float-precision.md +1 -1
- package/docs/migration/node-floor.md +1 -1
- package/docs/migration/yaml-roundtrip-spike.md +1 -1
- package/docs/personas.md +16 -5
- package/docs/positioning-evidence.md +86 -0
- package/docs/proof.md +86 -0
- package/docs/skills-catalog.md +1 -1
- package/docs/troubleshooting.md +8 -8
- package/docs/wedge/production-validator/README.md +57 -0
- package/docs/wedge/production-validator/production-validator.md +56 -0
- package/docs/wizard.md +2 -2
- package/package.json +1 -1
- package/src/config/agent-settings.template.yml +59 -4
- package/src/config/agents-paths.yml +254 -0
- package/src/config/budgets.yml +16 -0
- package/src/config/discovery/packs.yml +1 -0
- package/src/config/discovery/unassigned-artefacts.yml +2 -0
- package/src/config/gitignore-block.txt +25 -0
- package/src/config/host-capabilities.yml +31 -0
- package/src/config/profiles/balanced.ini +4 -0
- package/src/config/profiles/full.ini +4 -0
- package/src/config/profiles/minimal.ini +4 -0
- package/src/scripts/_cli/cmd_conformance.ts +716 -0
- package/src/scripts/_cli/cmd_doctor.ts +23 -2
- package/src/scripts/_cli/cmd_fleet.ts +401 -0
- package/src/scripts/_cli/cmd_preflight.ts +159 -0
- package/src/scripts/_dispatch.bash +10 -0
- package/src/scripts/_lib/knowledge_events.ts +193 -0
- package/src/scripts/_lib/subagent_steering.ts +115 -3
- package/src/scripts/_lib/text_similarity.ts +75 -0
- package/src/scripts/ai-video/test-pipeline.sh +1 -1
- package/src/scripts/ai_council/clients.ts +19 -3
- package/src/scripts/append_contested.ts +112 -0
- package/src/scripts/audit_auto_rules.ts +11 -1
- package/src/scripts/audit_mcp_tools.ts +25 -11
- package/src/scripts/bench_ab_v2_run.ts +527 -40
- package/src/scripts/bench_ab_v2_stats.ts +6 -0
- package/src/scripts/bench_matrix.ts +266 -0
- package/src/scripts/bootstrap_knowledge.ts +267 -0
- package/src/scripts/build_discovery_manifest.ts +42 -2
- package/src/scripts/build_proof.ts +214 -0
- package/src/scripts/check_always_budget.ts +3 -0
- package/src/scripts/check_augment_description_cap.ts +2 -2
- package/src/scripts/check_claims.ts +270 -0
- package/src/scripts/check_comparison.ts +79 -0
- package/src/scripts/check_generated_artefact_headers.ts +109 -0
- package/src/scripts/check_generator_output_coverage.ts +142 -0
- package/src/scripts/check_gitignore_freshness.ts +127 -0
- package/src/scripts/check_knowledge_pages.ts +210 -0
- package/src/scripts/check_knowledge_sharing.ts +162 -0
- package/src/scripts/check_media_deps.ts +91 -0
- package/src/scripts/check_memory_contradiction.ts +280 -0
- package/src/scripts/check_memory_similarity.ts +134 -0
- package/src/scripts/check_quality_regression.ts +56 -10
- package/src/scripts/check_references.ts +3 -1
- package/src/scripts/check_release_pr_shape.ts +4 -0
- package/src/scripts/check_site_links.ts +135 -0
- package/src/scripts/check_skill_gaps.ts +99 -0
- package/src/scripts/check_token_quality_golden.ts +197 -11
- package/src/scripts/check_tracked_but_ignored.ts +67 -0
- package/src/scripts/cluster_near_miss_patterns.ts +0 -0
- package/src/scripts/compile_router.ts +30 -3
- package/src/scripts/condense.ts +350 -14
- package/src/scripts/consolidate_knowledge_events.ts +192 -0
- package/src/scripts/degrade_to_pointer.ts +136 -0
- package/src/scripts/design_slop_rules.test.ts +15 -0
- package/src/scripts/design_slop_rules.ts +28 -0
- package/src/scripts/emit_knowledge_event.ts +158 -0
- package/src/scripts/export_replay_corpus.ts +187 -0
- package/src/scripts/external_sources_denylist.json +7 -2
- package/src/scripts/fold_intake.ts +281 -0
- package/src/scripts/generate_capability_matrix.ts +9 -1
- package/src/scripts/generate_knowledge_index.ts +222 -0
- package/src/scripts/hook_manifest.yaml +26 -14
- package/src/scripts/hooks/dispatch_hook.ts +18 -0
- package/src/scripts/hot_context_hook.ts +372 -0
- package/src/scripts/install +47 -0
- package/src/scripts/install-hooks.sh +17 -0
- package/src/scripts/inventory_meta_layers.ts +11 -0
- package/src/scripts/janitor.ts +258 -0
- package/src/scripts/lint_agents_layout.ts +74 -15
- package/src/scripts/lint_bench_ab.ts +4 -1
- package/src/scripts/lint_featured_skills.ts +0 -0
- package/src/scripts/lint_framework_leakage_allowlist.json +26 -3
- package/src/scripts/lint_knowledge_scale.ts +250 -0
- package/src/scripts/lint_legal_pack.ts +67 -0
- package/src/scripts/lint_persona_governance.ts +8 -3
- package/src/scripts/lint_regression.ts +15 -0
- package/src/scripts/lint_roadmap_blockers.ts +202 -0
- package/src/scripts/lint_roadmap_complexity.ts +81 -2
- package/src/scripts/lint_subagent_determinism.ts +125 -0
- package/src/scripts/measure_augment_budget.ts +46 -6
- package/src/scripts/measure_patterns.ts +4 -3
- package/src/scripts/measure_skill_reduction.ts +6 -6
- package/src/scripts/migration_status.ts +6 -2
- package/src/scripts/mine_missing_guardrails.ts +189 -0
- package/src/scripts/parity/phase_gate.ts +1 -1
- package/src/scripts/parity/replay.ts +21 -0
- package/src/scripts/project_thin_rules.ts +120 -16
- package/src/scripts/release.ts +39 -1
- package/src/scripts/render_benchmark_composite.ts +378 -0
- package/src/scripts/roadmap_progress_hook.ts +101 -43
- package/src/scripts/schemas/skill.schema.json +27 -0
- package/src/scripts/schemas/subagent.schema.json +106 -0
- package/src/scripts/skill_linter.ts +1 -0
- package/src/scripts/smoke/kernel.sh +5 -4
- package/src/scripts/surface-tiers.yml +1 -0
- package/src/scripts/sync_gitignore.ts +4 -0
- package/src/scripts/update_skill_candidates.ts +172 -0
- package/src/scripts/validate_frontmatter.ts +1 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
type: "auto"
|
|
3
3
|
tier: "3"
|
|
4
|
-
description: "
|
|
4
|
+
description: "Ask-or-act on a workflow step — trivial-vs-blocking, autonomy opt-in, commit default; Hard Floor stays"
|
|
5
5
|
alwaysApply: false
|
|
6
6
|
load_context:
|
|
7
7
|
- ../contexts/execution/autonomy-detection.md
|
|
@@ -11,10 +11,8 @@ triggers:
|
|
|
11
11
|
- intent: "trivial workflow question"
|
|
12
12
|
- intent: "autonomy mode"
|
|
13
13
|
- keyword: "personal.autonomy"
|
|
14
|
-
workspaces:
|
|
15
|
-
|
|
16
|
-
packs:
|
|
17
|
-
- meta
|
|
14
|
+
workspaces: [agent-config-maintainer, construction, engineering, finance, founder, gtm, legal-review-prep, ops, product, small-business]
|
|
15
|
+
packs: [meta]
|
|
18
16
|
---
|
|
19
17
|
|
|
20
18
|
# Autonomous Execution
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
type: "auto"
|
|
3
3
|
tier: "2a"
|
|
4
|
-
description: "Generated UI
|
|
4
|
+
description: "Generated UI/copy/assets check against active brand tokens + voice profile — untraceable values are flagged off-brand"
|
|
5
5
|
triggers:
|
|
6
6
|
- keyword: "brand"
|
|
7
7
|
- keyword: "on-brand"
|
|
@@ -14,10 +14,8 @@ applies_to_user_types:
|
|
|
14
14
|
- "creator"
|
|
15
15
|
- "developer"
|
|
16
16
|
- "maintainer"
|
|
17
|
-
workspaces:
|
|
18
|
-
|
|
19
|
-
packs:
|
|
20
|
-
- brand
|
|
17
|
+
workspaces: [engineering]
|
|
18
|
+
packs: [brand]
|
|
21
19
|
---
|
|
22
20
|
|
|
23
21
|
# Brand Consistency
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
type: "auto"
|
|
3
3
|
tier: "2a"
|
|
4
|
-
description: "
|
|
4
|
+
description: "Consumer brand tokens + voice profile are the run's source of truth — the corpus fills gaps, never overrides"
|
|
5
5
|
triggers:
|
|
6
6
|
- keyword: "brand tokens"
|
|
7
7
|
- keyword: "brand voice"
|
|
@@ -12,10 +12,8 @@ applies_to_user_types:
|
|
|
12
12
|
- "creator"
|
|
13
13
|
- "developer"
|
|
14
14
|
- "maintainer"
|
|
15
|
-
workspaces:
|
|
16
|
-
|
|
17
|
-
packs:
|
|
18
|
-
- brand
|
|
15
|
+
workspaces: [engineering]
|
|
16
|
+
packs: [brand]
|
|
19
17
|
---
|
|
20
18
|
|
|
21
19
|
# Brand Source of Truth
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
type: "auto"
|
|
3
3
|
tier: "2a"
|
|
4
|
-
description: "
|
|
4
|
+
description: "Verbose CLI output (git, tests, linters, docker, npm, composer) — wrap with rtk; tail/grep fallback"
|
|
5
5
|
triggers:
|
|
6
6
|
- keyword: "git"
|
|
7
7
|
- keyword: "phpstan"
|
|
@@ -28,10 +28,8 @@ triggers:
|
|
|
28
28
|
- phrase: "go build"
|
|
29
29
|
routes_to:
|
|
30
30
|
- "skill:rtk-output-filtering"
|
|
31
|
-
workspaces:
|
|
32
|
-
|
|
33
|
-
packs:
|
|
34
|
-
- meta
|
|
31
|
+
workspaces: [agent-config-maintainer, engineering]
|
|
32
|
+
packs: [meta]
|
|
35
33
|
---
|
|
36
34
|
|
|
37
35
|
# Cli Output Handling
|
|
@@ -39,4 +37,4 @@ packs:
|
|
|
39
37
|
**Iron Law.** Wrap verbose CLI output with `rtk` when installed; fall back to `tail`/`grep` only when missing.
|
|
40
38
|
|
|
41
39
|
Body migrated to `skill:rtk-output-filtering` (per P4 of `road-to-kernel-and-router.md`).
|
|
42
|
-
Trigger-set above activates this routing
|
|
40
|
+
Trigger-set above activates this routing on demand, independent of the discipline profile (ADR-110).
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
type: "auto"
|
|
3
3
|
tier: "mechanical-already"
|
|
4
|
-
description: "Prompt
|
|
4
|
+
description: "Prompt matches an eligible slash command — surface as numbered options with as-is escape; never auto-execute"
|
|
5
5
|
triggers:
|
|
6
6
|
- phrase: "free-form prompt"
|
|
7
7
|
- phrase: "command suggestion"
|
|
@@ -9,10 +9,8 @@ routes_to:
|
|
|
9
9
|
- "contract:command-suggestion-flow"
|
|
10
10
|
load_context:
|
|
11
11
|
- "../contexts/contracts/command-suggestion-flow.md"
|
|
12
|
-
workspaces:
|
|
13
|
-
|
|
14
|
-
packs:
|
|
15
|
-
- meta
|
|
12
|
+
workspaces: [agent-config-maintainer, construction, engineering, finance, founder, gtm, legal-review-prep, ops, product, small-business]
|
|
13
|
+
packs: [meta]
|
|
16
14
|
---
|
|
17
15
|
|
|
18
16
|
# Command Suggestion Policy
|
|
@@ -8,10 +8,8 @@ triggers:
|
|
|
8
8
|
- phrase: "conventional commits"
|
|
9
9
|
routes_to:
|
|
10
10
|
- "skill:conventional-commits-writing"
|
|
11
|
-
workspaces:
|
|
12
|
-
|
|
13
|
-
packs:
|
|
14
|
-
- engineering-base
|
|
11
|
+
workspaces: [engineering]
|
|
12
|
+
packs: [engineering-base]
|
|
15
13
|
---
|
|
16
14
|
|
|
17
15
|
# Commit Conventions
|
|
@@ -19,4 +17,4 @@ packs:
|
|
|
19
17
|
**Iron Law.** Use Conventional Commits (`feat:`, `fix:`, `chore:` …); branches `<type>/<short-slug>`; never invent your own format. Subjects + branch names stay emoji-free per [`no-decorative-emojis-in-git-surfaces`](no-decorative-emojis-in-git-surfaces.md); body emojis allowed only with an in-artifact legend.
|
|
20
18
|
|
|
21
19
|
Body migrated to `skill:conventional-commits-writing` (per P4 of `road-to-kernel-and-router.md`).
|
|
22
|
-
Trigger-set above activates this routing
|
|
20
|
+
Trigger-set above activates this routing on demand, independent of the discipline profile (ADR-110).
|
|
@@ -5,10 +5,8 @@ description: "Commit policy — never commit and never ask about committing unle
|
|
|
5
5
|
alwaysApply: true
|
|
6
6
|
load_context:
|
|
7
7
|
- ../contexts/authority/commit-mechanics.md
|
|
8
|
-
workspaces:
|
|
9
|
-
|
|
10
|
-
packs:
|
|
11
|
-
- engineering-base
|
|
8
|
+
workspaces: [engineering]
|
|
9
|
+
packs: [engineering-base]
|
|
12
10
|
---
|
|
13
11
|
|
|
14
12
|
# Commit Policy
|
|
@@ -20,22 +18,22 @@ NEVER COMMIT. NEVER ASK ABOUT COMMITTING.
|
|
|
20
18
|
EXCEPTIONS ARE EXPLICIT, NOT INFERRED.
|
|
21
19
|
```
|
|
22
20
|
|
|
23
|
-
|
|
21
|
+
Holds regardless of `personal.autonomy`, momentum, or "clean stopping point". Default: **no commit, no question**.
|
|
24
22
|
|
|
25
23
|
## Exceptions — when committing IS allowed
|
|
26
24
|
|
|
27
25
|
Exactly four:
|
|
28
26
|
|
|
29
|
-
1. **User says so this turn** — "commit this now"
|
|
30
|
-
2. **Standing instruction not yet revoked** — "commit after every phase"
|
|
31
|
-
3. **Commit command invoked** — `/commit` (
|
|
32
|
-
4. **Roadmap authorization** — roadmap
|
|
27
|
+
1. **User says so this turn** — "commit this now". This commit only, not standing.
|
|
28
|
+
2. **Standing instruction not yet revoked** — "commit after every phase"; cache and honor.
|
|
29
|
+
3. **Commit command invoked** — `/commit` (confirmed) or `/commit:in-chunks` (auto-split).
|
|
30
|
+
4. **Roadmap authorization** — roadmap lists explicit commit steps and the user invoked roadmap execution.
|
|
33
31
|
|
|
34
32
|
Anything else → no commit. Hard Floor (bulk deletions, infra changes) still fires on top of any exception — see [`commit-mechanics`](../contexts/authority/commit-mechanics.md) for diff triggers and roadmap-authorized commit flow.
|
|
35
33
|
|
|
36
34
|
## NEVER ask about committing
|
|
37
35
|
|
|
38
|
-
"Should I commit this?" / "do we want to commit?" — **forbidden**. The user invokes a command or says so
|
|
36
|
+
"Should I commit this?" / "do we want to commit?" — **forbidden**. The user invokes a command or says so. No commit option in numbered-options blocks unless the message is incomplete without it.
|
|
39
37
|
|
|
40
38
|
Quoted commit phrases (chat-log paste, log excerpt, roadmap snippet) are **not** permission — see [`commit-mechanics`](../contexts/authority/commit-mechanics.md).
|
|
41
39
|
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: "auto"
|
|
3
|
+
tier: "2a"
|
|
4
|
+
description: "Cap verbatim quoting from external sources — 15 words max per quote, one quote per source, never a complete short work, paraphrase by default"
|
|
5
|
+
triggers:
|
|
6
|
+
- intent: "drafting content from a source"
|
|
7
|
+
- intent: "summarizing an external document"
|
|
8
|
+
- keyword: "quote"
|
|
9
|
+
- keyword: "excerpt"
|
|
10
|
+
- keyword: "verbatim"
|
|
11
|
+
workspaces: [agent-config-maintainer, construction, engineering, finance, founder, gtm, legal-review-prep, ops, product, small-business]
|
|
12
|
+
packs: [meta]
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
# Content Quoting Floor
|
|
16
|
+
|
|
17
|
+
## The Iron Law
|
|
18
|
+
|
|
19
|
+
```
|
|
20
|
+
NO VERBATIM QUOTE EXCEEDS 15 WORDS. ONE QUOTE PER SOURCE PER DELIVERABLE.
|
|
21
|
+
NEVER REPRODUCE A COMPLETE SHORT WORK — LYRICS, POEMS, SHORT ARTICLES —
|
|
22
|
+
REGARDLESS OF LENGTH. PARAPHRASE IS THE DEFAULT; A QUOTE IS THE EXCEPTION.
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
Ghostwriter, research, release-comms, and content-drafting surfaces can
|
|
26
|
+
currently emit unbounded verbatim excerpts from a fetched, uploaded, or
|
|
27
|
+
cited external source. This rule caps that: a quote proves a claim, it
|
|
28
|
+
does not substitute for engaging with the source.
|
|
29
|
+
|
|
30
|
+
## The floor
|
|
31
|
+
|
|
32
|
+
1. **≤ 15 words per verbatim quote.** Longer excerpts are paraphrased,
|
|
33
|
+
with the source cited by name/link instead of copied.
|
|
34
|
+
2. **One quote per source per deliverable.** After the first quote from
|
|
35
|
+
a given source, that source is closed for further verbatim excerpts
|
|
36
|
+
in the same piece — paraphrase any additional material.
|
|
37
|
+
3. **Never a complete short work.** Song lyrics, poems, haiku, short
|
|
38
|
+
quotes, or brief articles are never reproduced in full, even when
|
|
39
|
+
the whole thing is under the 15-word limit — completeness is the
|
|
40
|
+
violation, not just length.
|
|
41
|
+
4. **No displacive summarization.** A "summary" that walks through the
|
|
42
|
+
source's structure section-by-section in the source's own order,
|
|
43
|
+
preserving its organization and phrasing, functions as a substitute
|
|
44
|
+
for reading the source — this is a violation even without literal
|
|
45
|
+
quoting. Summaries restructure and compress; they do not mirror.
|
|
46
|
+
5. **Paraphrase by default.** Reach for a quote only when the exact
|
|
47
|
+
wording itself is the point (a legal term, a precise technical
|
|
48
|
+
claim, a direct attribution the user needs verbatim) — not as the
|
|
49
|
+
default mode of engaging with source material.
|
|
50
|
+
|
|
51
|
+
## Carve-outs
|
|
52
|
+
|
|
53
|
+
- **User-owned or user-supplied text.** Content the user wrote, pasted,
|
|
54
|
+
or explicitly authorized for verbatim use is not "an external
|
|
55
|
+
source" under this rule — it's the user's own material.
|
|
56
|
+
- **License-permitted vendored content.** Code or text vendored under a
|
|
57
|
+
license that requires or permits verbatim inclusion (Apache/MIT
|
|
58
|
+
attribution blocks, etc.) — see [`source-confidentiality`](source-confidentiality.md)
|
|
59
|
+
for the attribution rules that govern that carve-out.
|
|
60
|
+
- **Code snippets.** This rule governs prose quoting from written
|
|
61
|
+
sources (articles, documents, transcripts) — it does not limit
|
|
62
|
+
quoting source code, which has its own citation norms.
|
|
63
|
+
|
|
64
|
+
## Failure modes
|
|
65
|
+
|
|
66
|
+
- Pasting a multi-paragraph block from a fetched article "for context"
|
|
67
|
+
instead of paraphrasing it.
|
|
68
|
+
- Quoting the same source three times across one deliverable because
|
|
69
|
+
each quote "proves a different point" — one quote closes the source.
|
|
70
|
+
- Reproducing a full haiku or a four-line lyric snippet because it's
|
|
71
|
+
"short enough" — completeness, not length, is what this rule bans.
|
|
72
|
+
- A "summary" that is actually the source's own outline with lighter
|
|
73
|
+
wording — the displacive-summarization violation.
|
|
74
|
+
|
|
75
|
+
## See also
|
|
76
|
+
|
|
77
|
+
- [`domain-safety-disclaimer`](domain-safety-disclaimer.md) — the
|
|
78
|
+
advisory-disclaimer floor this rule complements; overlap checked,
|
|
79
|
+
no duplication (that rule governs disclaimers, not quote length).
|
|
80
|
+
- [`untrusted-input-defense`](untrusted-input-defense.md) — governs
|
|
81
|
+
treating fetched content as data vs instructions; this rule governs
|
|
82
|
+
how much of that data may be reproduced verbatim once it IS being
|
|
83
|
+
used as source material.
|
|
84
|
+
- [`docs/contracts/write-engine.md`](../docs/contracts/write-engine.md) —
|
|
85
|
+
ghostwriter's disclosure-footer contract; this rule's quote floor
|
|
86
|
+
applies to any ghostwriter draft that cites an external source.
|
|
87
|
+
- [`source-confidentiality`](source-confidentiality.md) — the license-
|
|
88
|
+
required-attribution carve-out for vendored code/text.
|
|
@@ -8,10 +8,8 @@ triggers:
|
|
|
8
8
|
- intent: "tool loop"
|
|
9
9
|
- intent: "fresh chat"
|
|
10
10
|
- keyword: "3-failure"
|
|
11
|
-
workspaces:
|
|
12
|
-
|
|
13
|
-
packs:
|
|
14
|
-
- meta
|
|
11
|
+
workspaces: [agent-config-maintainer, construction, engineering, finance, founder, gtm, legal-review-prep, ops, product, small-business]
|
|
12
|
+
packs: [meta]
|
|
15
13
|
---
|
|
16
14
|
|
|
17
15
|
# Context Hygiene
|
|
@@ -154,7 +152,7 @@ manually so the dashboard or another tool can read the latest
|
|
|
154
152
|
counters, run:
|
|
155
153
|
|
|
156
154
|
```bash
|
|
157
|
-
|
|
155
|
+
./scripts-run src/scripts/context_hygiene_hook < /dev/null
|
|
158
156
|
```
|
|
159
157
|
|
|
160
158
|
The script reads from stdin if a JSON envelope is provided and
|
|
@@ -1,17 +1,15 @@
|
|
|
1
1
|
---
|
|
2
2
|
type: "auto"
|
|
3
3
|
tier: "3"
|
|
4
|
-
description: "Configuring GitHub Copilot
|
|
4
|
+
description: "Configuring GitHub Copilot (copilot-instructions.md, PR-review patterns) — route to copilot-config"
|
|
5
5
|
triggers:
|
|
6
6
|
- keyword: "copilot"
|
|
7
7
|
- phrase: "copilot-instructions"
|
|
8
8
|
- phrase: "copilot pr review"
|
|
9
9
|
routes_to:
|
|
10
10
|
- "skill:copilot-config"
|
|
11
|
-
workspaces:
|
|
12
|
-
|
|
13
|
-
packs:
|
|
14
|
-
- meta
|
|
11
|
+
workspaces: [agent-config-maintainer, engineering]
|
|
12
|
+
packs: [meta]
|
|
15
13
|
---
|
|
16
14
|
|
|
17
15
|
# Copilot Routing
|
|
@@ -19,4 +17,4 @@ packs:
|
|
|
19
17
|
**Iron Law.** Tuning the GitHub Copilot AI assistant itself (instructions, PR-review patterns, suggestion behavior) → load the `copilot-config` skill, not `devcontainer` (which covers the dev environment Copilot runs inside).
|
|
20
18
|
|
|
21
19
|
Body migrated to `skill:copilot-config`. Disambiguates the copilot-config ↔ devcontainer cluster head per [`adr-architectural-consensus-mechanism`](../docs/contracts/adr-architectural-consensus-mechanism.md).
|
|
22
|
-
Trigger-set above activates this routing
|
|
20
|
+
Trigger-set above activates this routing on demand, independent of the discipline profile (ADR-110).
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: "auto"
|
|
3
|
+
tier: "2b"
|
|
4
|
+
description: "A beneficial change blocked by a past lock (honest-null, don't-relitigate memory, budget canon, ADR) must be surfaced with a council re-evaluation offer, never silently dropped"
|
|
5
|
+
alwaysApply: false
|
|
6
|
+
council_depth: deep
|
|
7
|
+
triggers:
|
|
8
|
+
- intent: "blocked by prior decision"
|
|
9
|
+
- intent: "revisit past verdict"
|
|
10
|
+
- keyword: "don't relitigate"
|
|
11
|
+
- keyword: "honest null"
|
|
12
|
+
- keyword: "already decided"
|
|
13
|
+
- keyword: "locked decision"
|
|
14
|
+
- keyword: "budget blocks"
|
|
15
|
+
workspaces: [agent-config-maintainer, engineering]
|
|
16
|
+
packs: [meta]
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
# Decision Revisit Gate
|
|
20
|
+
|
|
21
|
+
## The Iron Law
|
|
22
|
+
|
|
23
|
+
```
|
|
24
|
+
A LOCK IS A DECISION UNDER PAST CONDITIONS, NOT A PERMANENT LAW.
|
|
25
|
+
BENEFIT BLOCKED BY A LOCK → SURFACE + OFFER RE-EVALUATION.
|
|
26
|
+
NEVER SILENT COMPLIANCE. NEVER SILENT DROP OF A GOOD CHANGE.
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
An agent that finds a genuinely beneficial change blocked by a recorded
|
|
30
|
+
past decision — an honest-null eval verdict, a "don't relitigate"
|
|
31
|
+
memory or context note, a token-frugality/budget canon line, or an ADR —
|
|
32
|
+
does not quietly comply and drop the change. It surfaces the conflict
|
|
33
|
+
and offers the user a path to re-evaluate the lock. Progress means
|
|
34
|
+
adaptation: locks encode what was true when they were written, not a
|
|
35
|
+
ceiling on what the package may ever become.
|
|
36
|
+
|
|
37
|
+
## What counts as a "lock"
|
|
38
|
+
|
|
39
|
+
- An eval verdict recorded as an honest null (a mechanism was tested,
|
|
40
|
+
showed no lift, and the disposition says "don't rebuild without new
|
|
41
|
+
evidence").
|
|
42
|
+
- A memory entry or `agents/settings/contexts/` note tagged "don't
|
|
43
|
+
relitigate" / "settled" / a locked council convergence.
|
|
44
|
+
- A budget or frugality-canon line (`token-budget-discipline`,
|
|
45
|
+
`telegraph-speak`, thin-projector trimming) that rejects a change on
|
|
46
|
+
cost grounds alone.
|
|
47
|
+
- An ADR whose decision is being cited as a blocker for the current change.
|
|
48
|
+
|
|
49
|
+
## What to do when it fires
|
|
50
|
+
|
|
51
|
+
1. **Mechanism-match check — do this FIRST.** A verdict settles the
|
|
52
|
+
*mechanism it tested*, not every future proposal that resembles it.
|
|
53
|
+
Before applying the lock, verify the blocked change is actually the
|
|
54
|
+
same mechanism — not merely a similar-sounding one. A null on
|
|
55
|
+
hardened blocking enforcement does not automatically cover
|
|
56
|
+
discretionary contextual nudges; a null on one architecture does not
|
|
57
|
+
cover a materially different one. If the mechanism differs, the lock
|
|
58
|
+
does not apply — proceed, noting the distinction.
|
|
59
|
+
2. **If the mechanism genuinely matches**, do not silently comply.
|
|
60
|
+
Surface, in one short block:
|
|
61
|
+
- What change is blocked.
|
|
62
|
+
- Which lock blocks it (cite the memory/context/ADR).
|
|
63
|
+
- Under what conditions the lock was recorded (date, evidence, or
|
|
64
|
+
"maintainer decision" if settled-by-decision rather than
|
|
65
|
+
settled-by-evidence).
|
|
66
|
+
- What has changed since (new evidence, new model generation, new
|
|
67
|
+
tooling, repeated encounters) that makes revisiting worth the cost.
|
|
68
|
+
3. **Offer numbered options** (per [`user-interaction`](user-interaction.md)),
|
|
69
|
+
always including: re-evaluate the lock in the AI council. Other
|
|
70
|
+
options: keep the lock as-is, or proceed without the blocked change.
|
|
71
|
+
4. **On re-evaluation:** route to [`decision-review`](../skills/decision-review/SKILL.md)
|
|
72
|
+
for the backward-audit procedure and to [`ai-council`](../skills/ai-council/SKILL.md)
|
|
73
|
+
for the debate mechanics. This rule owns the obligation to surface;
|
|
74
|
+
those skills own the procedure.
|
|
75
|
+
5. **Record the outcome** with scope + `revisit-if` per
|
|
76
|
+
[`ai-council`](../skills/ai-council/SKILL.md)'s convergence-summary
|
|
77
|
+
contract — every re-evaluated lock gets a fresh, correctly-scoped
|
|
78
|
+
disposition, not a re-statement of the old one.
|
|
79
|
+
|
|
80
|
+
## When NOT to fire
|
|
81
|
+
|
|
82
|
+
- The blocked change has no real benefit — this rule is not a lever to
|
|
83
|
+
reopen every settled question; [`no-cheap-questions`](no-cheap-questions.md)
|
|
84
|
+
still governs whether the resulting numbered-options block is a real
|
|
85
|
+
question or noise. A revisit-offer with a genuine trade-off is never
|
|
86
|
+
a "cheap question" under that rule — but a revisit-offer with no
|
|
87
|
+
actual case for change is.
|
|
88
|
+
- The mechanism-match check (step 1) shows the lock is the same
|
|
89
|
+
mechanism and no new evidence exists — apply the lock, no surfacing
|
|
90
|
+
needed; this is the lock working as intended.
|
|
91
|
+
- The user already declined a revisit on this exact lock this
|
|
92
|
+
conversation — per [`scope-control § Decline = silence`](scope-control.md),
|
|
93
|
+
do not re-ask.
|
|
94
|
+
|
|
95
|
+
## Failure modes
|
|
96
|
+
|
|
97
|
+
- Treating a "don't relitigate" memory as permanently closed instead of
|
|
98
|
+
as settled-under-conditions-X.
|
|
99
|
+
- Applying a null verdict to a superficially similar but architecturally
|
|
100
|
+
different mechanism without running the mechanism-match check.
|
|
101
|
+
- Letting the token-frugality canon auto-reject a net-positive change
|
|
102
|
+
without surfacing the trade-off — see [`token-budget-discipline`](token-budget-discipline.md)'s
|
|
103
|
+
value-over-budget clause.
|
|
104
|
+
- Silently dropping a good idea because "we already decided this" —
|
|
105
|
+
the canonical failure this rule exists to stop.
|
|
106
|
+
|
|
107
|
+
## See also
|
|
108
|
+
|
|
109
|
+
- [`decision-review`](../skills/decision-review/SKILL.md) — the backward-audit
|
|
110
|
+
procedure this rule routes to when a lock is genuinely re-evaluated.
|
|
111
|
+
- [`ai-council`](../skills/ai-council/SKILL.md) — the re-evaluation mechanism;
|
|
112
|
+
owns the convergence-summary scope + `revisit-if` contract.
|
|
113
|
+
- [`decision-record`](../skills/decision-record/SKILL.md) — forward-flow decision
|
|
114
|
+
locking; the escalation litmus there names the reopening condition up front.
|
|
115
|
+
- [`token-budget-discipline`](token-budget-discipline.md) — the frugality-canon
|
|
116
|
+
value-over-budget escalation this rule's budget-lock case defers to.
|
|
117
|
+
- [`no-cheap-questions`](no-cheap-questions.md) — the question-quality floor a
|
|
118
|
+
revisit-offer must still clear.
|
|
119
|
+
- [`ask-when-uncertain`](ask-when-uncertain.md) — the numbered-options shape
|
|
120
|
+
used to present the revisit offer.
|
|
@@ -2,8 +2,7 @@
|
|
|
2
2
|
type: "auto"
|
|
3
3
|
tier: "2b"
|
|
4
4
|
alwaysApply: false
|
|
5
|
-
|
|
6
|
-
description: "Delegable multi-part work + auto-orchestration enabled — decompose, tier-size each slice, dispatch to subagents instead of doing it all in-session"
|
|
5
|
+
description: "Delegable multi-part work + auto-orchestration on — decompose, tier-size, dispatch to subagents instead of in-session"
|
|
7
6
|
triggers:
|
|
8
7
|
- keyword: "delegate"
|
|
9
8
|
- keyword: "orchestrate"
|
|
@@ -12,15 +11,15 @@ triggers:
|
|
|
12
11
|
- phrase: "review these"
|
|
13
12
|
- phrase: "analyze the codebase"
|
|
14
13
|
- phrase: "for each"
|
|
14
|
+
- keyword: "analyse"
|
|
15
|
+
- keyword: "analyze"
|
|
15
16
|
load_context:
|
|
16
17
|
- "../contexts/execution/auto-orchestration-activation.md"
|
|
17
18
|
- "../contexts/execution/auto-dispatch-classification.md"
|
|
18
19
|
routes_to:
|
|
19
20
|
- "skill:subagent-orchestration"
|
|
20
|
-
workspaces:
|
|
21
|
-
|
|
22
|
-
packs:
|
|
23
|
-
- engineering-base
|
|
21
|
+
workspaces: [engineering]
|
|
22
|
+
packs: [engineering-base]
|
|
24
23
|
---
|
|
25
24
|
|
|
26
25
|
# Delegation Policy
|
|
@@ -68,6 +67,11 @@ primitive → run in-session (clean no-op).
|
|
|
68
67
|
[`verify-budget`](../contexts/execution/verify-budget.md); the cross-model
|
|
69
68
|
judge Iron Law and the N=3 budget ([`autonomous-execution`](autonomous-execution.md))
|
|
70
69
|
are never lifted.
|
|
70
|
+
5. **Respect the failure-type stop and the ordering gate** — two consecutive
|
|
71
|
+
verification-failed returns from one subagent type stop that type for the
|
|
72
|
+
session (an application of the N=3 budget, no new mechanism); an ordered
|
|
73
|
+
slice never dispatches before its declared parent's return is verified.
|
|
74
|
+
Both per [`subagent-steering`](../contexts/execution/subagent-steering.md).
|
|
71
75
|
|
|
72
76
|
## Scope — does NOT
|
|
73
77
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
type: "auto"
|
|
3
3
|
tier: "2a"
|
|
4
|
-
description: "A provided prototype
|
|
4
|
+
description: "A provided prototype/mockup/design system is the spec — build 1:1; never swap fonts, controls, or layout unconfirmed"
|
|
5
5
|
triggers:
|
|
6
6
|
- keyword: "prototype"
|
|
7
7
|
- keyword: "mockup"
|
|
@@ -17,10 +17,8 @@ applies_to_user_types:
|
|
|
17
17
|
- "creator"
|
|
18
18
|
- "developer"
|
|
19
19
|
- "maintainer"
|
|
20
|
-
workspaces:
|
|
21
|
-
|
|
22
|
-
packs:
|
|
23
|
-
- engineering-base
|
|
20
|
+
workspaces: [engineering]
|
|
21
|
+
packs: [frontend-design]
|
|
24
22
|
---
|
|
25
23
|
|
|
26
24
|
# Design Fidelity
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
type: "auto"
|
|
3
3
|
tier: "3"
|
|
4
|
-
description: "Wiring DevContainers/Codespaces
|
|
4
|
+
description: "Wiring DevContainers/Codespaces (devcontainer.json, features, ports) — route to the devcontainer skill"
|
|
5
5
|
triggers:
|
|
6
6
|
- keyword: "devcontainer"
|
|
7
7
|
- keyword: "codespaces"
|
|
@@ -9,10 +9,8 @@ triggers:
|
|
|
9
9
|
- phrase: "devcontainer.json"
|
|
10
10
|
routes_to:
|
|
11
11
|
- "skill:devcontainer"
|
|
12
|
-
workspaces:
|
|
13
|
-
|
|
14
|
-
packs:
|
|
15
|
-
- meta
|
|
12
|
+
workspaces: [agent-config-maintainer, engineering]
|
|
13
|
+
packs: [meta]
|
|
16
14
|
---
|
|
17
15
|
|
|
18
16
|
# Devcontainer Routing
|
|
@@ -20,4 +18,4 @@ packs:
|
|
|
20
18
|
**Iron Law.** Wiring the dev environment itself (DevContainers, Codespaces, `devcontainer.json`, VS Code features) → load the `devcontainer` skill, not `copilot-config` (which tunes the Copilot AI on top).
|
|
21
19
|
|
|
22
20
|
Body migrated to `skill:devcontainer`. Disambiguates the devcontainer ↔ copilot-config cluster head per [`adr-architectural-consensus-mechanism`](../docs/contracts/adr-architectural-consensus-mechanism.md).
|
|
23
|
-
Trigger-set above activates this routing
|
|
21
|
+
Trigger-set above activates this routing on demand, independent of the discipline profile (ADR-110).
|
|
@@ -3,10 +3,8 @@ type: "always"
|
|
|
3
3
|
tier: "3"
|
|
4
4
|
description: "Always — direct, unembellished answers. No flattery, no invented facts (verify load-bearing claims, otherwise ask). Emojis only as functional markers. Brevity is the default."
|
|
5
5
|
alwaysApply: true
|
|
6
|
-
workspaces:
|
|
7
|
-
|
|
8
|
-
packs:
|
|
9
|
-
- meta
|
|
6
|
+
workspaces: [agent-config-maintainer, construction, engineering, finance, founder, gtm, legal-review-prep, ops, product, small-business]
|
|
7
|
+
packs: [meta]
|
|
10
8
|
---
|
|
11
9
|
|
|
12
10
|
# Direct Answers
|
|
@@ -22,7 +20,7 @@ ANSWER THE SUBSTANCE. SHIP THE TRUTH.
|
|
|
22
20
|
|
|
23
21
|
- No subjective judgment on user code unless evaluation was asked.
|
|
24
22
|
- "Good catch" / "you're right" only when literally true.
|
|
25
|
-
- Mistakes — one
|
|
23
|
+
- Mistakes — acknowledge in one sentence, switch behavior, no apology theatre.
|
|
26
24
|
|
|
27
25
|
## Iron Law 2 — No Invented Facts (severity-tiered)
|
|
28
26
|
|
|
@@ -34,7 +32,7 @@ WHEN VERIFICATION IS NOT WORTH THE COST → ASK.
|
|
|
34
32
|
|
|
35
33
|
Severity tiers (High = load-bearing · Medium = project-shape · Low = idioms), per-tier verification actions, and "just guess" override: [`asking-and-brevity-examples`](../docs/guidelines/agent-infra/asking-and-brevity-examples.md).
|
|
36
34
|
|
|
37
|
-
**Live-state facts — never from memory.** Git/PR
|
|
35
|
+
**Live-state facts — never from memory.** Git/PR merge/branch/sync/existence state is High-severity and decays silently (branch already merged, PR already closed, `main` already ahead). NEVER assert "merged / not merged / pending / still open / already in `main` / out of scope" — or any branch/sync/existence claim — from memory, a roadmap note, an earlier turn, or a recalled memory. Run the live check FIRST (`git log --first-parent origin/main`, `git branch -r --contains <ref>`, `gh pr view <n> --json state,mergedAt,baseRefName`); a state question is self-answering (per [`git-workflow`](../skills/git-workflow/SKILL.md)). Same for any external system that changes behind you (CI run, deploy, remote queue).
|
|
38
36
|
|
|
39
37
|
## Iron Law 3 — Brevity by Default
|
|
40
38
|
|
|
@@ -43,24 +41,22 @@ THE SHORTEST REPLY THAT FULLY ANSWERS THE QUESTION IS THE RIGHT REPLY.
|
|
|
43
41
|
LONG ANSWERS ARE A FAILURE MODE, NOT A SIGN OF EFFORT.
|
|
44
42
|
```
|
|
45
43
|
|
|
46
|
-
- Skip restating the question; skip "Let me…"
|
|
47
|
-
- Skip explaining tool use — the
|
|
48
|
-
-
|
|
49
|
-
- Multi-step → bullets
|
|
44
|
+
- Skip restating the question; skip "Let me…" announcements.
|
|
45
|
+
- Skip explaining tool use — the result speaks.
|
|
46
|
+
- Simple replies skip summary; **work replies** (multi-step change, roadmap/branch progress, created/updated PR) close with ONE end-summary, and a PR created this turn puts its raw URL as the **literal last line**.
|
|
47
|
+
- Multi-step → bullets; one-true-answer → one sentence.
|
|
50
48
|
|
|
51
|
-
Never overrides `user-interaction` (numbered options
|
|
49
|
+
Never overrides `user-interaction` (numbered options) or command steps. Reply-close detail → [`reply-close-mechanics`](../contexts/communication/rules-auto/reply-close-mechanics.md).
|
|
52
50
|
|
|
53
|
-
**Narration carve-out:**
|
|
51
|
+
**Narration carve-out:** only when both `personal.play_by_play` AND `verbosity.intent_announcements` are `true`.
|
|
54
52
|
|
|
55
53
|
## Emoji Scope — functional markers only
|
|
56
54
|
|
|
57
|
-
**Whitelist:** mode markers (`role-mode-adherence`); CLI status
|
|
58
|
-
**Blacklist:** opening flair (
|
|
55
|
+
**Whitelist:** mode markers (`role-mode-adherence`); CLI status `❌`/`✅`/`⚠️`; roadmap checkboxes `[x]`/`[~]`/`[-]`.
|
|
56
|
+
**Blacklist:** opening flair (✨🚀🎉💡🔥👍), empathy (❤️🤗😊), section dividers, reaction emojis. Unsure → blacklist.
|
|
59
57
|
|
|
60
58
|
## Failure modes & examples
|
|
61
59
|
|
|
62
|
-
|
|
63
|
-
Pattern Memory (wrong / right / why): [`direct-answers-demos`](../docs/guidelines/agent-infra/direct-answers-demos.md).
|
|
64
|
-
Outcome baseline: [`tests/golden/outcomes/direct_answers.json`](../../tests/golden/outcomes/direct_answers.json).
|
|
60
|
+
Triggers + corrections: [`asking-and-brevity-examples`](../docs/guidelines/agent-infra/asking-and-brevity-examples.md). Wrong/right/why: [`direct-answers-demos`](../docs/guidelines/agent-infra/direct-answers-demos.md). Baseline: [`tests/golden/outcomes/direct_answers.json`](../../tests/golden/outcomes/direct_answers.json).
|
|
65
61
|
|
|
66
62
|
Cross-rule index: [`frugality-charter`](../contexts/contracts/frugality-charter.md).
|
|
@@ -9,10 +9,8 @@ triggers:
|
|
|
9
9
|
- phrase: "inside the container"
|
|
10
10
|
routes_to:
|
|
11
11
|
- "skill:docker"
|
|
12
|
-
workspaces:
|
|
13
|
-
|
|
14
|
-
packs:
|
|
15
|
-
- engineering-base
|
|
12
|
+
workspaces: [engineering]
|
|
13
|
+
packs: [engineering-base]
|
|
16
14
|
---
|
|
17
15
|
|
|
18
16
|
# Docker Commands
|
|
@@ -20,4 +18,4 @@ packs:
|
|
|
20
18
|
**Iron Law.** Run PHP / artisan / composer / phpstan / rector / ecs / phpunit inside the project container, never on the host.
|
|
21
19
|
|
|
22
20
|
Body migrated to `skill:docker` (per P4 of `road-to-kernel-and-router.md`).
|
|
23
|
-
Trigger-set above activates this routing
|
|
21
|
+
Trigger-set above activates this routing on demand, independent of the discipline profile (ADR-110).
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
type: "auto"
|
|
3
3
|
tier: "2b"
|
|
4
4
|
alwaysApply: false
|
|
5
|
-
description: "Adopting a new domain track (mobile, ML,
|
|
5
|
+
description: "Adopting a new domain track (mobile, ML, IoT…) — demand/owner/CI gates BEFORE harvest"
|
|
6
6
|
triggers:
|
|
7
7
|
- intent: "adopt new domain"
|
|
8
8
|
- intent: "harvest new domain track"
|
|
@@ -15,10 +15,8 @@ validator_ignore:
|
|
|
15
15
|
- type: "substring"
|
|
16
16
|
pattern: ".agent-src.uncondensed/"
|
|
17
17
|
reason: "Rule names the authoring tree as the gated-entry location for new domain plates."
|
|
18
|
-
workspaces:
|
|
19
|
-
|
|
20
|
-
packs:
|
|
21
|
-
- meta
|
|
18
|
+
workspaces: [agent-config-maintainer]
|
|
19
|
+
packs: [meta]
|
|
22
20
|
---
|
|
23
21
|
|
|
24
22
|
# Domain Adoption Policy
|