@event4u/agent-config 8.4.0 → 8.5.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 +1 -1
- package/CHANGELOG.md +73 -0
- package/README.md +17 -5
- package/dist/agent-src/README.md +1 -1
- package/dist/agent-src/commands/{analyze-reference-repo.md → analyze/reference-repo.md} +3 -1
- package/dist/agent-src/commands/analyze.md +9 -6
- package/dist/agent-src/commands/{bug-fix.md → bug/fix.md} +3 -1
- package/dist/agent-src/commands/{bug-investigate.md → bug/investigate.md} +4 -2
- package/dist/agent-src/commands/bug.md +59 -0
- package/dist/agent-src/commands/{set-cost-profile.md → cost/profile.md} +9 -6
- package/dist/agent-src/commands/{cost-report.md → cost/report.md} +18 -17
- package/dist/agent-src/commands/cost.md +57 -0
- package/dist/agent-src/commands/evals/{review-changes.json → review.json} +12 -8
- package/dist/agent-src/commands/{quality-fix.md → fix/quality.md} +5 -2
- package/dist/agent-src/commands/fix.md +7 -4
- package/dist/agent-src/commands/optimize/project.md +250 -0
- package/dist/agent-src/commands/{optimize-prompt.md → optimize/prompt.md} +3 -2
- package/dist/agent-src/commands/optimize.md +17 -12
- package/dist/agent-src/commands/{package-reset.md → package/reset.md} +2 -0
- package/dist/agent-src/commands/{package-test.md → package/test.md} +3 -1
- package/dist/agent-src/commands/package.md +56 -0
- package/dist/agent-src/commands/{project-analyze.md → project/analyze.md} +10 -8
- package/dist/agent-src/commands/{project-health.md → project/health.md} +2 -0
- package/dist/agent-src/commands/project.md +60 -0
- package/dist/agent-src/commands/{review-changes.md → review/changes.md} +26 -24
- package/dist/agent-src/commands/{review-routing.md → review/routing.md} +21 -17
- package/dist/agent-src/commands/review.md +61 -0
- package/dist/agent-src/commands/security-audit-config.md +24 -23
- package/dist/agent-src/commands/{sync-agent-settings.md → sync/agent-settings.md} +11 -7
- package/dist/agent-src/commands/{sync-gitignore → sync/gitignore}/fix.md +36 -27
- package/dist/agent-src/commands/{sync-gitignore.md → sync/gitignore.md} +22 -21
- package/dist/agent-src/commands/sync.md +58 -0
- package/dist/agent-src/commands/{e2e-heal.md → tests/e2e-heal.md} +5 -2
- package/dist/agent-src/commands/{e2e-plan.md → tests/e2e-plan.md} +5 -2
- package/dist/agent-src/commands/tests.md +11 -5
- package/dist/agent-src/contexts/augment-infrastructure.md +3 -3
- package/dist/agent-src/contexts/execution/toolchain-resolver.md +1 -1
- package/dist/agent-src/contexts/skills-and-commands.md +2 -2
- package/dist/agent-src/rules/external-reference-deep-dive.md +1 -1
- package/dist/agent-src/skills/finishing-a-development-branch/SKILL.md +2 -2
- package/dist/agent-src/skills/judge-artifact-completeness/SKILL.md +1 -1
- package/dist/agent-src/skills/judge-bug-hunter/SKILL.md +1 -1
- package/dist/agent-src/skills/judge-code-quality/SKILL.md +1 -1
- package/dist/agent-src/skills/judge-security-auditor/SKILL.md +1 -1
- package/dist/agent-src/skills/judge-synthesis/SKILL.md +1 -1
- package/dist/agent-src/skills/judge-test-coverage/SKILL.md +1 -1
- package/dist/agent-src/skills/markitdown/SKILL.md +1 -1
- package/dist/agent-src/skills/mobile-e2e-strategy/SKILL.md +5 -5
- package/dist/agent-src/skills/prompt-optimizer/SKILL.md +2 -2
- package/dist/agent-src/skills/quality-tools/SKILL.md +1 -1
- package/dist/agent-src/skills/repomix-packer/SKILL.md +1 -1
- package/dist/agent-src/skills/requesting-code-review/SKILL.md +2 -2
- package/dist/agent-src/skills/verify-repair-loop/SKILL.md +2 -2
- package/dist/agent-src/templates/agent-settings.md +1 -1
- package/dist/agent-src/templates/agents/agent-project-settings.example.yml +2 -2
- package/dist/agent-src/templates/scripts/work_engine/stack/runner.ts +1 -1
- package/dist/cli/commands/config.js +44 -0
- package/dist/cli/commands/config.js.map +1 -0
- package/dist/cli/commands/uiServe.js +1 -0
- package/dist/cli/commands/uiServe.js.map +1 -1
- package/dist/cli/help.js +38 -0
- package/dist/cli/help.js.map +1 -0
- package/dist/cli/initRouting.js +16 -1
- package/dist/cli/initRouting.js.map +1 -1
- package/dist/cli/main.js +43 -37
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/registry.js +45 -44
- package/dist/cli/registry.js.map +1 -1
- package/dist/discovery/deprecation-report.md +1 -1
- package/dist/discovery/discovery-manifest.json +419 -210
- package/dist/discovery/discovery-manifest.json.sha256 +1 -1
- package/dist/discovery/discovery-manifest.summary.md +4 -4
- package/dist/discovery/orphan-report.md +1 -1
- package/dist/discovery/packs.json +31 -25
- package/dist/discovery/trust-report.md +2 -2
- package/dist/discovery/workspaces.json +30 -24
- package/dist/install/install.mjs +6064 -159
- package/dist/install/selectedTools.js +39 -10
- package/dist/install/selectedTools.js.map +1 -1
- package/dist/mcp/registry-manifest.json +3 -3
- package/dist/server/app.js +15 -3
- package/dist/server/app.js.map +1 -1
- package/dist/server/routes/ping.js +16 -0
- package/dist/server/routes/ping.js.map +1 -1
- package/dist/server/routes/settings.js +42 -6
- package/dist/server/routes/settings.js.map +1 -1
- package/dist/server/routes/settingsChanges.js +55 -0
- package/dist/server/routes/settingsChanges.js.map +1 -0
- package/dist/server/routes/userMd.js +7 -2
- package/dist/server/routes/userMd.js.map +1 -1
- package/dist/server/routes/wizard.js +76 -14
- package/dist/server/routes/wizard.js.map +1 -1
- package/dist/server/writeRoot.js +17 -0
- package/dist/server/writeRoot.js.map +1 -1
- package/dist/shared/settingsSurface.js +120 -0
- package/dist/shared/settingsSurface.js.map +1 -0
- package/dist/ui/assets/index-BPFMZWUs.css +1 -0
- package/dist/ui/assets/index-BiEZiZ31.js +40 -0
- package/dist/ui/assets/index-BiEZiZ31.js.map +1 -0
- package/dist/ui/index.html +15 -2
- package/docs/CLAIMS.md +20 -15
- package/docs/architecture.md +1 -1
- package/docs/catalog.md +37 -31
- package/docs/command-flows.md +22 -16
- package/docs/contracts/command-clusters.md +39 -9
- package/docs/contracts/file-ownership-matrix.json +21 -0
- package/docs/contracts/frontmatter-contract.md +1 -1
- package/docs/contracts/gui-wizard.md +16 -4
- package/docs/contracts/iron-law-overrides.txt +1 -0
- package/docs/contracts/rule-classification.md +2 -2
- package/docs/contracts/settings-api.md +58 -2
- package/docs/contracts/surface-matrix.md +5 -0
- package/docs/cookbook.md +7 -7
- package/docs/decisions/ADR-114-commit-policy-iron-law-override.md +74 -0
- package/docs/decisions/ADR-115-command-cluster-consolidation-phase-4.md +91 -0
- package/docs/decisions/INDEX.md +2 -0
- package/docs/featured-commands.md +1 -1
- package/docs/featured-skills.md +4 -4
- package/docs/flows.md +2 -2
- package/docs/getting-started-by-role.md +1 -1
- package/docs/getting-started-laravel.md +1 -1
- package/docs/getting-started.md +6 -3
- package/docs/governance-advantage.md +1 -1
- package/docs/guidelines/agent-infra/5w2h-analysis.md +1 -1
- package/docs/guidelines/agent-infra/ios-simulator-guide.md +1 -1
- package/docs/proof.md +11 -2
- package/package.json +6 -1
- package/src/agent-src/README.md +64 -0
- package/src/agent-src/scripts/archive_completed_roadmaps.ts +497 -0
- package/src/agent-src/scripts/scan-seeder-violations.php +145 -0
- package/src/agent-src/scripts/update_roadmap_progress.ts +1087 -0
- package/src/agent-src/templates/AGENTS.md +34 -0
- package/src/agent-src/templates/scripts/README.md +195 -0
- package/src/agent-src/templates/scripts/check_memory.ts +662 -0
- package/src/agent-src/templates/scripts/check_memory_proposal.ts +370 -0
- package/src/agent-src/templates/scripts/historical-bug-patterns.example.yml +84 -0
- package/src/agent-src/templates/scripts/implement_ticket/__main__.ts +27 -0
- package/src/agent-src/templates/scripts/memory_hash.ts +355 -0
- package/src/agent-src/templates/scripts/memory_lookup.ts +1089 -0
- package/src/agent-src/templates/scripts/memory_report.ts +868 -0
- package/src/agent-src/templates/scripts/memory_signal.ts +444 -0
- package/src/agent-src/templates/scripts/memory_status.ts +215 -0
- package/src/agent-src/templates/scripts/ownership-map.example.yml +87 -0
- package/src/agent-src/templates/scripts/pr-risk-config.example.yml +76 -0
- package/src/agent-src/templates/scripts/pr_review_routing.ts +544 -0
- package/src/agent-src/templates/scripts/pr_risk_review.ts +0 -0
- package/src/agent-src/templates/scripts/telemetry/aggregator.ts +0 -0
- package/src/agent-src/templates/scripts/telemetry/boundary.ts +164 -0
- package/src/agent-src/templates/scripts/telemetry/engagement.ts +479 -0
- package/src/agent-src/templates/scripts/telemetry/report_renderer.ts +394 -0
- package/src/agent-src/templates/scripts/telemetry/settings.ts +210 -0
- package/src/agent-src/templates/scripts/telemetry_record.ts +276 -0
- package/src/agent-src/templates/scripts/telemetry_report.ts +211 -0
- package/src/agent-src/templates/scripts/telemetry_status.ts +333 -0
- package/src/agent-src/templates/scripts/tier_usage_report.ts +619 -0
- package/src/agent-src/templates/scripts/work_engine/__main__.ts +14 -0
- package/src/agent-src/templates/scripts/work_engine/_lib/agent_settings.ts +1261 -0
- package/src/agent-src/templates/scripts/work_engine/_lib/user_global_paths.ts +329 -0
- package/src/agent-src/templates/scripts/work_engine/cli.ts +206 -0
- package/src/agent-src/templates/scripts/work_engine/cli_args.ts +249 -0
- package/src/agent-src/templates/scripts/work_engine/delivery_state.ts +225 -0
- package/src/agent-src/templates/scripts/work_engine/directives/backend/analyze.ts +125 -0
- package/src/agent-src/templates/scripts/work_engine/directives/backend/implement.ts +189 -0
- package/src/agent-src/templates/scripts/work_engine/directives/backend/index.ts +94 -0
- package/src/agent-src/templates/scripts/work_engine/directives/backend/memory.ts +193 -0
- package/src/agent-src/templates/scripts/work_engine/directives/backend/plan.ts +267 -0
- package/src/agent-src/templates/scripts/work_engine/directives/backend/refine.ts +518 -0
- package/src/agent-src/templates/scripts/work_engine/directives/backend/report.ts +379 -0
- package/src/agent-src/templates/scripts/work_engine/directives/backend/test.ts +268 -0
- package/src/agent-src/templates/scripts/work_engine/directives/backend/verify.ts +258 -0
- package/src/agent-src/templates/scripts/work_engine/directives/index.ts +32 -0
- package/src/agent-src/templates/scripts/work_engine/directives/mixed/contract.ts +243 -0
- package/src/agent-src/templates/scripts/work_engine/directives/mixed/index.ts +108 -0
- package/src/agent-src/templates/scripts/work_engine/directives/mixed/stitch.ts +259 -0
- package/src/agent-src/templates/scripts/work_engine/directives/mixed/ui.ts +216 -0
- package/src/agent-src/templates/scripts/work_engine/directives/ui/_passthrough.ts +40 -0
- package/src/agent-src/templates/scripts/work_engine/directives/ui/app_spec.ts +241 -0
- package/src/agent-src/templates/scripts/work_engine/directives/ui/apply.ts +216 -0
- package/src/agent-src/templates/scripts/work_engine/directives/ui/audit.ts +506 -0
- package/src/agent-src/templates/scripts/work_engine/directives/ui/design.ts +325 -0
- package/src/agent-src/templates/scripts/work_engine/directives/ui/index.ts +102 -0
- package/src/agent-src/templates/scripts/work_engine/directives/ui/polish.ts +462 -0
- package/src/agent-src/templates/scripts/work_engine/directives/ui/review.ts +474 -0
- package/src/agent-src/templates/scripts/work_engine/directives/ui/scaffold.ts +352 -0
- package/src/agent-src/templates/scripts/work_engine/directives/ui_trivial/_skipped.ts +33 -0
- package/src/agent-src/templates/scripts/work_engine/directives/ui_trivial/apply.ts +213 -0
- package/src/agent-src/templates/scripts/work_engine/directives/ui_trivial/index.ts +111 -0
- package/src/agent-src/templates/scripts/work_engine/directives/ui_trivial/refine.ts +126 -0
- package/src/agent-src/templates/scripts/work_engine/directives/ui_trivial/report.ts +112 -0
- package/src/agent-src/templates/scripts/work_engine/directives/ui_trivial/test.ts +164 -0
- package/src/agent-src/templates/scripts/work_engine/dispatcher.ts +515 -0
- package/src/agent-src/templates/scripts/work_engine/emitters.ts +119 -0
- package/src/agent-src/templates/scripts/work_engine/errors.ts +24 -0
- package/src/agent-src/templates/scripts/work_engine/hook_bootstrap.ts +104 -0
- package/src/agent-src/templates/scripts/work_engine/hooks/builtin/_chat_history_base.ts +189 -0
- package/src/agent-src/templates/scripts/work_engine/hooks/builtin/chat_history_append.ts +41 -0
- package/src/agent-src/templates/scripts/work_engine/hooks/builtin/chat_history_halt_append.ts +89 -0
- package/src/agent-src/templates/scripts/work_engine/hooks/builtin/decision_gate.ts +193 -0
- package/src/agent-src/templates/scripts/work_engine/hooks/builtin/decision_trace.ts +304 -0
- package/src/agent-src/templates/scripts/work_engine/hooks/builtin/directive_set_guard.ts +110 -0
- package/src/agent-src/templates/scripts/work_engine/hooks/builtin/halt_surface_audit.ts +118 -0
- package/src/agent-src/templates/scripts/work_engine/hooks/builtin/index.ts +17 -0
- package/src/agent-src/templates/scripts/work_engine/hooks/builtin/memory_visibility.ts +161 -0
- package/src/agent-src/templates/scripts/work_engine/hooks/builtin/state_shape_validation.ts +45 -0
- package/src/agent-src/templates/scripts/work_engine/hooks/builtin/trace.ts +134 -0
- package/src/agent-src/templates/scripts/work_engine/hooks/context.ts +94 -0
- package/src/agent-src/templates/scripts/work_engine/hooks/events.ts +58 -0
- package/src/agent-src/templates/scripts/work_engine/hooks/exceptions.ts +85 -0
- package/src/agent-src/templates/scripts/work_engine/hooks/index.ts +27 -0
- package/src/agent-src/templates/scripts/work_engine/hooks/registry.ts +66 -0
- package/src/agent-src/templates/scripts/work_engine/hooks/runner.ts +90 -0
- package/src/agent-src/templates/scripts/work_engine/hooks/settings.ts +260 -0
- package/src/agent-src/templates/scripts/work_engine/input_builders.ts +260 -0
- package/src/agent-src/templates/scripts/work_engine/intent/classify.ts +466 -0
- package/src/agent-src/templates/scripts/work_engine/migration/v0_to_v1.ts +531 -0
- package/src/agent-src/templates/scripts/work_engine/orchestration.ts +366 -0
- package/src/agent-src/templates/scripts/work_engine/persona_policy.ts +97 -0
- package/src/agent-src/templates/scripts/work_engine/resolvers/diff.ts +135 -0
- package/src/agent-src/templates/scripts/work_engine/resolvers/file.ts +175 -0
- package/src/agent-src/templates/scripts/work_engine/resolvers/prompt.ts +115 -0
- package/src/agent-src/templates/scripts/work_engine/scoring/confidence.ts +415 -0
- package/src/agent-src/templates/scripts/work_engine/scoring/decision_engine.ts +466 -0
- package/src/agent-src/templates/scripts/work_engine/scoring/decision_trace.ts +298 -0
- package/src/agent-src/templates/scripts/work_engine/scoring/memory_visibility.ts +444 -0
- package/src/agent-src/templates/scripts/work_engine/stack/detect.ts +252 -0
- package/src/agent-src/templates/scripts/work_engine/stack/runner.ts +745 -0
- package/src/agent-src/templates/scripts/work_engine/state.ts +1151 -0
- package/src/agent-src/templates/scripts/work_engine/state_io.ts +413 -0
- package/src/config/agent-settings.template.yml +1 -1
- package/src/install/atomic.ts +111 -0
- package/src/install/conflict.ts +226 -0
- package/src/install/detect.ts +280 -0
- package/src/install/paths.ts +90 -0
- package/src/install/plan.ts +205 -0
- package/src/install/preflight.ts +210 -0
- package/src/install/selectedTools.ts +80 -0
- package/src/install/toolDetection.ts +120 -0
- package/src/install/txlog.ts +161 -0
- package/src/install/types.ts +175 -0
- package/src/install/wizard-plan.ts +216 -0
- package/src/scripts/_cli/cmd_converge.ts +38 -0
- package/src/scripts/_cli/cmd_doctor.ts +113 -2
- package/src/scripts/_cli/cmd_explain.ts +2 -2
- package/src/scripts/_cli/cmd_export.ts +3 -3
- package/src/scripts/_cli/cmd_fleet.ts +13 -1
- package/src/scripts/_cli/cmd_migrate.ts +3 -3
- package/src/scripts/_cli/cmd_prune.ts +2 -2
- package/src/scripts/_cli/cmd_refresh.ts +4 -4
- package/src/scripts/_cli/cmd_settings_check.ts +2 -2
- package/src/scripts/_cli/cmd_settings_migrate.ts +2 -2
- package/src/scripts/_cli/cmd_sync.ts +2 -2
- package/src/scripts/_cli/cmd_uninstall.ts +2 -2
- package/src/scripts/_cli/cmd_update.ts +8 -8
- package/src/scripts/_cli/cmd_upgrade.ts +4 -3
- package/src/scripts/_cli/cmd_validate.ts +3 -3
- package/src/scripts/_cli/cmd_versions.ts +2 -2
- package/src/scripts/_cli/explain_last/assumptions.ts +2 -2
- package/src/scripts/_cli/explain_last/council.ts +2 -2
- package/src/scripts/_cli/explain_last/halt.ts +2 -2
- package/src/scripts/_cli/explain_last/index.ts +2 -2
- package/src/scripts/_cli/explain_last/inputs.ts +4 -4
- package/src/scripts/_cli/explain_last/memory.ts +2 -2
- package/src/scripts/_cli/explain_last/provider.ts +2 -2
- package/src/scripts/_cli/explain_last/render.ts +2 -2
- package/src/scripts/_cli/explain_last/route.ts +2 -2
- package/src/scripts/_cli/explain_last/scrubber.ts +2 -2
- package/src/scripts/_cli/explain_last/sections/assumptions.ts +2 -2
- package/src/scripts/_cli/explain_last/sections/council.ts +2 -2
- package/src/scripts/_cli/explain_last/sections/halt.ts +2 -2
- package/src/scripts/_cli/explain_last/sections/header.ts +2 -2
- package/src/scripts/_cli/explain_last/sections/index.ts +1 -1
- package/src/scripts/_cli/explain_last/sections/inputs.ts +2 -2
- package/src/scripts/_cli/explain_last/sections/memory.ts +2 -2
- package/src/scripts/_cli/explain_last/sections/pack.ts +2 -2
- package/src/scripts/_cli/explain_last/sections/provider.ts +2 -2
- package/src/scripts/_cli/explain_last/sections/route.ts +2 -2
- package/src/scripts/_cli/explain_last/state_loader.ts +2 -2
- package/src/scripts/_dispatch.bash +20 -1
- package/src/scripts/_lib/agent_settings.ts +1 -1
- package/src/scripts/_lib/agent_src.ts +7 -7
- package/src/scripts/_lib/agents_overlay.ts +1 -1
- package/src/scripts/_lib/bench_ab_cache.ts +1 -1
- package/src/scripts/_lib/bench_ab_scoring.ts +1 -1
- package/src/scripts/_lib/bench_ab_scoring_v2.ts +3 -3
- package/src/scripts/_lib/bench_cost.ts +1 -1
- package/src/scripts/_lib/bench_quality.ts +3 -3
- package/src/scripts/_lib/bench_report.ts +4 -4
- package/src/scripts/_lib/bench_telegraph.ts +1 -1
- package/src/scripts/_lib/bench_telegraph_report.ts +4 -4
- package/src/scripts/_lib/changelog_eras.ts +1 -1
- package/src/scripts/_lib/claude_desktop_bundler.ts +1 -1
- package/src/scripts/_lib/cli_wrapper.ts +1 -1
- package/src/scripts/_lib/fs_atomic.ts +1 -1
- package/src/scripts/_lib/global_deploy_inventory.ts +1 -1
- package/src/scripts/_lib/install_layout.ts +1 -1
- package/src/scripts/_lib/install_regenerator.ts +1 -1
- package/src/scripts/_lib/installed_lock.ts +1 -1
- package/src/scripts/_lib/installed_tools.ts +1 -1
- package/src/scripts/_lib/json_pointers.ts +1 -1
- package/src/scripts/_lib/knowledge_global.ts +1 -1
- package/src/scripts/_lib/knowledge_global_promote.ts +2 -2
- package/src/scripts/_lib/knowledge_global_redaction.ts +2 -2
- package/src/scripts/_lib/link_crypto.ts +4 -4
- package/src/scripts/_lib/linked_projects.ts +4 -4
- package/src/scripts/_lib/model_tier.ts +1 -1
- package/src/scripts/_lib/module_detection.ts +2 -2
- package/src/scripts/_lib/pin_resolver.ts +1 -1
- package/src/scripts/_lib/script_output.ts +1 -1
- package/src/scripts/_lib/security_lint.ts +1 -1
- package/src/scripts/_lib/surface_tiers.ts +1 -1
- package/src/scripts/_lib/text_similarity.ts +1 -1
- package/src/scripts/_lib/update_check.ts +2 -2
- package/src/scripts/_lib/user_global_paths.ts +1 -1
- package/src/scripts/_lib/value_ladder.ts +1 -1
- package/src/scripts/_lib/value_report.ts +1 -1
- package/src/scripts/_lib/zip_min.ts +2 -2
- package/src/scripts/adoption_report.ts +3 -3
- package/src/scripts/adoption_snapshot.ts +3 -3
- package/src/scripts/adoption_status.ts +2 -2
- package/src/scripts/adr/regenerate_index.ts +3 -3
- package/src/scripts/ai_council/_default_prices.ts +2 -3
- package/src/scripts/ai_council/advisors.ts +1 -1
- package/src/scripts/ai_council/airgap.ts +1 -1
- package/src/scripts/ai_council/budget_guard.ts +1 -1
- package/src/scripts/ai_council/bundler.ts +1 -1
- package/src/scripts/ai_council/cli_hints.ts +1 -1
- package/src/scripts/ai_council/clients.ts +5 -5
- package/src/scripts/ai_council/compile_corpus.ts +1 -1
- package/src/scripts/ai_council/confidence_gate.ts +1 -1
- package/src/scripts/ai_council/config.ts +1 -1
- package/src/scripts/ai_council/consensus.ts +1 -1
- package/src/scripts/ai_council/events_log.ts +1 -1
- package/src/scripts/ai_council/learn_low_impact_preview.ts +1 -1
- package/src/scripts/ai_council/low_impact_corpus.ts +1 -1
- package/src/scripts/ai_council/low_impact_intake.ts +1 -1
- package/src/scripts/ai_council/modes.ts +1 -1
- package/src/scripts/ai_council/orchestrator.ts +3 -3
- package/src/scripts/ai_council/pricing.ts +2 -2
- package/src/scripts/ai_council/probation_gate.ts +2 -2
- package/src/scripts/ai_council/project_context.ts +1 -1
- package/src/scripts/ai_council/prompts.ts +1 -1
- package/src/scripts/ai_council/redact_low_impact_entry.ts +2 -2
- package/src/scripts/ai_council/session.ts +1 -1
- package/src/scripts/ai_council/shadow_dispatch.ts +1 -1
- package/src/scripts/ai_council/solo_dispatch.ts +1 -1
- package/src/scripts/analysis_freshness.ts +2 -2
- package/src/scripts/annotate_discovery.ts +2 -2
- package/src/scripts/apply_modules_config.ts +2 -2
- package/src/scripts/audit_adr_coverage.ts +3 -3
- package/src/scripts/audit_auto_rules.ts +2 -2
- package/src/scripts/audit_cloud_compatibility.ts +3 -3
- package/src/scripts/audit_command_surface.ts +2 -2
- package/src/scripts/audit_initial_context.ts +7 -6
- package/src/scripts/audit_likelihood.ts +5 -5
- package/src/scripts/audit_mcp_tools.ts +3 -3
- package/src/scripts/audit_overlap.ts +2 -2
- package/src/scripts/audit_skill_descriptions.ts +2 -2
- package/src/scripts/audit_skill_overlap.ts +5 -5
- package/src/scripts/audit_user_type_axis.ts +4 -4
- package/src/scripts/backfill_model_tier.ts +1 -1
- package/src/scripts/bench_ab_cache_dispatch.ts +2 -2
- package/src/scripts/bench_ab_clone.ts +2 -2
- package/src/scripts/bench_ab_diff.ts +3 -3
- package/src/scripts/bench_ab_integrity.ts +2 -2
- package/src/scripts/bench_ab_run.ts +4 -4
- package/src/scripts/bench_ab_task_runner.ts +1 -1
- package/src/scripts/bench_ab_tracka_run.ts +2 -2
- package/src/scripts/bench_ab_v2_run.ts +1 -1
- package/src/scripts/bench_ab_v2_stats.ts +2 -2
- package/src/scripts/bench_baseline_ready.ts +1 -1
- package/src/scripts/bench_condense_memory.ts +4 -4
- package/src/scripts/bench_drift_check.ts +3 -3
- package/src/scripts/bench_per_tool.ts +1 -1
- package/src/scripts/bench_rtk_savings.ts +4 -4
- package/src/scripts/bench_run.ts +4 -4
- package/src/scripts/bench_runner.ts +1 -1
- package/src/scripts/build_cloud_bundle.ts +3 -3
- package/src/scripts/build_discovery_manifest.ts +13 -15
- package/src/scripts/build_linear_digest.ts +2 -2
- package/src/scripts/build_mcp_registry_manifest.ts +3 -3
- package/src/scripts/build_proof.ts +6 -0
- package/src/scripts/build_rule_trigger_matrix.ts +2 -2
- package/src/scripts/capture_showcase_session.ts +3 -3
- package/src/scripts/chat_history.ts +1 -1
- package/src/scripts/check_always_budget.ts +1 -1
- package/src/scripts/check_artefact_checksums.ts +4 -4
- package/src/scripts/check_artefact_count_messaging.ts +197 -0
- package/src/scripts/check_augment_description_cap.ts +3 -3
- package/src/scripts/check_augmentignore.ts +1 -1
- package/src/scripts/check_beta_review_markers.ts +3 -3
- package/src/scripts/check_bite_sized_granularity.ts +1 -1
- package/src/scripts/check_cluster_patterns.ts +47 -3
- package/src/scripts/check_command_count_messaging.ts +2 -2
- package/src/scripts/check_condensation.ts +2 -2
- package/src/scripts/check_condensed_paths.ts +6 -6
- package/src/scripts/check_context_paths.ts +1 -1
- package/src/scripts/check_council_config_location.ts +3 -3
- package/src/scripts/check_council_layout.ts +2 -2
- package/src/scripts/check_council_references.ts +2 -2
- package/src/scripts/check_discovery_determinism.ts +3 -3
- package/src/scripts/check_gate_paths.ts +4 -4
- package/src/scripts/check_iron_law_prominence.ts +2 -2
- package/src/scripts/check_kernel_rule_bundle.ts +3 -3
- package/src/scripts/check_knowledge_cards.ts +4 -4
- package/src/scripts/check_knowledge_pages.ts +1 -1
- package/src/scripts/check_md_language.ts +3 -3
- package/src/scripts/check_memory.ts +3 -3
- package/src/scripts/check_memory_proposal.ts +2 -2
- package/src/scripts/check_module_management_neutral.ts +1 -1
- package/src/scripts/check_no_conflict_markers.ts +1 -1
- package/src/scripts/check_no_external_sources.ts +1 -1
- package/src/scripts/check_no_local_settings_committed.ts +2 -2
- package/src/scripts/check_no_new_legacy_path.ts +3 -3
- package/src/scripts/check_no_roadmap_refs.ts +3 -3
- package/src/scripts/check_one_off_location.ts +3 -3
- package/src/scripts/check_overlay_cascade_subdirs.ts +3 -3
- package/src/scripts/check_portability.ts +3 -3
- package/src/scripts/check_proposal.ts +0 -0
- package/src/scripts/check_public_catalog_links.ts +1 -1
- package/src/scripts/check_public_links.ts +2 -2
- package/src/scripts/check_references.ts +3 -3
- package/src/scripts/check_release_includes_discovery.ts +2 -2
- package/src/scripts/check_release_pr_shape.ts +2 -2
- package/src/scripts/check_release_published.ts +1 -1
- package/src/scripts/check_release_trunk_sync.ts +3 -3
- package/src/scripts/check_reply_consistency.ts +1 -1
- package/src/scripts/check_roadmap_trackable.ts +2 -2
- package/src/scripts/check_role_doc_links.ts +2 -2
- package/src/scripts/check_safety_floor_untouched.ts +3 -3
- package/src/scripts/check_skill_requires.ts +2 -2
- package/src/scripts/check_structural_breaking.ts +2 -2
- package/src/scripts/check_surface_tiers.ts +2 -2
- package/src/scripts/check_template_pin_drift.ts +1 -1
- package/src/scripts/check_test_coverage_diff.ts +2 -2
- package/src/scripts/check_token_optimizer_freshness.ts +3 -3
- package/src/scripts/check_trigger_evals.ts +2 -2
- package/src/scripts/check_update_banner.ts +1 -1
- package/src/scripts/ci_status.ts +0 -0
- package/src/scripts/ci_summary.ts +3 -3
- package/src/scripts/ci_time_ratio.ts +1 -1
- package/src/scripts/command_suggester/cooldown.ts +1 -1
- package/src/scripts/command_suggester/index.ts +1 -1
- package/src/scripts/command_suggester/loader.ts +1 -1
- package/src/scripts/command_suggester/match.ts +1 -1
- package/src/scripts/command_suggester/rank.ts +1 -1
- package/src/scripts/command_suggester/render.ts +1 -1
- package/src/scripts/command_suggester/sanitize.ts +1 -1
- package/src/scripts/command_suggester/settings.ts +1 -1
- package/src/scripts/command_suggester/types.ts +0 -0
- package/src/scripts/compile_router.ts +4 -4
- package/src/scripts/condense.ts +3 -3
- package/src/scripts/condense_memory.ts +1 -1
- package/src/scripts/config/index.ts +1 -1
- package/src/scripts/config/packs.ts +1 -1
- package/src/scripts/config/presets.ts +1 -1
- package/src/scripts/config/profile_explain.ts +1 -1
- package/src/scripts/config/profiles.ts +1 -1
- package/src/scripts/config/session_profiles.ts +1 -1
- package/src/scripts/context_hygiene_hook.ts +2 -2
- package/src/scripts/cost_by_conversation.ts +1 -1
- package/src/scripts/cost_summary.ts +2 -2
- package/src/scripts/council_cli.ts +1 -1
- package/src/scripts/council_prune.ts +1 -1
- package/src/scripts/cross_repo_retrieve.ts +2 -2
- package/src/scripts/discovery_stats.ts +3 -3
- package/src/scripts/evidence_report.ts +4 -4
- package/src/scripts/extract_audit_patterns.ts +2 -2
- package/src/scripts/first_run_gate_hook.ts +1 -1
- package/src/scripts/gen_discovery_baseline.ts +2 -2
- package/src/scripts/generate_capabilities_index.ts +2 -2
- package/src/scripts/generate_capability_matrix.ts +2 -2
- package/src/scripts/generate_catalog.ts +2 -2
- package/src/scripts/generate_command_flows.ts +2 -2
- package/src/scripts/generate_cookbook.ts +1 -1
- package/src/scripts/generate_index.ts +3 -3
- package/src/scripts/generate_ownership_matrix.ts +2 -2
- package/src/scripts/generate_pack_manifests.ts +2 -2
- package/src/scripts/generate_role_experiences_catalog.ts +3 -3
- package/src/scripts/hooks/block_no_verify.ts +2 -2
- package/src/scripts/hooks/dispatch_hook.ts +2 -2
- package/src/scripts/hooks/dispatch_issues.ts +1 -1
- package/src/scripts/hooks/envelope.ts +1 -1
- package/src/scripts/hooks/replay_hook.ts +1 -1
- package/src/scripts/hooks/state_io.ts +1 -1
- package/src/scripts/hooks_doctor.ts +1 -1
- package/src/scripts/hooks_status.ts +1 -1
- package/src/scripts/injection_scan_hook.ts +1 -1
- package/src/scripts/install.ts +145 -3
- package/src/scripts/inventory_abstraction_budget.ts +5 -5
- package/src/scripts/inventory_frontmatter.ts +1 -1
- package/src/scripts/inventory_meta_layers.ts +1 -1
- package/src/scripts/iron_law_sha.ts +1 -1
- package/src/scripts/knowledge_global_cli.ts +3 -3
- package/src/scripts/linked_projects_list.ts +1 -1
- package/src/scripts/lint_agent_security.ts +4 -4
- package/src/scripts/lint_agent_skill_names.ts +1 -1
- package/src/scripts/lint_agents_layout.ts +2 -2
- package/src/scripts/lint_agents_md.ts +3 -3
- package/src/scripts/lint_archived_skills.ts +2 -2
- package/src/scripts/lint_artefact_frontmatter.ts +2 -2
- package/src/scripts/lint_bench_ab.ts +2 -2
- package/src/scripts/lint_bench_corpus.ts +1 -1
- package/src/scripts/lint_command_flow_coverage.ts +1 -1
- package/src/scripts/lint_command_routing.ts +2 -2
- package/src/scripts/lint_command_tiers.ts +1 -1
- package/src/scripts/lint_command_verbs.ts +4 -4
- package/src/scripts/lint_commit_subjects.ts +2 -2
- package/src/scripts/lint_context_spine_usage.ts +3 -3
- package/src/scripts/lint_discovery_manifest.ts +4 -4
- package/src/scripts/lint_discovery_vocabulary.ts +2 -2
- package/src/scripts/lint_empty_roadmaps.ts +3 -3
- package/src/scripts/lint_eval_freshness.ts +2 -2
- package/src/scripts/lint_examples.ts +2 -2
- package/src/scripts/lint_explain_trace.ts +2 -2
- package/src/scripts/lint_featured_skills.ts +0 -0
- package/src/scripts/lint_flows.ts +5 -5
- package/src/scripts/lint_framework_leakage.ts +1 -1
- package/src/scripts/lint_framework_leakage_allowlist.json +10 -2
- package/src/scripts/lint_frontmatter_boilerplate.ts +2 -2
- package/src/scripts/lint_ghostwriter_source.ts +3 -3
- package/src/scripts/lint_global_paths.ts +1 -1
- package/src/scripts/lint_handoffs.ts +1 -1
- package/src/scripts/lint_hidden_unicode.ts +1 -1
- package/src/scripts/lint_hook_concern_budget.ts +2 -2
- package/src/scripts/lint_hook_manifest.ts +2 -2
- package/src/scripts/lint_instruction_smuggling.ts +1 -1
- package/src/scripts/lint_load_context.ts +2 -2
- package/src/scripts/lint_marketplace.ts +1 -1
- package/src/scripts/lint_marketplace_install_completeness.ts +2 -2
- package/src/scripts/lint_mcp_config_security.ts +1 -1
- package/src/scripts/lint_mcp_registry_manifest.ts +1 -1
- package/src/scripts/lint_media_policy_linkage.ts +3 -3
- package/src/scripts/lint_missions.ts +3 -3
- package/src/scripts/lint_model_tier_coverage.ts +3 -3
- package/src/scripts/lint_namespace.ts +2 -2
- package/src/scripts/lint_namespace_collisions.ts +2 -2
- package/src/scripts/lint_new_skill_gate.ts +3 -3
- package/src/scripts/lint_no_new_atomic_commands.ts +9 -6
- package/src/scripts/lint_no_python_twin_rationale.ts +102 -0
- package/src/scripts/lint_one_off_age.ts +2 -2
- package/src/scripts/lint_orchestration_dsl.ts +3 -3
- package/src/scripts/lint_orchestrator_auto_detect.ts +1 -1
- package/src/scripts/lint_pack_boundaries.ts +2 -2
- package/src/scripts/lint_pack_dependencies.ts +2 -2
- package/src/scripts/lint_pack_first_win.ts +2 -2
- package/src/scripts/lint_persona_governance.ts +3 -3
- package/src/scripts/lint_positioning.ts +1 -1
- package/src/scripts/lint_profile_overlay_set_only.ts +2 -2
- package/src/scripts/lint_readme_jargon.ts +2 -2
- package/src/scripts/lint_readme_size.ts +2 -2
- package/src/scripts/lint_regression.ts +3 -3
- package/src/scripts/lint_roadmap_ci_steps.ts +3 -3
- package/src/scripts/lint_roadmap_complexity.ts +1 -1
- package/src/scripts/lint_roadmap_later_disposition.ts +2 -2
- package/src/scripts/lint_role_experiences.ts +2 -2
- package/src/scripts/lint_rule_interactions.ts +1 -1
- package/src/scripts/lint_rule_tiers.ts +1 -1
- package/src/scripts/lint_showcase_sessions.ts +2 -2
- package/src/scripts/lint_skill_frontmatter_safety.ts +1 -1
- package/src/scripts/lint_skill_originality.ts +1 -1
- package/src/scripts/lint_skill_tools.ts +3 -3
- package/src/scripts/lint_ticket_buildable.ts +2 -2
- package/src/scripts/lint_topics_yaml.ts +3 -3
- package/src/scripts/lint_trust_coherence.ts +3 -3
- package/src/scripts/lint_value_dashboard.ts +3 -3
- package/src/scripts/lint_workflow_security.ts +3 -3
- package/src/scripts/lint_workspace_boundary.ts +2 -2
- package/src/scripts/mcp_parity_smoke.ts +1 -1
- package/src/scripts/mcp_render.ts +1 -1
- package/src/scripts/mcp_server/catalog.ts +1 -1
- package/src/scripts/mcp_server/index.ts +1 -1
- package/src/scripts/mcp_server/metadata.ts +1 -1
- package/src/scripts/mcp_server/prompts.ts +1 -1
- package/src/scripts/mcp_server/resources.ts +1 -1
- package/src/scripts/mcp_server/server.ts +1 -1
- package/src/scripts/mcp_server/telemetry.ts +1 -1
- package/src/scripts/mcp_server/tools.ts +1 -1
- package/src/scripts/mcp_telemetry_health.ts +1 -1
- package/src/scripts/mcp_telemetry_query.ts +3 -3
- package/src/scripts/mcp_telemetry_store.ts +3 -3
- package/src/scripts/measure_augment_budget.ts +2 -2
- package/src/scripts/measure_density.ts +2 -2
- package/src/scripts/measure_frugality_savings.ts +3 -3
- package/src/scripts/measure_markitdown_lift.ts +1 -1
- package/src/scripts/measure_patterns.ts +1 -1
- package/src/scripts/measure_projection_bytes.ts +1 -1
- package/src/scripts/measure_rule_budget.ts +1 -1
- package/src/scripts/measure_skill_reduction.ts +1 -1
- package/src/scripts/memory_hash.ts +1 -1
- package/src/scripts/memory_lookup.ts +6 -6
- package/src/scripts/memory_report.ts +1 -1
- package/src/scripts/memory_signal.ts +1 -1
- package/src/scripts/memory_status.ts +2 -2
- package/src/scripts/migrate_command_suggestions.ts +1 -1
- package/src/scripts/migrate_frontmatter_defaults.ts +1 -1
- package/src/scripts/mine_session.ts +3 -3
- package/src/scripts/minimal_safe_diff_hook.ts +2 -2
- package/src/scripts/move_artefact.ts +3 -3
- package/src/scripts/new_skill.ts +3 -3
- package/src/scripts/onboarding_gate_hook.ts +2 -2
- package/src/scripts/pack_mcp_content.ts +1 -1
- package/src/scripts/parity/replay.ts +3 -2
- package/src/scripts/pattern_share.ts +2 -2
- package/src/scripts/plan_physical_move.ts +3 -3
- package/src/scripts/prediction-pool/poisson_sim.ts +2 -2
- package/src/scripts/prediction-pool/pool_winsim.ts +2 -2
- package/src/scripts/prediction-pool/score_ev.ts +2 -2
- package/src/scripts/prepack-check.mjs +108 -5
- package/src/scripts/print_required_checks.ts +2 -2
- package/src/scripts/probe_projection_fidelity.ts +2 -2
- package/src/scripts/probe_skill_registration.ts +2 -2
- package/src/scripts/profile_staleness_hook.ts +2 -2
- package/src/scripts/profile_use.ts +2 -2
- package/src/scripts/project_thin_rules.ts +3 -3
- package/src/scripts/propose_modules_config.ts +2 -2
- package/src/scripts/prototype_lint_contradictions.ts +2 -2
- package/src/scripts/prove_pack_extractable.ts +1 -1
- package/src/scripts/readme_linter.ts +4 -4
- package/src/scripts/redact_hook_capture.ts +2 -2
- package/src/scripts/refine_ticket_detect.ts +1 -1
- package/src/scripts/release.ts +30 -19
- package/src/scripts/render_benchmark_md.ts +2 -2
- package/src/scripts/render_value_md.ts +2 -2
- package/src/scripts/roadmap_progress_hook.ts +1 -1
- package/src/scripts/router_telemetry.ts +1 -1
- package/src/scripts/run_skill_evals.ts +2 -2
- package/src/scripts/runtime_dispatcher.ts +1 -1
- package/src/scripts/runtime_handler.ts +1 -1
- package/src/scripts/runtime_registry.ts +3 -3
- package/src/scripts/score_skill_selection.ts +1 -1
- package/src/scripts/security_audit_config.ts +2 -2
- package/src/scripts/skill_collision_clusters.ts +1 -1
- package/src/scripts/skill_discovery.ts +1 -1
- package/src/scripts/skill_linter.ts +8 -7
- package/src/scripts/skill_overlap.ts +2 -2
- package/src/scripts/skill_preview.ts +1 -1
- package/src/scripts/skill_tools/audit_persona_coverage.ts +3 -3
- package/src/scripts/skill_tools/audit_user_type_coverage.ts +3 -3
- package/src/scripts/skill_tools/index.ts +1 -1
- package/src/scripts/skill_tools/run_block_d_eval.ts +3 -3
- package/src/scripts/skill_tools/score_skill_relevance.ts +3 -3
- package/src/scripts/skill_tools/suggest_skill_for_task.ts +3 -3
- package/src/scripts/skill_trigger_eval.ts +2 -2
- package/src/scripts/skill_usage_collect.ts +2 -2
- package/src/scripts/skill_usage_report.ts +2 -2
- package/src/scripts/smoke_path_resolution.ts +2 -2
- package/src/scripts/smoke_quickstart.ts +4 -4
- package/src/scripts/snapshot_agent_outputs.ts +2 -2
- package/src/scripts/spotcheck_thin_root.ts +2 -2
- package/src/scripts/surface-tiers.yml +1 -0
- package/src/scripts/sync_agent_settings.ts +2 -2
- package/src/scripts/sync_github_metadata.ts +4 -4
- package/src/scripts/sync_gitignore.ts +3 -3
- package/src/scripts/sync_yaml_rt.ts +2 -2
- package/src/scripts/telegraph_stats.ts +1 -1
- package/src/scripts/tool_registry.ts +2 -2
- package/src/scripts/tools/adapter_errors.ts +1 -1
- package/src/scripts/tools/base_adapter.ts +1 -1
- package/src/scripts/tools/github_adapter.ts +1 -1
- package/src/scripts/tools/jira_adapter.ts +1 -1
- package/src/scripts/trigger_coverage.ts +2 -2
- package/src/scripts/update_counts.ts +68 -6
- package/src/scripts/update_prices.ts +3 -3
- package/src/scripts/validate_agent_settings.ts +3 -3
- package/src/scripts/validate_decision_engine.ts +2 -2
- package/src/scripts/validate_discovery_manifest.ts +3 -3
- package/src/scripts/validate_frontmatter.ts +5 -5
- package/src/scripts/validate_pack_yaml.ts +0 -0
- package/src/scripts/validate_safe_paths.ts +2 -2
- package/src/scripts/validate_telegraph_carveouts.ts +3 -3
- package/src/scripts/verify_before_complete_hook.ts +2 -2
- package/src/scripts/verify_physical_move.ts +2 -2
- package/src/scripts/wrapper_freshness_hook.ts +3 -3
- package/src/server/schemas/settings.ts +426 -0
- package/src/shared/settingsSurface.ts +184 -0
- package/src/shared/userMd/formAdapter.ts +86 -0
- package/src/shared/userMd/schema.ts +59 -0
- package/src/shared/userMd/utils.ts +91 -0
- package/dist/agent-src/commands/optimize-project.md +0 -243
- package/dist/ui/assets/index-BbWWuFrF.css +0 -1
- package/dist/ui/assets/index-UjcTG_9O.js +0 -40
- package/dist/ui/assets/index-UjcTG_9O.js.map +0 -1
package/src/scripts/release.ts
CHANGED
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* End-to-end release automation for `event4u/agent-config` (TypeScript twin).
|
|
4
4
|
*
|
|
5
|
-
*
|
|
6
|
-
* The CLI contract
|
|
5
|
+
* Ported from the retired Python `src/scripts/release.py` (ADR-200).
|
|
6
|
+
* The CLI contract pins the historical contract exactly — same flags, same
|
|
7
7
|
* exit codes, same stdout/stderr split, byte-identical emitted output, same
|
|
8
8
|
* subprocess argv/cwd/env. No behaviour changes — latent quirks are
|
|
9
9
|
* replicated and flagged inline, not fixed.
|
|
@@ -145,7 +145,7 @@ class ArgparseExit extends Error {
|
|
|
145
145
|
|
|
146
146
|
/**
|
|
147
147
|
* Mirror of `subprocess.CalledProcessError`. Thrown by `run()` when a command
|
|
148
|
-
* fails with `check=True` and output is NOT captured — the Python
|
|
148
|
+
* fails with `check=True` and output is NOT captured — the retired Python implementation
|
|
149
149
|
* lets `CalledProcessError` propagate in that path. The CLI entry guard does
|
|
150
150
|
* NOT catch this, so it surfaces (non-zero exit + traceback), matching Python.
|
|
151
151
|
*/
|
|
@@ -680,7 +680,7 @@ function latest_tag(): string | null {
|
|
|
680
680
|
*
|
|
681
681
|
* `test_trend_line` — optional pre-computed `Tests: N (+M …)` footer
|
|
682
682
|
* (road-to-feedback-followups P3.2). Computed by the caller so tests don't
|
|
683
|
-
* trigger a recursive
|
|
683
|
+
* trigger a recursive vitest collection.
|
|
684
684
|
*/
|
|
685
685
|
function render_changelog_entry(
|
|
686
686
|
version: string,
|
|
@@ -770,32 +770,40 @@ function _changelog_line(c: Commit): string {
|
|
|
770
770
|
// ─── test-count trend (road-to-feedback-followups P3.2) ───────────────────────
|
|
771
771
|
|
|
772
772
|
const _TEST_COUNT_LINE_RE = /^Tests:\s+(\d+)/m;
|
|
773
|
-
const _PYTEST_COLLECTED_RE = /^(\d+)\s+tests?\s+collected/m;
|
|
774
773
|
|
|
775
774
|
/**
|
|
776
|
-
* Return the
|
|
777
|
-
*
|
|
778
|
-
* line is informational, never a release
|
|
775
|
+
* Return the collected vitest test-case count on the current tree
|
|
776
|
+
* (`npx vitest list`, one line per case; ~14s wall). Returns null when
|
|
777
|
+
* collection fails — the trend line is informational, never a release
|
|
778
|
+
* blocker. (Replaced the dead `pytest --collect-only` probe on 2026-07-08,
|
|
779
|
+
* road-to-truth-and-reference-hygiene Phase 3: the Python suite was retired
|
|
780
|
+
* with ADR-200, so the old probe always degraded to null and the `Tests:`
|
|
781
|
+
* footer silently vanished from release notes.)
|
|
779
782
|
*/
|
|
780
783
|
function _count_tests_current(): number | null {
|
|
781
|
-
//
|
|
782
|
-
//
|
|
783
|
-
//
|
|
784
|
-
|
|
784
|
+
// Recursion/cost guard: `npx vitest list` inside a vitest-driven release
|
|
785
|
+
// test would collect the whole suite from within the suite (the child
|
|
786
|
+
// inherits VITEST=… from the runner) — the exact recursion the caller
|
|
787
|
+
// comment warns about. Degrade to null there, same as any other
|
|
788
|
+
// collection failure.
|
|
789
|
+
if (process.env['VITEST'] !== undefined) {
|
|
790
|
+
return null;
|
|
791
|
+
}
|
|
792
|
+
const res = spawnSync('npx', ['vitest', 'list'], {
|
|
785
793
|
cwd: REPO_ROOT,
|
|
786
794
|
encoding: 'utf-8',
|
|
787
795
|
stdio: ['ignore', 'pipe', 'pipe'],
|
|
788
|
-
timeout:
|
|
796
|
+
timeout: 180_000,
|
|
789
797
|
});
|
|
790
798
|
if (res.error) {
|
|
791
|
-
//
|
|
799
|
+
// ENOENT or ETIMEDOUT → null (informational line dropped).
|
|
792
800
|
return null;
|
|
793
801
|
}
|
|
794
802
|
if ((res.status ?? 1) !== 0) {
|
|
795
803
|
return null;
|
|
796
804
|
}
|
|
797
|
-
const
|
|
798
|
-
return
|
|
805
|
+
const lines = (res.stdout ?? '').split('\n').filter((l) => l.trim().length > 0);
|
|
806
|
+
return lines.length > 0 ? lines.length : null;
|
|
799
807
|
}
|
|
800
808
|
|
|
801
809
|
/**
|
|
@@ -1833,7 +1841,10 @@ function main(argv: readonly string[] | null = null): number {
|
|
|
1833
1841
|
}
|
|
1834
1842
|
|
|
1835
1843
|
const today = todayIso();
|
|
1836
|
-
|
|
1844
|
+
// Dry-run stays fast: the trend line costs a full vitest collection
|
|
1845
|
+
// (~15s+), which `--dry-run exits 0 without needing …` contracts (and
|
|
1846
|
+
// the release test) assume never runs. Real releases compute it.
|
|
1847
|
+
const test_trend_line = args.dry_run ? null : _render_test_trend_line(prev);
|
|
1837
1848
|
const [full, body] = render_changelog_entry(target, prev, commits, today, {
|
|
1838
1849
|
test_trend_line,
|
|
1839
1850
|
});
|
|
@@ -1922,8 +1933,8 @@ if (_isCliEntry() || process.argv[1] === _HERE) {
|
|
|
1922
1933
|
try {
|
|
1923
1934
|
// main() can return an int directly OR throw SystemExitError via die();
|
|
1924
1935
|
// both flow into process.exitCode. CalledProcessError is intentionally
|
|
1925
|
-
// NOT caught here, so it propagates (non-zero + traceback)
|
|
1926
|
-
//
|
|
1936
|
+
// NOT caught here, so it propagates (non-zero + traceback) — the historical
|
|
1937
|
+
// contract let subprocess errors raise.
|
|
1927
1938
|
process.exitCode = main(process.argv.slice(2));
|
|
1928
1939
|
} catch (e) {
|
|
1929
1940
|
if (e instanceof SystemExitError || e instanceof ArgparseExit) {
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Render `docs/benchmark.md` from the latest paired A/B bench reports.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Ported from the retired Python `src/scripts/render_benchmark_md.py` (ADR-200, Phase 8 /
|
|
6
6
|
* Wave 8b). Mirrors the CLI contract EXACTLY — the `--quiet` flag, exit code,
|
|
7
7
|
* the stdout/stderr split, byte-identical stdout AND byte-identical rendered
|
|
8
8
|
* `docs/benchmark.md`. The renderer is deterministic — it does not run any
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
* If no reports exist yet, the script writes a placeholder document — never
|
|
16
16
|
* errors out, so the file is always a real description of the bench state.
|
|
17
17
|
*
|
|
18
|
-
*
|
|
18
|
+
* Historical quirks are preserved deliberately — tests and downstream consumers pin the exact behaviour. The only volatile
|
|
19
19
|
* value is the embedded `utc_iso()` timestamp; golden parity for this script
|
|
20
20
|
* pins on structure + the deterministic placeholder/report shape, not on the
|
|
21
21
|
* second-precision timestamp.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Render `docs/value.md` from the latest `value-v1` JSON report.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Ported from the retired Python `src/scripts/render_value_md.py` (ADR-200, Phase 8
|
|
6
6
|
* / Wave 8b). The public surface and rendered output mirror the Python
|
|
7
7
|
* original EXACTLY — same module-level path constants (exposed through a
|
|
8
8
|
* mutable test seam so the pytest `monkeypatch.setattr` injection ports
|
|
@@ -412,7 +412,7 @@ function render_placeholder(): string {
|
|
|
412
412
|
/**
|
|
413
413
|
* Mirror `Path.relative_to(REPO_ROOT)` — throws when `p` is NOT under the
|
|
414
414
|
* repo root (Python `ValueError`). The default `OUT_PATH` is always in-repo
|
|
415
|
-
* (`docs/value.md`); replicated for fidelity with the Python
|
|
415
|
+
* (`docs/value.md`); replicated for fidelity with the retired Python implementation.
|
|
416
416
|
*/
|
|
417
417
|
function _relativeToRepo(p: string): string {
|
|
418
418
|
const abs = path.resolve(p);
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Platform-agnostic PostToolUse hook for the `roadmap-progress-sync` rule.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Ported from the retired Python `src/scripts/roadmap_progress_hook.py` (ADR-200 —
|
|
6
6
|
* Python→TS migration, Phase 6 / hooks). Public API mirrors the Python
|
|
7
7
|
* module exactly (snake_case kept deliberately — fidelity over TS idiom).
|
|
8
8
|
*
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Local replay of the router against a corpus — pure, no API spend.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Ported from the retired Python `src/scripts/router_telemetry.py` (ADR-089 —
|
|
6
6
|
* Python→TS migration, Phase 7). Mirrors the Python CLI contract
|
|
7
7
|
* exactly: flags (`--corpus`, `--sample-cap`, `--profile`, `--out`,
|
|
8
8
|
* `--quiet`), exit codes, stdout/stderr split, byte-identical messages,
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Quantitative skill-eval orchestrator (skill-writing § 7).
|
|
4
4
|
*
|
|
5
|
-
*
|
|
6
|
-
* migration, Phase 8 / Wave 8e). The CLI contract is
|
|
5
|
+
* Ported from the retired Python `src/scripts/run_skill_evals.py` (ADR-200 — Python→TS
|
|
6
|
+
* migration, Phase 8 / Wave 8e). The CLI contract is pinned:
|
|
7
7
|
* same subcommands (`scaffold`, `aggregate`, `report`), same flags
|
|
8
8
|
* (`--run`), same exit codes (0 success; 1 on `sys.exit(msg)` errors),
|
|
9
9
|
* same byte-identical stdout / stderr prose and byte-identical written
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Runtime Dispatcher — resolves execution type and drives real handler execution.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Ported from the retired Python `src/scripts/runtime_dispatcher.py` (ADR-200). Mirrors the
|
|
6
6
|
* Python public surface and CLI contract EXACTLY — `ExecutionRequest`,
|
|
7
7
|
* `DispatchResult`, `dispatch`, `run`, the `resolve` / `run` subcommands, the
|
|
8
8
|
* legacy flat `--skill` flag, `--format text|json`, `--root`, `--cwd`,
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Runtime Handler — executes a skill's declared command and captures the result.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Ported from the retired Python `src/scripts/runtime_handler.py` (ADR-200, Phase 8 /
|
|
6
6
|
* Wave 8h). Library module imported by the still-Python `runtime_dispatcher`
|
|
7
7
|
* (the `.py` stays in place); this `.ts` twin sits beside it. Mirrors the
|
|
8
8
|
* Python public surface EXACTLY — `DEFAULT_ENV_ALLOWLIST`, `ExecutionResult`,
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Runtime Registry — discovers skills with execution metadata.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
6
|
-
* Wave 8h).
|
|
5
|
+
* Ported from the retired Python `src/scripts/runtime_registry.py` (ADR-200, Phase 8 /
|
|
6
|
+
* Wave 8h). The CLI contract is pinned — `--root`, `--format`
|
|
7
7
|
* (text|json), `--validate` flags, exit codes (0 ok / valid, 1 invalid),
|
|
8
8
|
* byte-identical stdout/stderr, and byte-identical `json.dumps(indent=2)`
|
|
9
9
|
* output. No behaviour changes.
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
* tsx scripts/runtime_registry.ts [--root ROOT] [--format text|json]
|
|
19
19
|
*
|
|
20
20
|
* Library role: `runtime_dispatcher.py` imports `SkillRuntime` and
|
|
21
|
-
* `build_registry` from the Python
|
|
21
|
+
* `build_registry` from the retired Python implementation — the `.py` stays in place so the
|
|
22
22
|
* still-Python dispatcher keeps importing it. This `.ts` twin sits beside it.
|
|
23
23
|
*
|
|
24
24
|
* Imports the SAME primitives the `.py` imports from `skill_linter`:
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Selection-accuracy scorer (council file 05, Phase 2.2).
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Ported from the retired Python `src/scripts/score_skill_selection.py` (ADR-200 —
|
|
6
6
|
* Python→TS migration, Phase 8 / Wave 8c). Mirrors the CLI contract EXACTLY:
|
|
7
7
|
* flags (`--predictions`, `--baseline`, `--source`, `--out`), exit codes
|
|
8
8
|
* (0 / 2 when neither --predictions nor --baseline given), byte-identical
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// P3.1 — consumer-facing agent-config security audit (road-to-security-pillar.md).
|
|
2
2
|
//
|
|
3
|
-
//
|
|
3
|
+
// Ported from the retired Python `src/scripts/security_audit_config.py` (ADR-200 —
|
|
4
4
|
// Python→TS migration). Behaviour mirrors the Python module byte-for-byte.
|
|
5
5
|
//
|
|
6
6
|
// Points the Phase-1 detection logic at a *consumer's assembled* agent config —
|
|
@@ -101,7 +101,7 @@ function _category(f: sl.Finding): string {
|
|
|
101
101
|
* traversal *structure* (component recursion, `**` self-then-subdirs depth-first,
|
|
102
102
|
* `is_file` filter, first-seen dedup) is replicated faithfully; intra-directory
|
|
103
103
|
* entry order follows `fs.readdirSync`. Multi-file-per-pattern consumer trees can
|
|
104
|
-
* therefore differ in finding order from the Python
|
|
104
|
+
* therefore differ in finding order from the retired Python implementation on platforms where
|
|
105
105
|
* scandir != readdir. The golden test pins one-file-per-pattern fixtures so the
|
|
106
106
|
* order is unambiguous; the clean real-`src/` path emits no findings.
|
|
107
107
|
*/
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Skill-collision cluster analysis (Phase 2.2 of step-1-v2-feedback-followup).
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Ported from the retired Python `skill_collision_clusters.py` (Phase 8 / Wave 8e).
|
|
6
6
|
*
|
|
7
7
|
* Walks `.agent-src.uncondensed/skills/<id>/SKILL.md`, extracts the
|
|
8
8
|
* `description` frontmatter, computes pairwise keyword overlap, and groups
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Skill discovery recommender — local-only, explained, no network.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Ported from the retired Python `skill_discovery.py` (Phase 8 / Wave 8e).
|
|
6
6
|
*
|
|
7
7
|
* Phase 3 of `road-to-leaner-core-and-discovery`. Turns existing local signals
|
|
8
8
|
* (skill catalog frontmatter, role shortlists, optional local-analytics JSONL)
|
|
@@ -2,16 +2,16 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* skill_linter.ts — minimal skill/rule linter for agent-config repositories.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Ported from the retired Python `src/scripts/skill_linter.py` (ADR-200).
|
|
6
6
|
* The public CLI contract is mirrored EXACTLY: same flags (`--all`,
|
|
7
7
|
* `--changed`, `--format`, `--pairs`, `--duplicates`, `--condensation-quality`,
|
|
8
8
|
* `--strict-warnings`, `--report`, `--repo-root`, `--quiet`, positional paths),
|
|
9
9
|
* same exit codes (0 pass / 1 warn-with-strict / 2 fail / 3 malice-or-internal),
|
|
10
|
-
* same stdout/stderr split, and byte-for-byte finding messages. No behaviour
|
|
11
|
-
* changes —
|
|
10
|
+
* same stdout/stderr split, and byte-for-byte finding messages (pinned by tests). No behaviour
|
|
11
|
+
* changes — historical quirks are preserved.
|
|
12
12
|
*
|
|
13
13
|
* Dependencies: imports the `validate_frontmatter` twin (local, ported because
|
|
14
|
-
* the Python
|
|
14
|
+
* the retired Python implementation is a later-wave dependency) and the `_lib/agent_src`
|
|
15
15
|
* twin for multi-root artefact resolution.
|
|
16
16
|
*
|
|
17
17
|
* MVP checks:
|
|
@@ -1136,8 +1136,9 @@ function _stripWing3CarveOuts(text: string): string {
|
|
|
1136
1136
|
// `## Do NOT` strip: Python uses MULTILINE|DOTALL → `^##` matches at every
|
|
1137
1137
|
// line start. `\Z` = end of string (no trailing-newline subtlety needed).
|
|
1138
1138
|
out = out.replace(/^##\s+Do NOT\s*$[\s\S]*?(?=^##\s+|$(?![\s\S]))/gm, '');
|
|
1139
|
-
// `**WHEN NOT to use this**` strip —
|
|
1140
|
-
//
|
|
1139
|
+
// `**WHEN NOT to use this**` strip — HISTORICAL PYTHON-ERA BUG, PRESERVED
|
|
1140
|
+
// (goldens pin it): the retired implementation passed only
|
|
1141
|
+
// DOTALL|IGNORECASE (NO MULTILINE), so the
|
|
1141
1142
|
// `^##\s+` alternative in its lookahead matches only at string position 0,
|
|
1142
1143
|
// never at a mid-text line start. With no `**WHEN` after the first one, the
|
|
1143
1144
|
// non-greedy `.*?` therefore consumes to end-of-string — stripping every
|
|
@@ -2781,7 +2782,7 @@ function lint_execution_quality(p: string, text: string): Issue[] {
|
|
|
2781
2782
|
const hasVerificationSection = sectionHeadersLower.some((h) =>
|
|
2782
2783
|
['verify', 'validat', 'test', 'acceptance', 'quality gate'].some((kw) => h.includes(kw)),
|
|
2783
2784
|
);
|
|
2784
|
-
// hasAntipatternSection computed in the Python
|
|
2785
|
+
// hasAntipatternSection computed in the retired Python implementation but never used downstream.
|
|
2785
2786
|
void sectionHeadersLower.some((h) =>
|
|
2786
2787
|
['do not', "don't", 'gotcha', 'anti-pattern', 'avoid'].some((kw) => h.includes(kw)),
|
|
2787
2788
|
);
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Structural overlap detection across skills (description + triggers).
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Ported from the retired Python `src/scripts/skill_overlap.py` (ADR-200, Phase 8 /
|
|
6
6
|
* Wave 8b). The public surface, CLI contract, exit codes, stderr text,
|
|
7
|
-
* stdout text, and rendered markdown mirror the Python
|
|
7
|
+
* stdout text, and rendered markdown mirror the retired Python implementation EXACTLY
|
|
8
8
|
* — same custom frontmatter parser, same tokenizer + stopword set, same
|
|
9
9
|
* symbol-path regex, same Jaccard math with `round(x, 3)` banker's
|
|
10
10
|
* rounding, same thresholds, same `combinations` pair order, same sort
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Skill preview — non-destructive "what will this skill do?" summary.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Ported from the retired Python `src/scripts/skill_preview.py` (ADR-200 — Python→TS
|
|
6
6
|
* migration, Phase 8 / Wave 8e). Public surface mirrors the Python module
|
|
7
7
|
* exactly: `load_preview` / `render_plain` / `render_technical` / `PreviewError`,
|
|
8
8
|
* the CLI flags (`name`, `--technical`, `--format text|json`), the exit codes
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Block D · D3 — audit_persona_coverage.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
6
|
-
* (ADR-200, Phase 8 Wave 8h).
|
|
5
|
+
* Ported from the retired Python `src/scripts/skill_tools/audit_persona_coverage.py`
|
|
6
|
+
* (ADR-200, Phase 8 Wave 8h). The CLI contract is pinned —
|
|
7
7
|
* flags (`--skills-dir`, `--personas-dir`, `--json`), exit code (0 always),
|
|
8
8
|
* stdout split, byte-identical human table AND byte-identical JSON
|
|
9
9
|
* (`json.dump(..., indent=2)`, ensure_ascii default).
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
* Output: per-persona citation count + tier + status (ok / under-cited / orphan).
|
|
24
24
|
* Exit code: 0 always (this is an advisory tool, not a CI gate).
|
|
25
25
|
*
|
|
26
|
-
*
|
|
26
|
+
* Historical quirks are preserved deliberately — tests and downstream consumers pin the exact behaviour.
|
|
27
27
|
*/
|
|
28
28
|
import * as fs from 'node:fs';
|
|
29
29
|
import * as path from 'node:path';
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Block D · D3 — audit_user_type_coverage.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
6
|
-
* (ADR-200, Phase 8 Wave 8h).
|
|
5
|
+
* Ported from the retired Python `src/scripts/skill_tools/audit_user_type_coverage.py`
|
|
6
|
+
* (ADR-200, Phase 8 Wave 8h). The CLI contract is pinned —
|
|
7
7
|
* flags (`--user-types-dir`, `--search-root`, `--json`), exit code (0
|
|
8
8
|
* always), stdout split, byte-identical human table AND byte-identical JSON
|
|
9
9
|
* (`json.dump(..., indent=2)`, ensure_ascii default).
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
* Output: per-user-type reference count + status (ok / never-referenced /
|
|
28
28
|
* orphan). Exit code: 0 always (advisory, not a CI gate).
|
|
29
29
|
*
|
|
30
|
-
*
|
|
30
|
+
* Historical quirks are preserved deliberately — tests and downstream consumers pin the exact behaviour.
|
|
31
31
|
*/
|
|
32
32
|
import * as fs from 'node:fs';
|
|
33
33
|
import * as path from 'node:path';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Block D pilot tools for skill discovery and persona auditing.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
4
|
+
* Ported from the retired Python `src/scripts/skill_tools/__init__.py` (ADR-200,
|
|
5
5
|
* Phase 8 Wave 8h). The Python package marker carries only a module
|
|
6
6
|
* docstring; this index mirrors it as the package entry comment.
|
|
7
7
|
*
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Block D · D5 — eval gate runner.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
6
|
-
* (ADR-200, Phase 8 Wave 8h).
|
|
5
|
+
* Ported from the retired Python `src/scripts/skill_tools/run_block_d_eval.py`
|
|
6
|
+
* (ADR-200, Phase 8 Wave 8h). The CLI contract is pinned —
|
|
7
7
|
* flags (`--skills-dir`, `--personas-dir`, `--corpus-dir`, `--json`), exit
|
|
8
8
|
* codes (0 pass / 1 fail), stdout split, byte-identical human summary AND
|
|
9
9
|
* byte-identical JSON (`json.dump(..., indent=2)`, ensure_ascii default).
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
*
|
|
22
22
|
* Pilot pass = ≥ 2 / 3 tools pass. Anything less → kill switch.
|
|
23
23
|
*
|
|
24
|
-
*
|
|
24
|
+
* Historical quirks are preserved deliberately — tests and downstream consumers pin the exact behaviour.
|
|
25
25
|
*/
|
|
26
26
|
import * as fs from 'node:fs';
|
|
27
27
|
import * as path from 'node:path';
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Block D · D2 — score_skill_relevance.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
6
|
-
* (ADR-200, Phase 8 Wave 8h).
|
|
5
|
+
* Ported from the retired Python `src/scripts/skill_tools/score_skill_relevance.py`
|
|
6
|
+
* (ADR-200, Phase 8 Wave 8h). The CLI contract is pinned —
|
|
7
7
|
* flags (`--task`, `--skills-dir`, `--top`, `--json`, `--sample`), exit
|
|
8
8
|
* codes (0 / 2), stdout/stderr split, byte-identical human table AND
|
|
9
9
|
* byte-identical JSON (`json.dump(..., indent=2)`, ensure_ascii default).
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
*
|
|
29
29
|
* Output: ranked list with integer scores 0–100, descending. Ties break on name.
|
|
30
30
|
*
|
|
31
|
-
*
|
|
31
|
+
* Historical quirks are preserved deliberately — tests and downstream consumers pin the exact behaviour.
|
|
32
32
|
*/
|
|
33
33
|
import * as fs from 'node:fs';
|
|
34
34
|
import * as path from 'node:path';
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Block D · D4 — suggest_skill_for_task.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
6
|
-
* (ADR-200, Phase 8 Wave 8h).
|
|
5
|
+
* Ported from the retired Python `src/scripts/skill_tools/suggest_skill_for_task.py`
|
|
6
|
+
* (ADR-200, Phase 8 Wave 8h). The CLI contract is pinned —
|
|
7
7
|
* flags (`--task`, `--skills-dir`, `--personas-dir`, `--top`, `--json`,
|
|
8
8
|
* `--sample`), exit codes (0 / 2), stdout/stderr split, byte-identical
|
|
9
9
|
* human output AND byte-identical JSON (`json.dump(..., indent=2)`,
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
*
|
|
23
23
|
* Output: ranked combos with `skill`, `score`, `personas[]`, and `why`.
|
|
24
24
|
*
|
|
25
|
-
*
|
|
25
|
+
* Historical quirks are preserved deliberately — tests and downstream consumers pin the exact behaviour.
|
|
26
26
|
*/
|
|
27
27
|
import * as path from 'node:path';
|
|
28
28
|
import * as fs from 'node:fs';
|
|
@@ -2,12 +2,12 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Skill trigger evaluation runner.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Ported from the retired Python `src/scripts/skill_trigger_eval.py` (ADR-200,
|
|
6
6
|
* Phase 8 / Wave 8b). The public surface, CLI contract, exit codes,
|
|
7
7
|
* stdout/stderr split, byte-for-byte messages, the on-disk key gate
|
|
8
8
|
* (0600 + `sk-ant-` prefix), the controlling-terminal confirmation gate,
|
|
9
9
|
* and the written JSON (Python `json.dumps(asdict(result), indent=2)` +
|
|
10
|
-
* trailing newline) mirror the Python
|
|
10
|
+
* trailing newline) mirror the retired Python implementation EXACTLY. No behaviour
|
|
11
11
|
* changes.
|
|
12
12
|
*
|
|
13
13
|
* Design notes preserved:
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Collect skill-activation signal from Claude Code session jsonl.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Ported from the retired Python `src/scripts/skill_usage_collect.py` (ADR-200, Phase 8 /
|
|
6
6
|
* Wave 8b). Mirrors the CLI contract EXACTLY — the `--project-slug`, `--out`,
|
|
7
7
|
* `--quiet` flags, exit codes, the stdout/stderr split, byte-identical
|
|
8
8
|
* messages AND the byte-identical appended JSONL (`json.dumps(rec,
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
* Emits one JSONL record per (session, turn, slug, kind), append-only, deduped
|
|
17
17
|
* on the (session_id, turn_idx, slug, kind) tuple.
|
|
18
18
|
*
|
|
19
|
-
*
|
|
19
|
+
* Historical quirks are preserved deliberately — tests and downstream consumers pin the exact behaviour.
|
|
20
20
|
*/
|
|
21
21
|
import * as crypto from 'node:crypto';
|
|
22
22
|
import * as fs from 'node:fs';
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Aggregate `agents/runtime/metrics/skill-usage.jsonl` into a per-skill report.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Ported from the retired Python `src/scripts/skill_usage_report.py` (ADR-200,
|
|
6
6
|
* Phase 8 / Wave 8b). The public surface, CLI contract, exit code,
|
|
7
|
-
* stdout text, and rendered markdown mirror the Python
|
|
7
|
+
* stdout text, and rendered markdown mirror the retired Python implementation EXACTLY
|
|
8
8
|
* — same record grouping, same 30-day window math, same status
|
|
9
9
|
* classification, same known-slug discovery roots, same sort key, same
|
|
10
10
|
* byte-for-byte report body. No behaviour changes.
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Smoke-test path resolution against the package's own `.augment/` projection.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
6
|
-
* / Wave 8h).
|
|
5
|
+
* Ported from the retired Python `src/scripts/smoke_path_resolution.py` (ADR-200, Phase 8
|
|
6
|
+
* / Wave 8h). The CLI contract is pinned — no flags, exit codes
|
|
7
7
|
* (0 all entries resolve, 1 one or more misses, 3 no `.augment/rules/`),
|
|
8
8
|
* byte-identical stdout/stderr. No behaviour changes.
|
|
9
9
|
*
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
#!/usr/bin/env tsx
|
|
2
2
|
/** Structural smoke-test for the README Quickstart path.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
* Wave 8h).
|
|
4
|
+
* Ported from the retired Python `src/scripts/smoke_quickstart.py` (ADR-200, Phase 8 /
|
|
5
|
+
* Wave 8h). The CLI contract is pinned — no flags, exit codes
|
|
6
6
|
* (0 green, 1 one or more checks failed, 2 setup error), byte-identical
|
|
7
7
|
* stdout/stderr (`::error::…` GitHub-annotation lines, the ✅/❌ summary). No
|
|
8
8
|
* behaviour changes.
|
|
@@ -79,7 +79,7 @@ function _checkInstallerRuns(tmpdir: string): [number, string | null] {
|
|
|
79
79
|
// ADR-020: --project is reserved for maintainers; CI is a maintainer context.
|
|
80
80
|
const env = { ...process.env, AGENT_CONFIG_DEV_MODE: '1' };
|
|
81
81
|
// Run the installer's `.ts` twin via the repo-local tsx binary (was
|
|
82
|
-
// `python3 install.py`; the Python
|
|
82
|
+
// `python3 install.py`; the retired Python implementation is deleted).
|
|
83
83
|
const result = spawnSync(TSX_BIN, cmd, {
|
|
84
84
|
encoding: 'utf-8',
|
|
85
85
|
timeout: 60000,
|
|
@@ -128,7 +128,7 @@ function _checkDefaultProfile(settings: string): number {
|
|
|
128
128
|
* the same parse the runtime uses: extract the `decision_engine` block from the
|
|
129
129
|
* settings YAML, feed it to `parse()`, and assert the result is a
|
|
130
130
|
* `DecisionEngineSettings`. A parser rejection is reported via `_fail` so the
|
|
131
|
-
* `::error::` annotation matches the Python
|
|
131
|
+
* `::error::` annotation matches the retired Python implementation's failure shape.
|
|
132
132
|
*/
|
|
133
133
|
function _checkDecisionEngineBlock(settings: string): number {
|
|
134
134
|
const parsed: unknown = parseYaml(fs.readFileSync(settings, 'utf-8'), { version: '1.1' });
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Snapshot the agent-config build outputs for byte-identity verification.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Ported from the retired Python `src/scripts/snapshot_agent_outputs.py` (ADR-200,
|
|
6
6
|
* Phase 8 / Wave 8b). Mirrors the CLI contract EXACTLY — the `--out` flag,
|
|
7
7
|
* exit codes, the stdout/stderr split, byte-identical stdout AND the
|
|
8
8
|
* byte-identical written snapshot JSON (`json.dumps(indent=2,
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
* `_SKIP_NAMES`) for `verify_physical_move.ts`, mirroring the Python
|
|
23
23
|
* `from snapshot_agent_outputs import (...)`.
|
|
24
24
|
*
|
|
25
|
-
*
|
|
25
|
+
* Historical quirks are preserved deliberately — tests and downstream consumers pin the exact behaviour.
|
|
26
26
|
*/
|
|
27
27
|
import * as crypto from 'node:crypto';
|
|
28
28
|
import * as fs from 'node:fs';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env tsx
|
|
2
2
|
/** Phase 6.6 platform spot-check via AI council.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
4
|
+
* Ported from the retired Python `src/scripts/spotcheck_thin_root.py` (ADR-200, Phase 8 /
|
|
5
5
|
* Wave 8h). Mirrors the Python contract — no flags, exit 0, the two
|
|
6
6
|
* `Running … / ✅ Wrote …` stderr lines, and byte-identical written
|
|
7
7
|
* `thin-root-platform-spotcheck.md` / `.json`. No behaviour changes.
|
|
@@ -73,7 +73,7 @@ interface ResponseRow {
|
|
|
73
73
|
|
|
74
74
|
/**
|
|
75
75
|
* Run the live council in-process via the `ai_council` TS twins. Returns the
|
|
76
|
-
* council responses as plain rows. Mirrors the Python
|
|
76
|
+
* council responses as plain rows. Mirrors the retired Python implementation's
|
|
77
77
|
* `consult(members, question, budget, table=table, rounds=1)` call exactly
|
|
78
78
|
* (same members, prompt, max_tokens, budget). `table` + `rounds` ride in the
|
|
79
79
|
* twin's `opts` argument.
|
|
@@ -35,6 +35,7 @@ clusters:
|
|
|
35
35
|
ai_council: lab # multi-model council orchestration, external API deps
|
|
36
36
|
command_suggester: lab # context-aware command suggestion engine, pilot
|
|
37
37
|
cost: lab # cost tracking / budget gate (observability, Node .mjs)
|
|
38
|
+
mcp_exec: lab # compiled safety envelope for MCP exec-tier tools (run_tests pilot)
|
|
38
39
|
mcp_server: lab # MCP stdio server, separate runtime, pilot distribution
|
|
39
40
|
media: lab # shared adapter substrate for ai-video / ai-image
|
|
40
41
|
parity: lab # py2ts parity rigs (compare / coverage-diff), migration tooling
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Sync `.agent-settings.yml` against the template + profile (additive merge).
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Ported from the retired Python `src/scripts/sync_agent_settings.py` (ADR-200).
|
|
6
6
|
* Applies the section-aware merge rules documented in
|
|
7
7
|
* `docs/guidelines/agent-infra/layered-settings.md`:
|
|
8
8
|
*
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
* 0 — already in sync, or changes applied (or --dry-run ran cleanly)
|
|
33
33
|
* 2 — drift detected under --check, or invalid arguments / missing files
|
|
34
34
|
*
|
|
35
|
-
* No behaviour changes vs. the Python
|
|
35
|
+
* No behaviour changes vs. the retired Python implementation — historical quirks preserved (consumers pin the exact behaviour).
|
|
36
36
|
*/
|
|
37
37
|
|
|
38
38
|
import * as fs from 'node:fs';
|