@event4u/agent-config 7.4.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 +11 -1
- package/AGENTS.md +9 -9
- package/CHANGELOG.md +373 -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/review-changes.md +14 -7
- 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 +11 -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 +7 -8
- 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 +4 -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 +5 -7
- 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 +11 -10
- 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 +52 -42
- package/dist/agent-src/skills/adversarial-review/SKILL.md +1 -1
- 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/blade-ui/SKILL.md +4 -0
- 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 +5 -4
- 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 +5 -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-authoring/SKILL.md +1 -1
- 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 +45 -2
- package/dist/agent-src/skills/design-intelligence/references/design-languages.md +1 -1
- package/dist/agent-src/skills/design-review/SKILL.md +23 -11
- package/dist/agent-src/skills/design-system-capture/SKILL.md +41 -0
- package/dist/agent-src/skills/design-system-capture/reference/design-system-json.md +62 -0
- package/dist/agent-src/skills/design-tokens/SKILL.md +11 -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/existing-ui-audit/SKILL.md +6 -0
- package/dist/agent-src/skills/fe-design/SKILL.md +20 -0
- package/dist/agent-src/skills/flux/SKILL.md +4 -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/iconography/SKILL.md +1 -0
- package/dist/agent-src/skills/image-editing/evals/triggers.json +13 -13
- package/dist/agent-src/skills/judge-artifact-completeness/SKILL.md +136 -0
- package/dist/agent-src/skills/judge-artifact-completeness/calibration/fixtures.json +149 -0
- package/dist/agent-src/skills/judge-artifact-completeness/evals/triggers.json +17 -0
- package/dist/agent-src/skills/judge-artifact-completeness/rubrics/architecture-score.json +73 -0
- package/dist/agent-src/skills/judge-artifact-completeness/rubrics/pr-review-score.json +65 -0
- package/dist/agent-src/skills/judge-artifact-completeness/rubrics/roadmap-score.json +73 -0
- package/dist/agent-src/skills/judge-artifact-completeness/rubrics/ticket-quality-score.json +73 -0
- package/dist/agent-src/skills/judge-code-quality/SKILL.md +1 -0
- package/dist/agent-src/skills/judge-injection-defense/SKILL.md +99 -0
- package/dist/agent-src/skills/judge-injection-defense/calibration/fixtures.json +24 -0
- package/dist/agent-src/skills/judge-injection-defense/evals/triggers.json +17 -0
- package/dist/agent-src/skills/judge-injection-defense/fixtures/behavioral-fixtures.json +63 -0
- package/dist/agent-src/skills/judge-injection-defense/fixtures/coverage-report.md +53 -0
- package/dist/agent-src/skills/judge-injection-defense/fixtures/perturbation-taxonomy.json +110 -0
- package/dist/agent-src/skills/judge-synthesis/SKILL.md +134 -0
- package/dist/agent-src/skills/judge-synthesis/evals/triggers.json +17 -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/logo-generation/SKILL.md +1 -1
- package/dist/agent-src/skills/markitdown/SKILL.md +1 -1
- 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/react-shadcn-ui/SKILL.md +18 -0
- package/dist/agent-src/skills/react-shadcn-ui/reference/registry.md +59 -0
- package/dist/agent-src/skills/reasoning-orchestrator/SKILL.md +3 -1
- package/dist/agent-src/skills/refine-ticket/SKILL.md +5 -1
- package/dist/agent-src/skills/release-comms/SKILL.md +47 -46
- package/dist/agent-src/skills/roadmap-management/SKILL.md +25 -0
- package/dist/agent-src/skills/roadmap-writing/SKILL.md +33 -3
- package/dist/agent-src/skills/root-cause-frameworks/SKILL.md +0 -3
- package/dist/agent-src/skills/script-writing/SKILL.md +1 -1
- 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/sql-writing/SKILL.md +1 -1
- 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 +30 -1
- package/dist/agent-src/skills/tailwind-engineer/SKILL.md +4 -0
- package/dist/agent-src/skills/testing-anti-patterns/SKILL.md +1 -1
- package/dist/agent-src/skills/threat-modeling/SKILL.md +2 -2
- package/dist/agent-src/skills/token-optimizer/SKILL.md +1 -1
- package/dist/agent-src/skills/typography-system/SKILL.md +4 -3
- 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 +802 -258
- 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 +46 -28
- package/dist/discovery/trust-report.md +12 -11
- package/dist/discovery/workspaces.json +32 -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 +6 -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 +6 -6
- package/docs/benchmark.md +133 -2
- package/docs/benchmark.pinned.yml +31 -0
- package/docs/capability-matrix.md +1 -0
- package/docs/catalog.md +92 -74
- package/docs/command-flows.md +16 -4
- 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 +35 -0
- package/docs/guidelines/design-canon.md +62 -0
- 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 +71 -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 +208 -0
- package/src/scripts/design_slop_rules.ts +530 -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 +14 -3
- 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 +40 -17
- package/src/scripts/hooks/design_slop_hook.ts +181 -0
- 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_agent_security.ts +1 -0
- package/src/scripts/lint_agents_layout.ts +74 -15
- package/src/scripts/lint_bench_ab.ts +4 -1
- package/src/scripts/lint_confusables.ts +197 -0
- package/src/scripts/lint_design_slop.ts +245 -0
- 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
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
# Positioning evidence & decision (B0)
|
|
2
|
+
|
|
3
|
+
> Market-readiness roadmap B0. The evidenced differentiators the positioning
|
|
4
|
+
> rests on, the H1 options that were weighed, and the decision. Every
|
|
5
|
+
> differentiator below is **shipped and machine-checked**, not aspirational —
|
|
6
|
+
> each names the artifact that backs it.
|
|
7
|
+
|
|
8
|
+
## The problem
|
|
9
|
+
|
|
10
|
+
External adoption is ≈0. The prior README H1 — *"Governed skills, rules & work
|
|
11
|
+
journeys for AI coding agents"* — was abstract and interchangeable: no single
|
|
12
|
+
uncopyable hook. This document fixes the one sentence that carries the
|
|
13
|
+
differentiator.
|
|
14
|
+
|
|
15
|
+
## Evidenced differentiators
|
|
16
|
+
|
|
17
|
+
1. **Machine-checked honest marketing (the Claims-Ledger).** Every public claim
|
|
18
|
+
that carries a `<!-- claim:ID -->` marker must bind to a resolvable evidence
|
|
19
|
+
pointer in [`CLAIMS.md`](CLAIMS.md), or CI fails. Unbacked claims are logged
|
|
20
|
+
as visible debt rather than hidden. Evidence:
|
|
21
|
+
[`src/scripts/check_claims.ts`](../src/scripts/check_claims.ts),
|
|
22
|
+
[`CLAIMS.md`](CLAIMS.md).
|
|
23
|
+
2. **A self-verifying proof page.** [`proof.md`](proof.md) is generated from the
|
|
24
|
+
ledger (claim → evidence table) plus the honest-null benchmark runs
|
|
25
|
+
(*including the nulls*) plus a "verify it yourself" command block a skeptic
|
|
26
|
+
runs on a fresh checkout. Drift-gated in CI. Evidence:
|
|
27
|
+
[`src/scripts/build_proof.ts`](../src/scripts/build_proof.ts),
|
|
28
|
+
[`proof.md`](proof.md).
|
|
29
|
+
3. **Published honest-nulls.** Measured null results ship rather than hide (e.g.
|
|
30
|
+
a recursive-verification wrapper measured for null lift; an orchestration
|
|
31
|
+
auto-flip held at a documented honest-null). Evidence:
|
|
32
|
+
[`benchmark.md`](benchmark.md).
|
|
33
|
+
4. **No-runtime, host-agnostic governance.** Rules compile into each tool's
|
|
34
|
+
native format at projection time; the same governance rides on 7+ hosts with
|
|
35
|
+
no daemon. Surgical uninstall (JSON-pointer + SHA-256, never a neighbour
|
|
36
|
+
tool's keys). Evidence:
|
|
37
|
+
[`contracts/no-runtime-boundary.md`](contracts/no-runtime-boundary.md),
|
|
38
|
+
[`contracts/install-layout.md`](contracts/install-layout.md).
|
|
39
|
+
5. **A 30-second wedge.** `production-validator` — a single self-contained Claude
|
|
40
|
+
Code subagent (one `curl` into `.claude/agents/`) that runs the last gate
|
|
41
|
+
before "done": no mock/stub on the shipped path, validated against real
|
|
42
|
+
systems. Evidence: [`wedge/production-validator/`](wedge/production-validator/).
|
|
43
|
+
|
|
44
|
+
## Competitive frame
|
|
45
|
+
|
|
46
|
+
The dominant competitor wins on reach behind a loud, **unbacked** headline
|
|
47
|
+
performance number (present in several files, no reproducible methodology). The
|
|
48
|
+
only defensible, uncopyable inverse is **reproducible honesty**: they cannot
|
|
49
|
+
adopt a Claims-Ledger + proof page without exposing their own unbacked numbers.
|
|
50
|
+
"Honesty" alone can read as merely defensive, so the wedge and the governed
|
|
51
|
+
depth carry the offensive substance.
|
|
52
|
+
|
|
53
|
+
## H1 options weighed
|
|
54
|
+
|
|
55
|
+
- **Option 1 — verifiability as frame.** *"Agent Config — every claim
|
|
56
|
+
machine-checked, including 'zero runtime'."* Subline: 261 skills, 93 rules,
|
|
57
|
+
7 hosts; run the proof page yourself; no daemon, no lock-in, no unverifiable
|
|
58
|
+
promises.
|
|
59
|
+
- **Option 2 — architecture first.** *"Governed AI agents with zero runtime —
|
|
60
|
+
and a proof page you verify in 30 seconds."*
|
|
61
|
+
- **Option 3 — host-agnostic.** *"Write your agent governance once — run it in
|
|
62
|
+
7 hosts, with a proof page that can't lie."*
|
|
63
|
+
|
|
64
|
+
## Decision
|
|
65
|
+
|
|
66
|
+
**Adopted: Option 1** (verifiability as frame).
|
|
67
|
+
|
|
68
|
+
Council (claude-sonnet-4-5 + gpt-4o, 2026-07-04) split only on headline vs.
|
|
69
|
+
subline placement, and converged on the substance: the stateless / host-agnostic
|
|
70
|
+
/ no-runtime architecture is the technical moat, and the Claims-Ledger + proof
|
|
71
|
+
page is the maximally-uncopyable trust bootstrap. The decisive argument: in a
|
|
72
|
+
low-trust market, "zero runtime" on its own is just another unverifiable
|
|
73
|
+
promise — making **verifiability the frame** and the architectural claims *what
|
|
74
|
+
you verify* is what makes "zero runtime" credible. The maintainer made the final
|
|
75
|
+
call per the B0 "human picks" gate.
|
|
76
|
+
|
|
77
|
+
**Biggest risk (tracked):** "machine-checked" can read as compliance-boring
|
|
78
|
+
rather than a competitive weapon — mitigated by framing it offensively
|
|
79
|
+
("built to be checked, in a market that runs on unbacked headlines"), not
|
|
80
|
+
defensively.
|
|
81
|
+
|
|
82
|
+
## Applied to
|
|
83
|
+
|
|
84
|
+
- README H1 + hero line (this repo).
|
|
85
|
+
- `distribution/launch-story-draft.md` headline placeholder (resolved).
|
|
86
|
+
- `distribution/awesome-list-submission.md` (already Option-1-aligned).
|
package/docs/proof.md
ADDED
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
<!-- GENERATED by src/scripts/build_proof.ts — do NOT hand-edit.
|
|
2
|
+
Drift-checked in CI (`task build-proof-check`). Regenerate with
|
|
3
|
+
`./scripts-run src/scripts/build_proof` after editing docs/CLAIMS.md. -->
|
|
4
|
+
|
|
5
|
+
# Proof — verify our claims yourself
|
|
6
|
+
|
|
7
|
+
We sell falsifiability, so the selling is machine-checked. Every
|
|
8
|
+
public claim binds to resolvable evidence; a skeptic can reproduce
|
|
9
|
+
every check below on a fresh checkout. This page is itself generated
|
|
10
|
+
from those sources and fails CI if it drifts.
|
|
11
|
+
|
|
12
|
+
## See it run (< 60s, real output)
|
|
13
|
+
|
|
14
|
+

|
|
15
|
+
|
|
16
|
+
The recording is of the exact commands in § 5, nothing staged. Its
|
|
17
|
+
commands are re-executed in CI (`.github/workflows/proof-demo.yml`), so a
|
|
18
|
+
demo that showed something broken would turn CI red — the recording
|
|
19
|
+
cannot drift from current behavior.
|
|
20
|
+
|
|
21
|
+
## 1. Every public claim binds to evidence
|
|
22
|
+
|
|
23
|
+
Rendered from [`docs/CLAIMS.md`](CLAIMS.md). A `<!-- claim:ID -->` marker in
|
|
24
|
+
README/docs must resolve to a `backed` entry here with a resolving
|
|
25
|
+
evidence pointer, or `task check-claims` fails the build.
|
|
26
|
+
|
|
27
|
+
| Claim | Kind | Evidence | Resolves |
|
|
28
|
+
|---|---|---|---|
|
|
29
|
+
| On a weak host (claude-haiku-4-5) the package produces a significant, placebo-controlled discipline lift on scope/downstream traps; on a strong host the same measurement is a published null — the package transplants discipline a weak model lacks, not model intelligence. | quant | `docs/benchmark.md#weak-host-specific` | ✅ |
|
|
30
|
+
| The lift-carrying essential cut (kernel + downstream-changes) keeps a significant weak-host discipline lift at a fraction of the full load's tokens, and the lift is FAMILY-SCOPED — full-corpus P1 gate (n=90 pairs): scope/downstream family 0.533→1.000 (7/7 discordant favour essential), other families flat at ceiling, corpus-wide 1.71x tokens; the full load's residual over essential is not significant (p=0.37, n=24). Non-claim on the flip side — the balanced router profile (kernel + tier-1 by size) was removed after measuring a NULL lift (p=0.81, n=24, claude-haiku-4-5, 2026-07-07), and no full-tier recommendation exists anywhere until its own evidence gate passes. | quant | `docs/benchmark.md#Full-corpus P1 gate` | ✅ |
|
|
31
|
+
| The whole layer is compiled into host agents with zero runtime daemon. | qual | `docs/contracts/no-runtime-boundary.md#file-first, no-runtime suite` | ✅ |
|
|
32
|
+
| Removes only its own keys from a shared host config (matched by JSON-pointer + SHA-256), never a neighbour tool's entries. | qual | `docs/contracts/install-layout.md#JSON-pointer` | ✅ |
|
|
33
|
+
|
|
34
|
+
**4 backed claim(s)** — all evidence pointers resolve in CI.
|
|
35
|
+
|
|
36
|
+
We also publish our **debt**: 4 claim(s) are logged as
|
|
37
|
+
`unbacked` inventory in the ledger — not yet bound, and therefore not
|
|
38
|
+
allowed to carry a marker in public prose. Hiding them would be the
|
|
39
|
+
opposite of the point.
|
|
40
|
+
|
|
41
|
+
## 2. We publish honest nulls
|
|
42
|
+
|
|
43
|
+
Benchmark results — **including the runs where the package changed nothing** —
|
|
44
|
+
live in [`docs/benchmark.md`](benchmark.md). We do not delete a measured null to
|
|
45
|
+
make a number look better; the null is the evidence of honesty.
|
|
46
|
+
|
|
47
|
+
## 3. Known limits (published, witness-tested)
|
|
48
|
+
|
|
49
|
+
Each limitation below is stated by the skill itself and carries a witness
|
|
50
|
+
test that reproduces it. If the limitation is ever fixed, its witness goes
|
|
51
|
+
red — so a "Known limit" can never quietly become false.
|
|
52
|
+
|
|
53
|
+
| skill | known limit | witness |
|
|
54
|
+
|---|---|---|
|
|
55
|
+
| `check-refs` | Only validates references to known-root paths (docs/, skills/, rules/, commands/, contexts/, personas/, …). A relative-path link such as `./sibling.md` or `../foo.md` is not matched, so a broken relative link is never reported. | [`tests/scripts/witness/check_refs_relative_gap.test.ts`](../tests/scripts/witness/check_refs_relative_gap.test.ts) |
|
|
56
|
+
|
|
57
|
+
## 4. What is checkable — us vs. the category
|
|
58
|
+
|
|
59
|
+
This is not a takedown — the point is the last column. For each claim,
|
|
60
|
+
our evidence is a pointer you can resolve on a fresh checkout; the wider
|
|
61
|
+
category is described only by what is publicly observable, never a named
|
|
62
|
+
competitor and never a counter-claim to anyone's headline number. A claim
|
|
63
|
+
is "checkable" only when its `our evidence` pointer resolves — CI enforces
|
|
64
|
+
that (`task check-comparison`), so this column can never lie.
|
|
65
|
+
|
|
66
|
+
| Claim | Our evidence | The category | Checkable? |
|
|
67
|
+
|---|---|---|---|
|
|
68
|
+
| No runtime — no background daemon, no state database, no auto-write memory. | [`docs/contracts/no-runtime-boundary.md#file-first`](../docs/contracts/no-runtime-boundary.md) | Swarm-runtime tools in this category ship a background process and/or a state store by design; that is an architectural fact of the runtime approach, not a defect. | ✅ |
|
|
69
|
+
| Capability/benchmark results are published — including the runs where the package changed nothing. | [`docs/benchmark.md`](../docs/benchmark.md) | A category headline figure (e.g. an '84.8%' score) appears across marketing surfaces with no reproducible methodology published — so it cannot be verified either way. | ✅ |
|
|
70
|
+
| Every public claim binds to machine-checked evidence. | [`docs/CLAIMS.md`](../docs/CLAIMS.md) | Marketing claims in this category are not bound to a machine-checked ledger a reader can reproduce. | ✅ |
|
|
71
|
+
| Skills publish their own known limits, each with a witness test. | [`tests/scripts/witness/check_refs_relative_gap.test.ts`](../tests/scripts/witness/check_refs_relative_gap.test.ts) | Published known-limitation surfaces backed by reproducing tests are not a standard artifact in this category. | ✅ |
|
|
72
|
+
|
|
73
|
+
## 5. Verify it yourself
|
|
74
|
+
|
|
75
|
+
On a fresh checkout, reproduce the claims above:
|
|
76
|
+
|
|
77
|
+
```bash
|
|
78
|
+
task check-claims # every markered public claim binds to resolvable evidence
|
|
79
|
+
task check-refs # no broken internal references
|
|
80
|
+
task check-skill-gaps # every logged known-limit cites a real witness test
|
|
81
|
+
task check-comparison # every comparison-table "our evidence" pointer resolves
|
|
82
|
+
task build-proof-check # this page is in sync with its sources
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
If a claim ever loses its binding, or this page drifts from the ledger,
|
|
86
|
+
CI goes red. Reproducibility is the proof.
|
package/docs/skills-catalog.md
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
All **251 skills** available in this package, in alphabetical order.
|
|
4
4
|
Click a skill name to open its SKILL.md and read the full guidance.
|
|
5
5
|
|
|
6
|
-
> **Regenerate:**
|
|
6
|
+
> **Regenerate:** `./scripts-run src/scripts/generate_catalog`
|
|
7
7
|
> This file is auto-generated from `SKILL.md` frontmatter — do not edit manually.
|
|
8
8
|
|
|
9
9
|
| Skill | What your agent learns |
|
package/docs/troubleshooting.md
CHANGED
|
@@ -6,8 +6,8 @@ and include the output of:
|
|
|
6
6
|
|
|
7
7
|
```bash
|
|
8
8
|
composer show event4u/agent-config # or: npm ls @event4u/agent-config
|
|
9
|
-
|
|
10
|
-
|
|
9
|
+
node --version
|
|
10
|
+
|
|
11
11
|
bash scripts/install --verbose --dry-run
|
|
12
12
|
```
|
|
13
13
|
|
|
@@ -111,17 +111,17 @@ we cannot validate changes without access to a Windows setup.
|
|
|
111
111
|
|
|
112
112
|
---
|
|
113
113
|
|
|
114
|
-
## `
|
|
114
|
+
## `Node.js is required but was not found`
|
|
115
115
|
|
|
116
|
-
The
|
|
116
|
+
The installer is Node.js-based and needs Node 20.11+ on PATH.
|
|
117
117
|
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
118
|
+
\- **macOS**: install via [nodejs.org](https://nodejs.org/) or `brew install node`.
|
|
119
|
+
\- **Linux**: `apt install nodejs` / `dnf install nodejs` / equivalent (ensure Node 20+).
|
|
120
|
+
\- **Windows**: install from [nodejs.org](https://nodejs.org/); ensure "Add to PATH" is checked.
|
|
121
121
|
or from the Microsoft Store; ensure "Add python.exe to PATH" is
|
|
122
122
|
checked.
|
|
123
123
|
|
|
124
|
-
|
|
124
|
+
|
|
125
125
|
on Python 3 — it is required for contributors, not just consumers.
|
|
126
126
|
|
|
127
127
|
---
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
# production-validator — the 30-second Claude Code subagent
|
|
2
|
+
|
|
3
|
+
A single, self-contained Claude Code subagent that runs the **last gate before
|
|
4
|
+
"done"**: it audits that no mock, stub, fake, `TODO`, or placeholder remains on
|
|
5
|
+
your shipped code, and that the change was actually exercised against a real
|
|
6
|
+
system — not just green tests over hollow code.
|
|
7
|
+
|
|
8
|
+
One file. No install of anything else. No runtime, no daemon, no account.
|
|
9
|
+
|
|
10
|
+
## What it does
|
|
11
|
+
|
|
12
|
+
Before you call a feature done, `@production-validator` greps the shipped path
|
|
13
|
+
(excluding tests/mocks) for hollow implementations, checks that each "done"
|
|
14
|
+
claim has real-system evidence, and returns a `READY` / `NOT READY` verdict with
|
|
15
|
+
`file:line` citations. It reads and runs; it never modifies your code.
|
|
16
|
+
|
|
17
|
+
## Install (30 seconds)
|
|
18
|
+
|
|
19
|
+
Drop the one file into your repo's project-level agents directory:
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
mkdir -p .claude/agents
|
|
23
|
+
curl -fsSL https://raw.githubusercontent.com/event4u-app/agent-config/main/docs/wedge/production-validator/production-validator.md \
|
|
24
|
+
-o .claude/agents/production-validator.md
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
Or copy [`production-validator.md`](production-validator.md) into
|
|
28
|
+
`.claude/agents/` by hand. That's the whole install.
|
|
29
|
+
|
|
30
|
+
## Use
|
|
31
|
+
|
|
32
|
+
In Claude Code, ask for it explicitly or let it auto-delegate before you ship:
|
|
33
|
+
|
|
34
|
+
```text
|
|
35
|
+
@production-validator check this branch is actually done
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
Example output:
|
|
39
|
+
|
|
40
|
+
```text
|
|
41
|
+
production-validator
|
|
42
|
+
blocker src/payments/refund.ts:42 — refund() returns a hard-coded {ok:true};
|
|
43
|
+
no call to the payment provider on the shipped path.
|
|
44
|
+
must-fix src/payments/refund.test.ts mocks the provider; no integration run
|
|
45
|
+
exercises the real API.
|
|
46
|
+
Final gate: NOT READY — refund() is a stub; validate against the real provider.
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
## Why this one
|
|
50
|
+
|
|
51
|
+
It carries an anti-hallucination discipline (Evidence-First): "done" is a claim
|
|
52
|
+
until the real path is shown to run. It is read-only and single-purpose, so it is
|
|
53
|
+
safe to try on any repo in one command.
|
|
54
|
+
|
|
55
|
+
Part of [`event4u/agent-config`](../../../README.md) — a governed skill / rule /
|
|
56
|
+
persona layer for AI coding agents. This subagent is the standalone wedge; the
|
|
57
|
+
full suite adds the router, orchestration, and governance around it.
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: production-validator
|
|
3
|
+
description: Use before declaring a feature done or a PR ready. Audits that no mock, stub, fake, TODO, or placeholder remains on the shipped (non-test) path and that the change ran against real systems — not just green tests over hollow code.
|
|
4
|
+
tools: Read, Grep, Glob, Bash
|
|
5
|
+
model: inherit
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
You are the **Production Validator** — the last gate before "done".
|
|
9
|
+
|
|
10
|
+
Your single question: **is the shipped code real, or does a green test hide a stub?**
|
|
11
|
+
A passing test suite is a claim, not proof. Your job is to confirm the
|
|
12
|
+
implementation under the test actually exists and ran against a real system.
|
|
13
|
+
|
|
14
|
+
## What you hunt
|
|
15
|
+
|
|
16
|
+
- `mock`, `stub`, `fake`, `spy`, or in-memory doubles that leaked onto a
|
|
17
|
+
**non-test** (shipped) code path.
|
|
18
|
+
- `TODO`, `FIXME`, `NotImplemented`, `raise NotImplementedError`, `throw new
|
|
19
|
+
Error("not implemented")`, `pass`, or empty function bodies on the shipped path.
|
|
20
|
+
- Hard-coded fixture values returned from production code (a function that always
|
|
21
|
+
returns the same canned result regardless of input).
|
|
22
|
+
- Features whose only validation is against mocks — never against the real
|
|
23
|
+
dependency (DB, HTTP API, queue, filesystem, external service).
|
|
24
|
+
|
|
25
|
+
## How you work
|
|
26
|
+
|
|
27
|
+
1. Scope to the shipped diff/paths under review — exclude `test`, `tests`,
|
|
28
|
+
`spec`, `__tests__`, `*.test.*`, `*.spec.*`, fixtures, and mocks directories.
|
|
29
|
+
2. Grep the shipped path for the markers above (`mock|stub|fake|TODO|FIXME|
|
|
30
|
+
NotImplemented|placeholder`). For each hit, decide: real code, or hollow?
|
|
31
|
+
3. For each "done" claim, find evidence the real path executed — a run against a
|
|
32
|
+
real dependency, an integration test hitting the real system, or a manual
|
|
33
|
+
trace. Green unit tests over mocks are **not** that evidence.
|
|
34
|
+
4. Apply the removal test: *if every test double were deleted, would this feature
|
|
35
|
+
still function end-to-end?* If no, it is not done.
|
|
36
|
+
|
|
37
|
+
## What you do NOT do
|
|
38
|
+
|
|
39
|
+
- You do not judge whether the tests are well-designed or the coverage is
|
|
40
|
+
sufficient — that is a QA concern, not yours.
|
|
41
|
+
- You do not review performance, style, or architecture.
|
|
42
|
+
- You do not modify code. You read, grep, run to verify, and report.
|
|
43
|
+
|
|
44
|
+
## Output
|
|
45
|
+
|
|
46
|
+
Report a short verdict:
|
|
47
|
+
|
|
48
|
+
- **Severity** per finding: `blocker` (a hollow implementation on the shipped
|
|
49
|
+
path, or a "done" claim with no real-system validation) · `must-fix` · `note`.
|
|
50
|
+
- **Evidence**: cite `file:line` for every mock/stub/placeholder or the exact
|
|
51
|
+
gap in real-system validation.
|
|
52
|
+
- **Final gate line**: `READY` only if no blockers remain and the real path is
|
|
53
|
+
shown to run; otherwise `NOT READY — <one-line reason>`.
|
|
54
|
+
|
|
55
|
+
A single confirmed hollow path on shipped code is a `blocker`, never a nit.
|
|
56
|
+
When in doubt, withhold `READY` and name what evidence is missing.
|
package/docs/wizard.md
CHANGED
|
@@ -118,7 +118,7 @@ is unaffected.
|
|
|
118
118
|
|
|
119
119
|
Suppress the auto-launch with `--no-ui`, `AGENT_CONFIG_NO_UI=1`, or
|
|
120
120
|
by running in CI (`CI=1`). Preview the gate verdict without
|
|
121
|
-
installing anything via `
|
|
121
|
+
installing anything via `npx @event4u/agent-config install --dry-run`,
|
|
122
122
|
which prints a plan summary and exits 0 with zero filesystem
|
|
123
123
|
writes.
|
|
124
124
|
|
|
@@ -147,7 +147,7 @@ With the GUI suppressed, pass profile + pack on the command line —
|
|
|
147
147
|
`npx -y @event4u/agent-config init --no-ui --profile=developer
|
|
148
148
|
--pack=engineering-base` — or hand-edit `.agent-settings.yml`
|
|
149
149
|
directly. Preview the gate verdict and the planned writes with
|
|
150
|
-
`
|
|
150
|
+
`npx @event4u/agent-config install --dry-run` (zero filesystem writes,
|
|
151
151
|
exits 0). Settings can still be hand-edited at any time; the GUI
|
|
152
152
|
is opt-in, not required.
|
|
153
153
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@event4u/agent-config",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "8.0.0",
|
|
4
4
|
"description": "Universal AI Agent OS — audited skills, governance rules, commands, and templates for AI coding tools (Claude Code, Cursor, Windsurf, Copilot).",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"private": false,
|
|
@@ -52,8 +52,53 @@ profile:
|
|
|
52
52
|
# tree (.augment/) always project the full set in 6.0.0.
|
|
53
53
|
projection:
|
|
54
54
|
mode: legacy-all
|
|
55
|
-
|
|
56
|
-
# ---
|
|
55
|
+
# --- Consumer-scoped RULE projection (road-to-request-scoped-rule-load P1,
|
|
56
|
+
# opt-in) ---
|
|
57
|
+
# Workspace scope for the RULE layer only (independent of `mode` above,
|
|
58
|
+
# which covers skills/commands). Absent or empty = legacy-all: every rule
|
|
59
|
+
# projects, exactly as today. Non-empty = only rules whose `workspaces:`
|
|
60
|
+
# frontmatter intersects this list project into .claude/rules,
|
|
61
|
+
# .cursor/rules, .windsurf/rules, .clinerules and .windsurfrules. Kernel
|
|
62
|
+
# rules ALWAYS project (unconditional by definition); untagged rules fail
|
|
63
|
+
# safe and ship. Example consumer scope:
|
|
64
|
+
# rule_workspaces: [engineering]
|
|
65
|
+
# Default flip to a scoped value is a human release gate — see
|
|
66
|
+
# agents/settings/contexts/consumer-scoping-audit-2026-07-07.md.
|
|
67
|
+
# rule_workspaces: []
|
|
68
|
+
#
|
|
69
|
+
# Optional second axis, same semantics per pack ids (packs.yml). When set,
|
|
70
|
+
# a non-kernel rule also needs a `packs:` intersection to project — e.g.
|
|
71
|
+
# deselecting `frontend-design` removes ui-audit-gate + design-fidelity.
|
|
72
|
+
# rule_packs: []
|
|
73
|
+
|
|
74
|
+
# --- Discipline profile (successor knob, opt-in until the evidence gates pass) ---
|
|
75
|
+
#
|
|
76
|
+
# The ONE runtime knob for the discipline-rule tier (council verdicts
|
|
77
|
+
# 2026-07-07: weak-host-lift-tiering + token-program-integration). Measured
|
|
78
|
+
# on claude-haiku-4-5 (docs/benchmark.md § Cost-factor sweep):
|
|
79
|
+
#
|
|
80
|
+
# off = kernel only (9 Iron-Law rules, ~1x tokens). For hosts with a
|
|
81
|
+
# MEASURED null lift (src/config/host-capabilities.yml).
|
|
82
|
+
# essential = kernel + the lift-carrying rules (downstream-changes;
|
|
83
|
+
# scope-control is already kernel). ~3.3x tokens, keeps a
|
|
84
|
+
# significant discipline lift (+0.458, p=0.0135) — the full
|
|
85
|
+
# package's residual over it is not significant (p=0.37).
|
|
86
|
+
# full = every rule tier (~11.7x tokens). EXPERIMENTAL opt-in only:
|
|
87
|
+
# residual lift over essential not established.
|
|
88
|
+
# auto = resolve per session against host-capabilities.yml — model on
|
|
89
|
+
# the measured NULL-lift list -> off, otherwise -> essential.
|
|
90
|
+
#
|
|
91
|
+
# This key WINS over the legacy `rule_loading_tier` below (mapping when
|
|
92
|
+
# absent: minimal->off, balanced->essential, full->full, custom->custom).
|
|
93
|
+
# The installer fills the placeholder per preset with the value that
|
|
94
|
+
# preserves each preset's prior behaviour (minimal->off,
|
|
95
|
+
# balanced->essential, full->full) — same resolution as the legacy
|
|
96
|
+
# mapping, no behaviour change. The flip of the shipped default to
|
|
97
|
+
# `auto` is evidence-gated (P2 non-Claude replication, see
|
|
98
|
+
# agents/roadmaps/road-to-discipline-profile-tiering.md).
|
|
99
|
+
discipline_profile: __DISCIPLINE_PROFILE__
|
|
100
|
+
|
|
101
|
+
# --- Cost profile (legacy knob — superseded by discipline_profile above) ---
|
|
57
102
|
#
|
|
58
103
|
# Master switch that controls which rule tiers load each session.
|
|
59
104
|
# See docs/customization.md for the authoritative description and
|
|
@@ -100,7 +145,7 @@ lean_projection:
|
|
|
100
145
|
#
|
|
101
146
|
# Configurable in the browser setup wizard (Setup → Skills → Token budget).
|
|
102
147
|
tokens:
|
|
103
|
-
rich_skills: on
|
|
148
|
+
rich_skills: "on"
|
|
104
149
|
|
|
105
150
|
# --- Cost tracking + budget enforcement ---
|
|
106
151
|
#
|
|
@@ -320,6 +365,16 @@ reasoning:
|
|
|
320
365
|
# in the same response — that cadence is governed by `roadmap-progress-sync`
|
|
321
366
|
# and is non-negotiable. This setting only governs *quality tool runs*.
|
|
322
367
|
roadmap:
|
|
368
|
+
# PER-ROADMAP OVERRIDE NOTE — `execution.mode` frontmatter
|
|
369
|
+
# (autonomous | phase-checkpoints | interactive, per
|
|
370
|
+
# templates/roadmaps.md rule 18) changes ONLY the run's interaction
|
|
371
|
+
# pattern: which asks are batched into the run-start execution
|
|
372
|
+
# contract and where checkpoint prompts fire. It overrides NONE of
|
|
373
|
+
# the keys below — `skip_pre_run_gate`, `quality_cadence`, and
|
|
374
|
+
# `dashboard_regen_cadence` keep their global meaning in every mode,
|
|
375
|
+
# and no mode lifts a safety floor. See
|
|
376
|
+
# contexts/execution/roadmap-execution-contract.md.
|
|
377
|
+
|
|
323
378
|
# Skip the /roadmap:process-* pre-run confirmation gate (true, false).
|
|
324
379
|
# true = default. The command name names the scope; a discoverable
|
|
325
380
|
# single active roadmap (or a named one) starts the loop
|
|
@@ -731,6 +786,18 @@ hooks:
|
|
|
731
786
|
rtk_wrap:
|
|
732
787
|
enabled: false
|
|
733
788
|
|
|
789
|
+
# PreToolUse anti-slop nudge (road-to-anti-slop-detector Phase 3). Default-OFF.
|
|
790
|
+
# When enabled, runs the lint_design_slop registry against about-to-be-written
|
|
791
|
+
# UI content (html/css/jsx/…) and WARNS (exit 2, never blocks) on P0/P1
|
|
792
|
+
# aesthetic tells — the side-stripe signature, gradient-text, magic z-index,
|
|
793
|
+
# etc. Flags are rebuttable: declare intent in DESIGN.md, design-slop-disable,
|
|
794
|
+
# or proceed. Anti-loop: a file::rule signature surfaced 3x goes silent so it
|
|
795
|
+
# never traps the agent. The universal gate is the lint_design_slop linter/CI;
|
|
796
|
+
# this hook is a host-limited convenience layer (pre_tool_use fires on ~2-3
|
|
797
|
+
# hosts). Opt in once you trust the signal-to-noise on your UI.
|
|
798
|
+
design_slop:
|
|
799
|
+
enabled: false
|
|
800
|
+
|
|
734
801
|
# --- Decision engine ---
|
|
735
802
|
#
|
|
736
803
|
# Controllable gates layered over the observability surface. Absent
|
|
@@ -841,6 +908,6 @@ legal_review_prep:
|
|
|
841
908
|
# key. Keep the key in your user-global settings so encrypted provenance stays
|
|
842
909
|
# recoverable across fresh clones.
|
|
843
910
|
#
|
|
844
|
-
# Generate one:
|
|
911
|
+
# Generate one: ./scripts-run src/scripts/_lib/link_crypto keygen
|
|
845
912
|
# secrets:
|
|
846
913
|
# link_encryption_key: "<paste generated key here>"
|