@event4u/agent-config 8.4.1 → 8.6.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 +92 -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} +38 -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/auto-dispatch-classification.md +30 -0
- package/dist/agent-src/contexts/execution/orchestration-telemetry.md +15 -1
- package/dist/agent-src/contexts/execution/subagent-steering.md +54 -1
- package/dist/agent-src/contexts/execution/toolchain-resolver.md +1 -1
- package/dist/agent-src/contexts/model-recommendations.md +19 -0
- package/dist/agent-src/contexts/skills-and-commands.md +2 -2
- package/dist/agent-src/contexts/subagent-configuration.md +8 -0
- 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 +27 -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/ADR-116-memory-tripwire-activation-path.md +125 -0
- package/docs/decisions/INDEX.md +3 -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 +12 -2
- package/package.json +3 -1
- package/src/agent-src/README.md +1 -1
- package/src/agent-src/templates/scripts/work_engine/stack/runner.ts +1 -1
- package/src/config/agent-settings.template.yml +1 -1
- package/src/install/selectedTools.ts +38 -10
- 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/auto_dispatch.ts +63 -0
- 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/subagent_routing.ts +24 -0
- package/src/scripts/_lib/subagent_steering.ts +213 -3
- 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/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
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Surface-tier boundary guard (road-to-install-contract-stability Phase 2).
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Ported from the retired Python `src/scripts/check_surface_tiers.py` (ADR-200). The CLI
|
|
6
6
|
* contract is mirrored EXACTLY — the `--skip-imports` flag + the
|
|
7
7
|
* `AGENT_CONFIG_SKIP_SURFACE_TIER_CHECK` env kill-switch, exit codes (0 clean,
|
|
8
8
|
* 1 violation(s), 2 argparse usage error), byte-identical finding + summary
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
* same core→lab import boundary check. No behaviour changes — latent bugs
|
|
11
11
|
* replicated.
|
|
12
12
|
*
|
|
13
|
-
*
|
|
13
|
+
* the retired Python implementation parses each `.py` under `src/scripts/` with the stdlib
|
|
14
14
|
* `ast` module to find imports and the line numbers of imports lexically inside
|
|
15
15
|
* a guarding `try/except`. This twin replicates that with a focused Python
|
|
16
16
|
* import + try/except line scanner: it tracks each statement's START line (the
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Fail when `package.json.version` and the project-template pin drift.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Ported from the retired Python `src/scripts/check_template_pin_drift.py` (ADR-200,
|
|
6
6
|
* Phase 4 / Wave 4c). CLI contract mirrored EXACTLY — `--allow-empty`
|
|
7
7
|
* flag, exit codes (0 match / empty-allowed, 1 drift / missing / unreadable),
|
|
8
8
|
* byte-identical messages, stdout/stderr split, same template-file
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Coverage forcing-function — WARN-only (R3 of road-to-test-and-gate-integrity).
|
|
4
4
|
*
|
|
5
|
-
*
|
|
6
|
-
* Phase 4 / Wave 4c).
|
|
5
|
+
* Ported from the retired Python `src/scripts/check_test_coverage_diff.py` (ADR-200,
|
|
6
|
+
* Phase 4 / Wave 4c). The CLI contract is pinned — `--base-ref`
|
|
7
7
|
* flag, always exit 0 (warn-only by contract), stdout, byte-identical
|
|
8
8
|
* messages, the git name-status read, the pragma scan, and the `evaluate`
|
|
9
9
|
* core logic. No behaviour changes — latent matcher quirks replicated.
|
|
@@ -2,12 +2,12 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Token-Optimizer freshness validator.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
6
|
-
* Phase 4 / Wave 4c). The CLI contract is
|
|
5
|
+
* Ported from the retired Python `src/scripts/check_token_optimizer_freshness.py` (ADR-200,
|
|
6
|
+
* Phase 4 / Wave 4c). The CLI contract is pinned — no flags,
|
|
7
7
|
* exit codes (0 clean, 1 drift / missing skill / unparseable), stdout/stderr
|
|
8
8
|
* split, byte-identical messages, the same catalog-row parsing, the same
|
|
9
9
|
* `resolve()` / `is_external()` logic and the same `_lib/agent_src`
|
|
10
|
-
* resolution.
|
|
10
|
+
* resolution. Historical quirks are preserved deliberately — tests and downstream consumers pin the exact behaviour.
|
|
11
11
|
*
|
|
12
12
|
* Parses the catalog table inside the token-optimizer SKILL.md, verifies
|
|
13
13
|
* every cited internal asset exists, and checks the trigger keywords against
|
|
@@ -2,13 +2,13 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Trigger-eval freshness + structural smoke gate (road-to-contract-integrity F4).
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Ported from the retired Python `src/scripts/check_trigger_evals.py` (ADR-200). The CLI
|
|
6
6
|
* contract is mirrored EXACTLY — `--today YYYY-MM-DD` / `--quiet` flags, exit
|
|
7
7
|
* codes (0 fresh+valid, 1 regression(s), 2 bad --today / usage), the
|
|
8
8
|
* stdout/stderr split (the ✅ summary on stdout, every ❌ on stderr),
|
|
9
9
|
* byte-identical finding messages, the same glob (sorted), the same two
|
|
10
10
|
* supported shapes, and the same ISO-date / age logic. No behaviour changes —
|
|
11
|
-
*
|
|
11
|
+
* historical quirks preserved (consumers pin the exact behaviour).
|
|
12
12
|
*
|
|
13
13
|
* `triggers.json` files encode each skill's behavioural intent; the surrounding
|
|
14
14
|
* repo context drifts, so trigger sets need regression-locking. This gate is
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Thin CLI wrapper: emit the daily update-check banner to stderr.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Ported from the retired Python `src/scripts/check_update_banner.py` (ADR-200,
|
|
6
6
|
* Phase 4 / Wave 4c). CLI contract mirrored EXACTLY — `--installed-version`,
|
|
7
7
|
* `--cwd`, `--help`/`-h` flags; never raises, never exits non-zero;
|
|
8
8
|
* banner (when emitted) goes to stderr; all other output suppressed.
|
package/src/scripts/ci_status.ts
CHANGED
|
Binary file
|
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* CI Summary — render a GitHub Step Summary from dispatcher run results.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
6
|
-
* migration, Phase 8 / Wave 8a). The CLI contract is
|
|
5
|
+
* Ported from the retired Python `src/scripts/ci_summary.py` (ADR-200 — Python→TS
|
|
6
|
+
* migration, Phase 8 / Wave 8a). The CLI contract is pinned:
|
|
7
7
|
* same flags (`--runs`, `--title`), same defaults, same stdout/env-file
|
|
8
8
|
* behaviour, same byte-identical markdown output, same exit code (always
|
|
9
|
-
* 0).
|
|
9
|
+
* 0). Historical quirks are preserved deliberately — tests and downstream consumers pin the exact behaviour.
|
|
10
10
|
*
|
|
11
11
|
* Consumes JSON files produced by `scripts/runtime_dispatcher.py run
|
|
12
12
|
* --output FILE`. Each file is an ExecutionResult dump (see
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* CI-time / local-edit-time ratio (council file 07, Phase 2.3).
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Ported from the retired Python `ci_time_ratio.py` (Phase 8 / Wave 8e).
|
|
6
6
|
*
|
|
7
7
|
* Samples the last N commits on a branch, classifies each by touched
|
|
8
8
|
* paths (doc / skill / test / meta / mixed), and computes:
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Suppress recently-shown suggestions per conversation.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
4
|
+
* Ported from the retired Python `src/scripts/command_suggester/cooldown.py`
|
|
5
5
|
* (ADR-200 py2ts).
|
|
6
6
|
*
|
|
7
7
|
* Cooldown key is `(command_name, evidence)` so two distinct triggers
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Context-aware command suggestion engine.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
4
|
+
* Ported from the retired Python `src/scripts/command_suggester/__init__.py`
|
|
5
5
|
* (ADR-200 py2ts).
|
|
6
6
|
*
|
|
7
7
|
* Public API exposed for the always-on `command-suggestion` rule and for
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Read command frontmatter into `CommandSpec` instances.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
4
|
+
* Ported from the retired Python `src/scripts/command_suggester/loader.py`
|
|
5
5
|
* (ADR-200 py2ts).
|
|
6
6
|
*
|
|
7
7
|
* Reuses the package's `validate_frontmatter.parse_frontmatter` twin
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Score eligible commands against a user message + recent context.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
4
|
+
* Ported from the retired Python `src/scripts/command_suggester/match.py`
|
|
5
5
|
* (ADR-200 py2ts).
|
|
6
6
|
*
|
|
7
7
|
* Deterministic, no ML, no third-party deps. Two signals combine into
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Render ranked matches as a numbered-options block.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
4
|
+
* Ported from the retired Python `src/scripts/command_suggester/render.py`
|
|
5
5
|
* (ADR-200 py2ts).
|
|
6
6
|
*
|
|
7
7
|
* Output strictly conforms to `user-interaction` Iron Law:
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Sanitize matcher input to prevent self-echo and quoted-code triggering.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
4
|
+
* Ported from the retired Python `src/scripts/command_suggester/sanitize.py`
|
|
5
5
|
* (ADR-200 py2ts).
|
|
6
6
|
*
|
|
7
7
|
* The suggestion engine scores against the user's raw message and the
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Read `commands.suggestion.*` from `.agent-settings.yml` into `Settings`.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
4
|
+
* Ported from the retired Python `src/scripts/command_suggester/settings.py`
|
|
5
5
|
* (ADR-200 py2ts). Mirror of the chat-history pattern:
|
|
6
6
|
*
|
|
7
7
|
* - Default-permissive: a missing file or missing section returns
|
|
Binary file
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Compile rule frontmatter into `router.json`.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Ported from the retired Python `src/scripts/compile_router.py` (ADR-200). The
|
|
6
6
|
* CLI contract is mirrored EXACTLY — the positional argv flags (`--pretty`,
|
|
7
7
|
* `--check`), exit codes (0 = wrote / up-to-date; 1 = stale under --check), the
|
|
8
8
|
* stdout/stderr split, byte-identical messages, AND byte-identical generated
|
|
@@ -12,9 +12,9 @@
|
|
|
12
12
|
*
|
|
13
13
|
* Imports the `_lib/agent_settings` (`project_settings_path`,
|
|
14
14
|
* `load_agent_settings`) and `_lib/agent_src` (`artefact_roots`) twins — the
|
|
15
|
-
* SAME modules the Python
|
|
15
|
+
* SAME modules the retired Python implementation imports.
|
|
16
16
|
*
|
|
17
|
-
*
|
|
17
|
+
* Historical quirks are preserved deliberately — tests and downstream consumers pin the exact behaviour.
|
|
18
18
|
*
|
|
19
19
|
* Reads `.agent-src.uncondensed/rules/*.md`; produces deterministic JSON
|
|
20
20
|
* mapping kernel + tier-1 + tier-2 rules to their triggers and routed
|
|
@@ -33,7 +33,7 @@ type Json = unknown;
|
|
|
33
33
|
type JsonObject = Record<string, Json>;
|
|
34
34
|
|
|
35
35
|
const _HERE = fileURLToPath(import.meta.url);
|
|
36
|
-
// _HERE === <repo>/src/scripts/compile_router.ts ; the Python
|
|
36
|
+
// _HERE === <repo>/src/scripts/compile_router.ts ; the retired Python implementation derives
|
|
37
37
|
// ROOT = <file>.parent.parent.parent — two dirs up from src/scripts.
|
|
38
38
|
export const ROOT = path.resolve(path.dirname(_HERE), '..', '..');
|
|
39
39
|
// ADR-017: rules now live across multiple source roots. Legacy
|
package/src/scripts/condense.ts
CHANGED
|
@@ -5,15 +5,15 @@
|
|
|
5
5
|
* symlinks for the rest; opt into rule symlinks via
|
|
6
6
|
* augment.rules_use_symlinks in .agent-settings.yml).
|
|
7
7
|
*
|
|
8
|
-
*
|
|
8
|
+
* Ported from the retired Python `src/scripts/condense.py` (ADR-200 — Python→TS
|
|
9
9
|
* migration, Phase 5). Mirrors the Python CLI surface EXACTLY — every
|
|
10
10
|
* subcommand (`--sync`, `--list`, `--changed`, `--check`, `--check-hashes`,
|
|
11
11
|
* `--clean-hashes`, `--mark-done <path>`, `--mark-all-done`,
|
|
12
12
|
* `--generate-tools`, `--clean-tools`, `--project-augment`) — same flags,
|
|
13
13
|
* exit codes, stdout/stderr split, byte-identical messages. No behaviour
|
|
14
|
-
* changes;
|
|
14
|
+
* changes; historical quirks preserved and flagged.
|
|
15
15
|
*
|
|
16
|
-
* Path handling note: the Python
|
|
16
|
+
* Path handling note: the retired Python implementation uses `pathlib.Path` objects.
|
|
17
17
|
* This twin uses absolute path strings (the host filesystem on the
|
|
18
18
|
* supported platforms is POSIX). Logical relative paths are always POSIX
|
|
19
19
|
* (forward-slash) strings, matching the Python `.as_posix()` keys.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Input-side memory condensation — Phase 2 of step-16-telegraph-substance.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Ported from the retired Python `src/scripts/condense_memory.py` (ADR-200, Phase 7 /
|
|
6
6
|
* dev-side memory). The public API and CLI contract mirror the Python
|
|
7
7
|
* original EXACTLY — same exported names (snake_case kept deliberately),
|
|
8
8
|
* same exit codes, stdout/stderr split, byte-identical messages, and
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
// read-only, lazy-PyYAML; they layer on top of `scripts/_lib/agent_settings`
|
|
7
7
|
// for project-root anchoring.
|
|
8
8
|
//
|
|
9
|
-
//
|
|
9
|
+
// Ported from the retired Python `src/scripts/config/__init__.py` (ADR-200). The Python package's
|
|
10
10
|
// `__init__.py` declares no public symbols (only the module docstring), so
|
|
11
11
|
// this barrel intentionally re-exports nothing — importers reach into the
|
|
12
12
|
// individual twins (`./presets.js`, `./profiles.js`, `./packs.js`,
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
// tsx src/scripts/config/packs.ts --packs laravel,finance-basic
|
|
19
19
|
// tsx src/scripts/config/packs.ts --legacy-all
|
|
20
20
|
//
|
|
21
|
-
//
|
|
21
|
+
// Ported from the retired Python `src/scripts/config/packs.py` (ADR-200).
|
|
22
22
|
import * as path from 'node:path';
|
|
23
23
|
import * as fs from 'node:fs';
|
|
24
24
|
import { fileURLToPath, pathToFileURL } from 'node:url';
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
// `developer` vs `block_on_risk.financial_paths` for `founder`) read the
|
|
19
19
|
// merged knob bag returned by `resolve_preset`.
|
|
20
20
|
//
|
|
21
|
-
//
|
|
21
|
+
// Ported from the retired Python `src/scripts/config/presets.py` (ADR-200).
|
|
22
22
|
import * as fs from 'node:fs';
|
|
23
23
|
import { createRequire } from 'node:module';
|
|
24
24
|
import * as path from 'node:path';
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
// Reuses the explain-modes two-views-over-one-envelope convention
|
|
15
15
|
// (`docs/contracts/explain-modes.md`).
|
|
16
16
|
//
|
|
17
|
-
//
|
|
17
|
+
// Ported from the retired Python `src/scripts/config/profile_explain.py` (ADR-200).
|
|
18
18
|
|
|
19
19
|
// `any` mirrors Python's `dict[str, Any]` envelope; values are heterogeneous
|
|
20
20
|
// (lists, ints, bools, the `?` placeholder string) and consumed only through
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
// block, the loader returns a structured warning state so `/onboard` can
|
|
19
19
|
// surface "audience not yet picked".
|
|
20
20
|
//
|
|
21
|
-
//
|
|
21
|
+
// Ported from the retired Python `src/scripts/config/profiles.py` (ADR-200).
|
|
22
22
|
import * as fs from 'node:fs';
|
|
23
23
|
import { createRequire } from 'node:module';
|
|
24
24
|
import * as path from 'node:path';
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
// Pure functions are unit-testable; the `__main__` CLI is what the `/profile`
|
|
25
25
|
// command shells out to.
|
|
26
26
|
//
|
|
27
|
-
//
|
|
27
|
+
// Ported from the retired Python `src/scripts/config/session_profiles.py` (ADR-200).
|
|
28
28
|
import * as crypto from 'node:crypto';
|
|
29
29
|
import * as fs from 'node:fs';
|
|
30
30
|
import { createRequire } from 'node:module';
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Platform-agnostic PostToolUse hook for the `context-hygiene` rule.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Ported from the retired Python `src/scripts/context_hygiene_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
|
*
|
|
@@ -39,7 +39,7 @@ import { atomic_write_json } from "./hooks/state_io.js";
|
|
|
39
39
|
|
|
40
40
|
// NOTE: the Python docstring says `agents/runtime/state/`, but the code
|
|
41
41
|
// constant is `agents/state/`. Replicated verbatim — this is a latent
|
|
42
|
-
// docstring/code divergence in the Python
|
|
42
|
+
// docstring/code divergence in the retired Python implementation (ADR-200 § replicate
|
|
43
43
|
// latent bugs), and `STATE_FILE` is what the test suite asserts against.
|
|
44
44
|
export const STATE_DIR = path.join("agents", "state");
|
|
45
45
|
export const STATE_FILE = path.join(STATE_DIR, "context-hygiene.json");
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Group cost-tracking sessions by conversation_id (the external runtime `conversation.mjs` `5b71c7a` ref).
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Ported from the retired Python `src/scripts/cost_by_conversation.py` (ADR-200 —
|
|
6
6
|
* Python→TS migration, Phase 8 / Wave 8e). Public surface mirrors the Python
|
|
7
7
|
* module exactly: same CLI flags (`--input`, `--format`), same exit code (0),
|
|
8
8
|
* same stdout, and byte-identical `json.dumps(..., indent=2)` output.
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Emit `cost-summary/v1` JSON per `docs/contracts/cost-summary-schema.md`.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
6
|
-
* migration, Phase 8 / Wave 8e). The CLI contract is
|
|
5
|
+
* Ported from the retired Python `src/scripts/cost_summary.py` (ADR-200 — Python→TS
|
|
6
|
+
* migration, Phase 8 / Wave 8e). The CLI contract is pinned:
|
|
7
7
|
* same flags (`--input`, `--format json`), same exit code (0), same
|
|
8
8
|
* byte-identical JSON output (json.dumps indent=2; PyFloat-aware so
|
|
9
9
|
* `total_cost_usd` renders with a trailing `.0` like Python). The
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Council CLI — `./agent-config council:{estimate,run,render}`.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Ported from the retired Python `council_cli.py` (ADR-200). Wraps
|
|
6
6
|
* `ai_council/orchestrator` for non-interactive callers. Subcommands:
|
|
7
7
|
*
|
|
8
8
|
* estimate Bundle + estimate per-member cost (no API call, no spend).
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Manual pruner for council artefacts.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
4
|
+
* Ported from the retired Python `src/scripts/council_prune.py` (ADR-200 — Python→TS
|
|
5
5
|
* migration, Phase 1).
|
|
6
6
|
*
|
|
7
7
|
* Deletes council files older than `ai_council.session_retention_days`
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Cross-repo retrieval — read-only, targeted, opt-in (ADR-032 Option A).
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Ported from the retired Python `src/scripts/cross_repo_retrieve.py` (ADR-200,
|
|
6
6
|
* Phase 8 / Wave 8g). Mirrors the Python contract EXACTLY — positional
|
|
7
7
|
* `query` + `--path-scope` / `--max-chunks` / `--format` / `--root` flags,
|
|
8
8
|
* the retrieval envelope shape, the text-table render, opt-in / large-sibling
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
* pulls in `workspace_secrets`). Those modules are not yet ported to
|
|
19
19
|
* TypeScript and a `.ts` cannot import a `.py`, so the redaction + chunking
|
|
20
20
|
* primitives are ported faithfully inline here and verified byte-identical
|
|
21
|
-
* against the Python
|
|
21
|
+
* against the retired Python implementations (differential-tested, no behavior divergence).
|
|
22
22
|
* They carry no legacy-source-path literal, matching the `.py`.
|
|
23
23
|
*
|
|
24
24
|
* Scope guards (Option A):
|
|
@@ -2,15 +2,15 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Pretty-print the `stats` block from the committed discovery manifest.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
6
|
-
* Wave 8a). The CLI contract is
|
|
5
|
+
* Ported from the retired Python `src/scripts/discovery_stats.py` (ADR-200, Phase 8 /
|
|
6
|
+
* Wave 8a). The CLI contract is pinned — the single `--manifest`
|
|
7
7
|
* flag (default `dist/discovery/discovery-manifest.json`), exit codes
|
|
8
8
|
* (0 printed · 1 manifest missing or malformed), the stdout/stderr split,
|
|
9
9
|
* and byte-identical messages. Cheap sanity surface for developers: counts
|
|
10
10
|
* by category, lifecycle, and trust level. Reads only the committed
|
|
11
11
|
* manifest; no scan, no generation. See ADR-015.
|
|
12
12
|
*
|
|
13
|
-
*
|
|
13
|
+
* Historical quirks are preserved deliberately — tests and downstream consumers pin the exact behaviour.
|
|
14
14
|
*/
|
|
15
15
|
import * as fs from 'node:fs';
|
|
16
16
|
import * as path from 'node:path';
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Evidence Report template automation.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
6
|
-
* contract
|
|
5
|
+
* Ported from the retired Python `src/scripts/evidence_report.py` (ADR-200). The CLI
|
|
6
|
+
* contract pins the historical contract exactly — same subcommands
|
|
7
7
|
* (`init`, `add`, `git-state`), same flags, same exit codes (0 / 1 / 3),
|
|
8
8
|
* same stdout/stderr split, byte-identical messages, the same
|
|
9
9
|
* skeleton/provenance text, the same heading-insertion logic, and the
|
|
@@ -29,7 +29,7 @@ import * as path from 'node:path';
|
|
|
29
29
|
import process from 'node:process';
|
|
30
30
|
import { fileURLToPath, pathToFileURL } from 'node:url';
|
|
31
31
|
|
|
32
|
-
// argparse `prog` is hardcoded to "evidence_report.py" in the Python
|
|
32
|
+
// argparse `prog` is hardcoded to "evidence_report.py" in the retired Python implementation,
|
|
33
33
|
// so usage strings stay byte-identical regardless of the `.py`/`.ts` filename.
|
|
34
34
|
const PROG = 'evidence_report.py';
|
|
35
35
|
// First line of the module docstring — argparse `description`.
|
|
@@ -182,7 +182,7 @@ function cmd_add(args: ParsedArgs, root: string): number {
|
|
|
182
182
|
insert_at = i;
|
|
183
183
|
break;
|
|
184
184
|
}
|
|
185
|
-
// NOTE: dead branch in the Python
|
|
185
|
+
// NOTE: dead branch in the retired Python implementation (in_target is false here);
|
|
186
186
|
// replicated faithfully — never reached.
|
|
187
187
|
if (in_target && line.startsWith('## ')) {
|
|
188
188
|
insert_at = i;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Mine repeated phase patterns from `agents/runtime/state/audit/*.jsonl`.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Ported from the retired Python `src/scripts/extract_audit_patterns.py` (ADR-200 —
|
|
6
6
|
* Python→TS migration, Phase 8 / Wave 8g). Mirrors the Python CLI contract
|
|
7
7
|
* EXACTLY — the `--audit-dir` / `--month` / `--min-count` / `--json` flags,
|
|
8
8
|
* exit codes (0 ok / 2 min-count below floor), the stdout/stderr split,
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
*
|
|
17
17
|
* Read-only: never mutates the JSONL, never writes outside stdout.
|
|
18
18
|
*
|
|
19
|
-
*
|
|
19
|
+
* Historical quirks are preserved deliberately — tests and downstream consumers pin the exact behaviour.
|
|
20
20
|
*/
|
|
21
21
|
import * as fs from 'node:fs';
|
|
22
22
|
import * as path from 'node:path';
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* First-run gate — surface the marketplace-install-but-unscaffolded shape.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Ported from the retired Python `src/scripts/first_run_gate_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
|
*
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
#!/usr/bin/env tsx
|
|
2
2
|
/** Generate agents/evidence/notes/discovery-baseline.md for Phase 0.1.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
* / Wave 8h).
|
|
4
|
+
* Ported from the retired Python `src/scripts/gen_discovery_baseline.py` (ADR-200, Phase 8
|
|
5
|
+
* / Wave 8h). The CLI contract is pinned — no flags, exit 0,
|
|
6
6
|
* byte-identical stdout (`wrote {dest} — {n} lines`) and byte-identical written
|
|
7
7
|
* `discovery-baseline.md` (except the generated UTC timestamp, which is
|
|
8
8
|
* non-deterministic and excluded from golden parity). No behaviour changes:
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Generate `CAPABILITIES.yaml` — the package's capability-coverage index.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
5
|
+
* Ported from the retired Python `src/scripts/generate_capabilities_index.py` (ADR-200).
|
|
6
|
+
* The CLI contract is pinned — the `--check` flag, exit codes
|
|
7
7
|
* (0 / 1 / 2), stdout/stderr split, and the byte-identical generated
|
|
8
8
|
* `CAPABILITIES.yaml` (header comment block, `meta:` block, `capability_areas:`
|
|
9
9
|
* by domain, `gaps:` block, the `json.dumps(..., ensure_ascii=False)` scalar
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Generate the cross-host capability matrix (road-to-competitive-borrow P1.3).
|
|
4
4
|
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
5
|
+
* Ported from the retired Python `src/scripts/generate_capability_matrix.py` (ADR-200).
|
|
6
|
+
* The CLI contract is pinned — the `--check` / `--quiet` flags,
|
|
7
7
|
* exit codes (0 / 1 / 2), stdout/stderr split, the byte-identical
|
|
8
8
|
* `docs/capability-matrix.md` (heading prose, the host-header table, the glyph
|
|
9
9
|
* cells, ARTIFACTS row order), and the byte-identical
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Generate llms.txt and docs/skills-catalog.md from SKILL.md frontmatter.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
6
|
-
* Wave 8a).
|
|
5
|
+
* Ported from the retired Python `src/scripts/generate_catalog.py` (ADR-200, Phase 8
|
|
6
|
+
* Wave 8a). The CLI contract is pinned — same stdout lines,
|
|
7
7
|
* same exit codes, byte-identical generated `llms.txt` + `docs/skills-catalog.md`.
|
|
8
8
|
*
|
|
9
9
|
* Reads name + description from each `dist/agent-src/skills/*\/SKILL.md` and
|
|
@@ -2,12 +2,12 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Generate `docs/command-flows.md` — the Flows primary view (road-to-6.1.0 Step 9).
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Ported from the retired Python `src/scripts/generate_command_flows.py` (ADR-200 —
|
|
6
6
|
* Python→TS migration, Phase 8 / Wave 8a). The CLI contract is mirrored
|
|
7
7
|
* EXACTLY: same flag (`--check`), same exit codes, same stdout/stderr
|
|
8
8
|
* split, same byte-identical generated `docs/command-flows.md`. WRITER —
|
|
9
9
|
* the rendered markdown matches the Python output byte-for-byte. No
|
|
10
|
-
* behaviour changes —
|
|
10
|
+
* behaviour changes — historical quirks preserved (consumers pin the exact behaviour).
|
|
11
11
|
*
|
|
12
12
|
* Turns the flat command list into a FLOW-organized view from two
|
|
13
13
|
* validated sources:
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Generate the named cookbook (road-to-competitive-borrow P1.4).
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Ported from the retired Python `src/scripts/generate_cookbook.py` (ADR-200). Mirrors the
|
|
6
6
|
* Python CLI contract EXACTLY — the `--check` / `--quiet` flags, exit codes
|
|
7
7
|
* (0 / 1 / 2), stdout/stderr split, and the byte-identical generated
|
|
8
8
|
* `docs/cookbook.md` (heading prose, the named-recipe sections, the four
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Generate `agents/index.md` (internal) and `docs/catalog.md` (public).
|
|
4
4
|
*
|
|
5
|
-
*
|
|
6
|
-
* Wave 8a). The CLI contract is
|
|
5
|
+
* Ported from the retired Python `src/scripts/generate_index.py` (ADR-200, Phase 8 /
|
|
6
|
+
* Wave 8a). The CLI contract is pinned — the single `--check`
|
|
7
7
|
* flag, exit codes (0 / 1 on drift), the stdout split, byte-identical
|
|
8
8
|
* messages, AND byte-identical generated Markdown (both files are write
|
|
9
9
|
* targets; both are sync-checked in CI via `--check`).
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
* `docs/guidelines/` (via the `_lib/agent_src` twin's multi-root discovery)
|
|
13
13
|
* and renders two artefact tables — one for maintainers, one for consumers.
|
|
14
14
|
*
|
|
15
|
-
*
|
|
15
|
+
* Historical quirks are preserved deliberately — tests and downstream consumers pin the exact behaviour.
|
|
16
16
|
*/
|
|
17
17
|
import * as fs from 'node:fs';
|
|
18
18
|
import * as path from 'node:path';
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Generate the file-ownership matrix.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
6
|
-
* Phase 8 Wave 8a).
|
|
5
|
+
* Ported from the retired Python `src/scripts/generate_ownership_matrix.py` (ADR-200,
|
|
6
|
+
* Phase 8 Wave 8a). The CLI contract is pinned — flag
|
|
7
7
|
* (`--check`), exit codes (0 / 1 / 2 / 3), stdout/stderr split, and the
|
|
8
8
|
* byte-identical generated outputs (`json.dumps(payload, indent=2,
|
|
9
9
|
* sort_keys=False)` + trailing newline, and the markdown render).
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Generate `pack.yaml` + `README.md` for every pack home.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Ported from the retired Python `src/scripts/generate_pack_manifests.py` (ADR-200 —
|
|
6
6
|
* Python→TS migration, Phase 8 / Wave 8a). The CLI contract is mirrored
|
|
7
7
|
* EXACTLY: same flag (`--check`), same exit codes, same stdout/stderr
|
|
8
8
|
* split, same byte-identical generated `pack.yaml` + `README.md`. WRITER
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
* PyYAML `safe_dump(meta, sort_keys=True, allow_unicode=True)` block-style
|
|
11
11
|
* emission (`_py_safe_dump` below reproduces PyYAML's scalar-quoting +
|
|
12
12
|
* block-collection layout for the value shapes this script emits). No
|
|
13
|
-
* behaviour changes —
|
|
13
|
+
* behaviour changes — historical quirks preserved (consumers pin the exact behaviour).
|
|
14
14
|
*
|
|
15
15
|
* Phase 4.4 of the monorepo migration (ADR-017). The manifests are
|
|
16
16
|
* *derived* from frontmatter + `src/config/discovery/packs.yml`; they are
|