@zigrivers/scaffold 3.27.0 → 3.29.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/README.md +5 -1
- package/content/guides/.gitkeep +0 -0
- package/content/guides/index.html +1188 -0
- package/content/guides/mmr/.diagrams/diagram-0.svg +1 -0
- package/content/guides/mmr/.diagrams/manifest.json +3 -0
- package/content/guides/mmr/index.html +1728 -0
- package/content/guides/mmr/index.md +403 -0
- package/content/knowledge/VERSION +1 -0
- package/content/knowledge/backend/backend-api-design.md +8 -0
- package/content/knowledge/backend/backend-architecture.md +8 -0
- package/content/knowledge/backend/backend-async-patterns.md +7 -0
- package/content/knowledge/backend/backend-auth-patterns.md +9 -0
- package/content/knowledge/backend/backend-conventions.md +6 -0
- package/content/knowledge/backend/backend-data-modeling.md +7 -0
- package/content/knowledge/backend/backend-deployment.md +8 -0
- package/content/knowledge/backend/backend-dev-environment.md +5 -0
- package/content/knowledge/backend/backend-fintech-broker-integration.md +6 -0
- package/content/knowledge/backend/backend-fintech-compliance.md +10 -2
- package/content/knowledge/backend/backend-fintech-data-modeling.md +6 -0
- package/content/knowledge/backend/backend-fintech-ledger.md +6 -0
- package/content/knowledge/backend/backend-fintech-observability.md +6 -0
- package/content/knowledge/backend/backend-fintech-order-lifecycle.md +6 -0
- package/content/knowledge/backend/backend-fintech-risk-management.md +6 -0
- package/content/knowledge/backend/backend-fintech-testing.md +6 -0
- package/content/knowledge/backend/backend-observability.md +7 -0
- package/content/knowledge/backend/backend-project-structure.md +6 -0
- package/content/knowledge/backend/backend-requirements.md +6 -0
- package/content/knowledge/backend/backend-security.md +7 -0
- package/content/knowledge/backend/backend-testing.md +7 -0
- package/content/knowledge/backend/backend-worker-patterns.md +6 -0
- package/content/knowledge/browser-extension/browser-extension-architecture.md +6 -0
- package/content/knowledge/browser-extension/browser-extension-content-scripts.md +6 -0
- package/content/knowledge/browser-extension/browser-extension-conventions.md +6 -0
- package/content/knowledge/browser-extension/browser-extension-cross-browser.md +6 -0
- package/content/knowledge/browser-extension/browser-extension-dev-environment.md +6 -0
- package/content/knowledge/browser-extension/browser-extension-manifest.md +6 -0
- package/content/knowledge/browser-extension/browser-extension-project-structure.md +6 -0
- package/content/knowledge/browser-extension/browser-extension-requirements.md +6 -0
- package/content/knowledge/browser-extension/browser-extension-security.md +7 -0
- package/content/knowledge/browser-extension/browser-extension-service-workers.md +6 -0
- package/content/knowledge/browser-extension/browser-extension-store-submission.md +6 -0
- package/content/knowledge/browser-extension/browser-extension-testing.md +6 -0
- package/content/knowledge/cli/cli-architecture.md +4 -0
- package/content/knowledge/cli/cli-conventions.md +4 -0
- package/content/knowledge/cli/cli-dev-environment.md +5 -0
- package/content/knowledge/cli/cli-distribution-patterns.md +5 -0
- package/content/knowledge/cli/cli-interactivity-patterns.md +4 -0
- package/content/knowledge/cli/cli-output-patterns.md +4 -0
- package/content/knowledge/cli/cli-project-structure.md +4 -0
- package/content/knowledge/cli/cli-requirements.md +4 -0
- package/content/knowledge/cli/cli-shell-integration.md +4 -0
- package/content/knowledge/cli/cli-testing.md +4 -0
- package/content/knowledge/core/adr-craft.md +8 -0
- package/content/knowledge/core/ai-memory-management.md +23 -0
- package/content/knowledge/core/api-design.md +6 -0
- package/content/knowledge/core/automated-review-tooling.md +8 -0
- package/content/knowledge/core/claude-md-patterns.md +10 -2
- package/content/knowledge/core/coding-conventions.md +10 -2
- package/content/knowledge/core/database-design.md +8 -0
- package/content/knowledge/core/design-system-tokens.md +8 -0
- package/content/knowledge/core/dev-environment.md +4 -0
- package/content/knowledge/core/domain-modeling.md +6 -0
- package/content/knowledge/core/eval-craft.md +6 -0
- package/content/knowledge/core/git-workflow-patterns.md +8 -0
- package/content/knowledge/core/multi-model-research-dispatch.md +6 -0
- package/content/knowledge/core/multi-model-review-dispatch.md +6 -0
- package/content/knowledge/core/multi-service-api-contracts.md +5 -0
- package/content/knowledge/core/multi-service-architecture.md +5 -0
- package/content/knowledge/core/multi-service-auth.md +6 -0
- package/content/knowledge/core/multi-service-data-ownership.md +8 -0
- package/content/knowledge/core/multi-service-observability.md +8 -0
- package/content/knowledge/core/multi-service-resilience.md +5 -0
- package/content/knowledge/core/multi-service-task-decomposition.md +8 -0
- package/content/knowledge/core/multi-service-testing.md +5 -0
- package/content/knowledge/core/operations-runbook.md +8 -0
- package/content/knowledge/core/project-structure-patterns.md +4 -0
- package/content/knowledge/core/review-step-template.md +4 -0
- package/content/knowledge/core/security-best-practices.md +6 -0
- package/content/knowledge/core/system-architecture.md +6 -0
- package/content/knowledge/core/task-decomposition.md +9 -4
- package/content/knowledge/core/task-tracking.md +128 -29
- package/content/knowledge/core/tech-stack-selection.md +8 -0
- package/content/knowledge/core/test-skeleton-generation.md +4 -0
- package/content/knowledge/core/testing-strategy.md +8 -0
- package/content/knowledge/core/user-stories.md +9 -1
- package/content/knowledge/core/user-story-innovation.md +4 -0
- package/content/knowledge/core/ux-specification.md +5 -0
- package/content/knowledge/data-pipeline/data-pipeline-architecture.md +5 -0
- package/content/knowledge/data-pipeline/data-pipeline-batch-patterns.md +4 -0
- package/content/knowledge/data-pipeline/data-pipeline-conventions.md +4 -0
- package/content/knowledge/data-pipeline/data-pipeline-dev-environment.md +4 -0
- package/content/knowledge/data-pipeline/data-pipeline-orchestration.md +4 -0
- package/content/knowledge/data-pipeline/data-pipeline-project-structure.md +4 -0
- package/content/knowledge/data-pipeline/data-pipeline-quality.md +4 -0
- package/content/knowledge/data-pipeline/data-pipeline-requirements.md +4 -0
- package/content/knowledge/data-pipeline/data-pipeline-schema-management.md +4 -0
- package/content/knowledge/data-pipeline/data-pipeline-security.md +4 -0
- package/content/knowledge/data-pipeline/data-pipeline-streaming-patterns.md +4 -0
- package/content/knowledge/data-pipeline/data-pipeline-testing.md +4 -0
- package/content/knowledge/data-science/data-science-architecture.md +5 -0
- package/content/knowledge/data-science/data-science-conventions.md +6 -0
- package/content/knowledge/data-science/data-science-data-versioning.md +6 -0
- package/content/knowledge/data-science/data-science-dev-environment.md +6 -0
- package/content/knowledge/data-science/data-science-experiment-tracking.md +8 -0
- package/content/knowledge/data-science/data-science-model-evaluation.md +5 -0
- package/content/knowledge/data-science/data-science-notebook-discipline.md +5 -0
- package/content/knowledge/data-science/data-science-observability.md +6 -0
- package/content/knowledge/data-science/data-science-project-structure.md +5 -0
- package/content/knowledge/data-science/data-science-reproducibility.md +8 -0
- package/content/knowledge/data-science/data-science-requirements.md +5 -0
- package/content/knowledge/data-science/data-science-security.md +8 -0
- package/content/knowledge/data-science/data-science-testing.md +5 -0
- package/content/knowledge/execution/enhancement-workflow.md +4 -0
- package/content/knowledge/execution/multi-agent-coordination.md +129 -0
- package/content/knowledge/execution/task-claiming-strategy.md +19 -3
- package/content/knowledge/execution/tdd-execution-loop.md +5 -0
- package/content/knowledge/execution/worktree-management.md +10 -3
- package/content/knowledge/finalization/apply-fixes-and-freeze.md +4 -0
- package/content/knowledge/finalization/developer-onboarding.md +4 -0
- package/content/knowledge/finalization/implementation-playbook.md +4 -0
- package/content/knowledge/game/game-accessibility.md +4 -0
- package/content/knowledge/game/game-ai-patterns.md +4 -0
- package/content/knowledge/game/game-asset-pipeline.md +4 -0
- package/content/knowledge/game/game-audio-design.md +4 -0
- package/content/knowledge/game/game-binary-vcs-strategy.md +5 -0
- package/content/knowledge/game/game-design-document.md +4 -0
- package/content/knowledge/game/game-domain-patterns.md +4 -0
- package/content/knowledge/game/game-economy-design.md +4 -0
- package/content/knowledge/game/game-engine-selection.md +4 -0
- package/content/knowledge/game/game-ideation.md +4 -0
- package/content/knowledge/game/game-input-systems.md +4 -0
- package/content/knowledge/game/game-level-content-design.md +4 -0
- package/content/knowledge/game/game-liveops-analytics.md +4 -0
- package/content/knowledge/game/game-localization.md +4 -0
- package/content/knowledge/game/game-milestone-definitions.md +4 -0
- package/content/knowledge/game/game-modding-ugc.md +4 -0
- package/content/knowledge/game/game-narrative-design.md +4 -0
- package/content/knowledge/game/game-networking.md +4 -0
- package/content/knowledge/game/game-performance-budgeting.md +4 -0
- package/content/knowledge/game/game-platform-certification.md +6 -0
- package/content/knowledge/game/game-project-structure.md +4 -0
- package/content/knowledge/game/game-save-systems.md +4 -0
- package/content/knowledge/game/game-testing-strategy.md +4 -0
- package/content/knowledge/game/game-ui-patterns.md +4 -0
- package/content/knowledge/game/game-vr-ar-design.md +6 -0
- package/content/knowledge/library/library-api-design.md +4 -0
- package/content/knowledge/library/library-architecture.md +4 -0
- package/content/knowledge/library/library-bundling.md +4 -0
- package/content/knowledge/library/library-conventions.md +5 -0
- package/content/knowledge/library/library-dev-environment.md +4 -0
- package/content/knowledge/library/library-documentation.md +4 -0
- package/content/knowledge/library/library-project-structure.md +4 -0
- package/content/knowledge/library/library-requirements.md +4 -0
- package/content/knowledge/library/library-security.md +4 -0
- package/content/knowledge/library/library-testing.md +4 -0
- package/content/knowledge/library/library-type-definitions.md +4 -0
- package/content/knowledge/library/library-versioning.md +5 -0
- package/content/knowledge/ml/ml-architecture.md +4 -0
- package/content/knowledge/ml/ml-conventions.md +4 -0
- package/content/knowledge/ml/ml-dev-environment.md +4 -0
- package/content/knowledge/ml/ml-experiment-tracking.md +6 -0
- package/content/knowledge/ml/ml-model-evaluation.md +4 -0
- package/content/knowledge/ml/ml-observability.md +5 -0
- package/content/knowledge/ml/ml-project-structure.md +4 -0
- package/content/knowledge/ml/ml-requirements.md +4 -0
- package/content/knowledge/ml/ml-security.md +5 -0
- package/content/knowledge/ml/ml-serving-patterns.md +4 -0
- package/content/knowledge/ml/ml-testing.md +4 -0
- package/content/knowledge/ml/ml-training-patterns.md +4 -0
- package/content/knowledge/mobile-app/mobile-app-architecture.md +6 -0
- package/content/knowledge/mobile-app/mobile-app-conventions.md +6 -0
- package/content/knowledge/mobile-app/mobile-app-deployment.md +6 -0
- package/content/knowledge/mobile-app/mobile-app-dev-environment.md +6 -0
- package/content/knowledge/mobile-app/mobile-app-distribution.md +6 -0
- package/content/knowledge/mobile-app/mobile-app-observability.md +7 -0
- package/content/knowledge/mobile-app/mobile-app-offline-patterns.md +7 -0
- package/content/knowledge/mobile-app/mobile-app-project-structure.md +6 -0
- package/content/knowledge/mobile-app/mobile-app-push-notifications.md +6 -0
- package/content/knowledge/mobile-app/mobile-app-requirements.md +7 -0
- package/content/knowledge/mobile-app/mobile-app-security.md +8 -0
- package/content/knowledge/mobile-app/mobile-app-testing.md +6 -0
- package/content/knowledge/product/gap-analysis.md +4 -0
- package/content/knowledge/product/ideation-craft.md +4 -0
- package/content/knowledge/product/prd-craft.md +4 -0
- package/content/knowledge/product/prd-innovation.md +4 -0
- package/content/knowledge/product/vision-craft.md +4 -0
- package/content/knowledge/product/vision-innovation.md +4 -0
- package/content/knowledge/research/research-architecture.md +4 -0
- package/content/knowledge/research/research-conventions.md +6 -0
- package/content/knowledge/research/research-dev-environment.md +6 -0
- package/content/knowledge/research/research-experiment-loop.md +4 -0
- package/content/knowledge/research/research-experiment-tracking.md +6 -0
- package/content/knowledge/research/research-ml-architecture-search.md +4 -0
- package/content/knowledge/research/research-ml-evaluation.md +4 -0
- package/content/knowledge/research/research-ml-experiment-tracking.md +6 -0
- package/content/knowledge/research/research-ml-training-patterns.md +4 -0
- package/content/knowledge/research/research-observability.md +5 -0
- package/content/knowledge/research/research-overfitting-prevention.md +5 -0
- package/content/knowledge/research/research-project-structure.md +5 -0
- package/content/knowledge/research/research-quant-backtesting.md +4 -0
- package/content/knowledge/research/research-quant-market-data.md +4 -0
- package/content/knowledge/research/research-quant-metrics.md +4 -0
- package/content/knowledge/research/research-quant-requirements.md +4 -0
- package/content/knowledge/research/research-quant-risk.md +4 -0
- package/content/knowledge/research/research-quant-strategy-patterns.md +4 -0
- package/content/knowledge/research/research-requirements.md +5 -0
- package/content/knowledge/research/research-security.md +5 -0
- package/content/knowledge/research/research-sim-compute-management.md +4 -0
- package/content/knowledge/research/research-sim-engine-patterns.md +4 -0
- package/content/knowledge/research/research-sim-parameter-spaces.md +4 -0
- package/content/knowledge/research/research-sim-validation.md +4 -0
- package/content/knowledge/research/research-testing.md +5 -0
- package/content/knowledge/review/review-adr.md +6 -0
- package/content/knowledge/review/review-api-design.md +6 -0
- package/content/knowledge/review/review-art-bible.md +4 -0
- package/content/knowledge/review/review-database-design.md +5 -0
- package/content/knowledge/review/review-domain-modeling.md +5 -0
- package/content/knowledge/review/review-game-design.md +4 -0
- package/content/knowledge/review/review-game-economy.md +4 -0
- package/content/knowledge/review/review-game-ui.md +5 -0
- package/content/knowledge/review/review-implementation-tasks.md +5 -0
- package/content/knowledge/review/review-methodology.md +4 -0
- package/content/knowledge/review/review-netcode.md +4 -0
- package/content/knowledge/review/review-operations.md +6 -0
- package/content/knowledge/review/review-platform-cert.md +4 -0
- package/content/knowledge/review/review-prd.md +4 -0
- package/content/knowledge/review/review-security.md +7 -0
- package/content/knowledge/review/review-system-architecture.md +6 -0
- package/content/knowledge/review/review-testing-strategy.md +6 -0
- package/content/knowledge/review/review-user-stories.md +5 -0
- package/content/knowledge/review/review-ux-specification.md +6 -0
- package/content/knowledge/review/review-vision.md +4 -0
- package/content/knowledge/tools/post-implementation-review-methodology.md +4 -0
- package/content/knowledge/tools/release-management.md +5 -0
- package/content/knowledge/tools/session-analysis.md +4 -0
- package/content/knowledge/tools/version-strategy.md +4 -0
- package/content/knowledge/validation/critical-path-analysis.md +4 -0
- package/content/knowledge/validation/cross-phase-consistency.md +4 -0
- package/content/knowledge/validation/decision-completeness.md +5 -0
- package/content/knowledge/validation/dependency-validation.md +4 -0
- package/content/knowledge/validation/implementability-review.md +4 -0
- package/content/knowledge/validation/scope-management.md +4 -0
- package/content/knowledge/validation/traceability.md +4 -0
- package/content/knowledge/web-app/web-app-api-patterns.md +6 -0
- package/content/knowledge/web-app/web-app-architecture.md +6 -0
- package/content/knowledge/web-app/web-app-auth-patterns.md +9 -0
- package/content/knowledge/web-app/web-app-conventions.md +5 -0
- package/content/knowledge/web-app/web-app-data-patterns.md +6 -0
- package/content/knowledge/web-app/web-app-deployment-workflow.md +6 -0
- package/content/knowledge/web-app/web-app-deployment.md +6 -0
- package/content/knowledge/web-app/web-app-design-system.md +6 -0
- package/content/knowledge/web-app/web-app-dev-environment.md +6 -0
- package/content/knowledge/web-app/web-app-observability.md +6 -0
- package/content/knowledge/web-app/web-app-project-structure.md +5 -0
- package/content/knowledge/web-app/web-app-rendering-strategies.md +6 -0
- package/content/knowledge/web-app/web-app-requirements.md +6 -0
- package/content/knowledge/web-app/web-app-security.md +8 -0
- package/content/knowledge/web-app/web-app-session-patterns.md +7 -0
- package/content/knowledge/web-app/web-app-testing.md +6 -0
- package/content/knowledge/web-app/web-app-ux-patterns.md +6 -0
- package/content/knowledge/web3/web3-access-control.md +8 -0
- package/content/knowledge/web3/web3-architecture.md +7 -0
- package/content/knowledge/web3/web3-audit-workflow.md +7 -0
- package/content/knowledge/web3/web3-common-vulnerabilities.md +8 -0
- package/content/knowledge/web3/web3-conventions.md +6 -0
- package/content/knowledge/web3/web3-deployment-and-verification.md +7 -0
- package/content/knowledge/web3/web3-dev-environment.md +6 -0
- package/content/knowledge/web3/web3-gas-optimization.md +7 -0
- package/content/knowledge/web3/web3-oracles-and-external-data.md +7 -0
- package/content/knowledge/web3/web3-project-structure.md +6 -0
- package/content/knowledge/web3/web3-requirements.md +6 -0
- package/content/knowledge/web3/web3-security.md +8 -0
- package/content/knowledge/web3/web3-testing.md +6 -0
- package/content/knowledge/web3/web3-upgradeability.md +7 -0
- package/content/pipeline/build/multi-agent-resume.md +27 -7
- package/content/pipeline/build/multi-agent-start.md +35 -7
- package/content/pipeline/build/new-enhancement.md +8 -1
- package/content/pipeline/build/quick-task.md +9 -0
- package/content/pipeline/build/single-agent-resume.md +11 -4
- package/content/pipeline/build/single-agent-start.md +13 -4
- package/content/pipeline/consolidation/workflow-audit.md +1 -1
- package/content/pipeline/environment/git-workflow.md +2 -2
- package/content/pipeline/foundation/beads.md +148 -22
- package/content/pipeline/foundation/coding-standards.md +1 -1
- package/content/tools/knowledge-audit-entry.md +79 -0
- package/content/tools/post-implementation-review.md +6 -6
- package/content/tools/prompt-pipeline.md +1 -1
- package/content/tools/release.md +5 -5
- package/content/tools/review-code.md +388 -17
- package/content/tools/review-pr.md +381 -21
- package/content/tools/version-bump.md +5 -5
- package/dist/cli/commands/dashboard.d.ts +1 -1
- package/dist/cli/commands/dashboard.d.ts.map +1 -1
- package/dist/cli/commands/dashboard.js +10 -10
- package/dist/cli/commands/dashboard.js.map +1 -1
- package/dist/cli/commands/dashboard.test.js +1 -1
- package/dist/cli/commands/dashboard.test.js.map +1 -1
- package/dist/cli/commands/guides.d.ts +24 -0
- package/dist/cli/commands/guides.d.ts.map +1 -0
- package/dist/cli/commands/guides.js +103 -0
- package/dist/cli/commands/guides.js.map +1 -0
- package/dist/cli/commands/knowledge-freshness-anti-over-rewrite.d.ts +9 -0
- package/dist/cli/commands/knowledge-freshness-anti-over-rewrite.d.ts.map +1 -0
- package/dist/cli/commands/knowledge-freshness-anti-over-rewrite.js +112 -0
- package/dist/cli/commands/knowledge-freshness-anti-over-rewrite.js.map +1 -0
- package/dist/cli/commands/knowledge-freshness-audit-apply.d.ts +8 -0
- package/dist/cli/commands/knowledge-freshness-audit-apply.d.ts.map +1 -0
- package/dist/cli/commands/knowledge-freshness-audit-apply.js +96 -0
- package/dist/cli/commands/knowledge-freshness-audit-apply.js.map +1 -0
- package/dist/cli/commands/knowledge-freshness-audit-prefilter.d.ts +7 -0
- package/dist/cli/commands/knowledge-freshness-audit-prefilter.d.ts.map +1 -0
- package/dist/cli/commands/knowledge-freshness-audit-prefilter.js +42 -0
- package/dist/cli/commands/knowledge-freshness-audit-prefilter.js.map +1 -0
- package/dist/cli/commands/knowledge-freshness-audit-run-entry.d.ts +9 -0
- package/dist/cli/commands/knowledge-freshness-audit-run-entry.d.ts.map +1 -0
- package/dist/cli/commands/knowledge-freshness-audit-run-entry.js +63 -0
- package/dist/cli/commands/knowledge-freshness-audit-run-entry.js.map +1 -0
- package/dist/cli/commands/knowledge-freshness-bump-version.d.ts +8 -0
- package/dist/cli/commands/knowledge-freshness-bump-version.d.ts.map +1 -0
- package/dist/cli/commands/knowledge-freshness-bump-version.js +34 -0
- package/dist/cli/commands/knowledge-freshness-bump-version.js.map +1 -0
- package/dist/cli/commands/knowledge-freshness-deep-guidance-check.d.ts +7 -0
- package/dist/cli/commands/knowledge-freshness-deep-guidance-check.d.ts.map +1 -0
- package/dist/cli/commands/knowledge-freshness-deep-guidance-check.js +51 -0
- package/dist/cli/commands/knowledge-freshness-deep-guidance-check.js.map +1 -0
- package/dist/cli/commands/knowledge-freshness-link-check.d.ts +7 -0
- package/dist/cli/commands/knowledge-freshness-link-check.d.ts.map +1 -0
- package/dist/cli/commands/knowledge-freshness-link-check.js +57 -0
- package/dist/cli/commands/knowledge-freshness-link-check.js.map +1 -0
- package/dist/cli/commands/knowledge-freshness-lint-unsourced.d.ts +8 -0
- package/dist/cli/commands/knowledge-freshness-lint-unsourced.d.ts.map +1 -0
- package/dist/cli/commands/knowledge-freshness-lint-unsourced.js +58 -0
- package/dist/cli/commands/knowledge-freshness-lint-unsourced.js.map +1 -0
- package/dist/cli/commands/knowledge-freshness.d.ts +4 -0
- package/dist/cli/commands/knowledge-freshness.d.ts.map +1 -0
- package/dist/cli/commands/knowledge-freshness.js +25 -0
- package/dist/cli/commands/knowledge-freshness.js.map +1 -0
- package/dist/cli/commands/observe.d.ts +6 -0
- package/dist/cli/commands/observe.d.ts.map +1 -1
- package/dist/cli/commands/observe.js +22 -1
- package/dist/cli/commands/observe.js.map +1 -1
- package/dist/cli/commands/observe.test.js +82 -0
- package/dist/cli/commands/observe.test.js.map +1 -1
- package/dist/cli/commands/validate-knowledge.d.ts +4 -0
- package/dist/cli/commands/validate-knowledge.d.ts.map +1 -0
- package/dist/cli/commands/validate-knowledge.js +32 -0
- package/dist/cli/commands/validate-knowledge.js.map +1 -0
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +6 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/core/adapters/claude-code.d.ts.map +1 -1
- package/dist/core/adapters/claude-code.js +6 -3
- package/dist/core/adapters/claude-code.js.map +1 -1
- package/dist/core/adapters/claude-code.test.js +45 -1
- package/dist/core/adapters/claude-code.test.js.map +1 -1
- package/dist/core/assembly/engine.d.ts.map +1 -1
- package/dist/core/assembly/engine.js +7 -3
- package/dist/core/assembly/engine.js.map +1 -1
- package/dist/core/assembly/engine.test.js +45 -1
- package/dist/core/assembly/engine.test.js.map +1 -1
- package/dist/core/assembly/gap-signal-tail.d.ts +18 -0
- package/dist/core/assembly/gap-signal-tail.d.ts.map +1 -0
- package/dist/core/assembly/gap-signal-tail.js +43 -0
- package/dist/core/assembly/gap-signal-tail.js.map +1 -0
- package/dist/core/assembly/gap-signal-tail.test.d.ts +2 -0
- package/dist/core/assembly/gap-signal-tail.test.d.ts.map +1 -0
- package/dist/core/assembly/gap-signal-tail.test.js +49 -0
- package/dist/core/assembly/gap-signal-tail.test.js.map +1 -0
- package/dist/core/assembly/knowledge-loader.d.ts +11 -0
- package/dist/core/assembly/knowledge-loader.d.ts.map +1 -1
- package/dist/core/assembly/knowledge-loader.js +54 -1
- package/dist/core/assembly/knowledge-loader.js.map +1 -1
- package/dist/core/assembly/knowledge-loader.test.js +73 -0
- package/dist/core/assembly/knowledge-loader.test.js.map +1 -1
- package/dist/guides/build.d.ts +12 -0
- package/dist/guides/build.d.ts.map +1 -0
- package/dist/guides/build.js +50 -0
- package/dist/guides/build.js.map +1 -0
- package/dist/guides/build.test.d.ts +2 -0
- package/dist/guides/build.test.d.ts.map +1 -0
- package/dist/guides/build.test.js +74 -0
- package/dist/guides/build.test.js.map +1 -0
- package/dist/guides/chrome.d.ts +24 -0
- package/dist/guides/chrome.d.ts.map +1 -0
- package/dist/guides/chrome.js +118 -0
- package/dist/guides/chrome.js.map +1 -0
- package/dist/guides/cli-guides.test.d.ts +2 -0
- package/dist/guides/cli-guides.test.d.ts.map +1 -0
- package/dist/guides/cli-guides.test.js +41 -0
- package/dist/guides/cli-guides.test.js.map +1 -0
- package/dist/guides/dashboard-theme.css +1073 -0
- package/dist/guides/directives-callout.test.d.ts +2 -0
- package/dist/guides/directives-callout.test.d.ts.map +1 -0
- package/dist/guides/directives-callout.test.js +22 -0
- package/dist/guides/directives-callout.test.js.map +1 -0
- package/dist/guides/directives-chart.test.d.ts +2 -0
- package/dist/guides/directives-chart.test.d.ts.map +1 -0
- package/dist/guides/directives-chart.test.js +25 -0
- package/dist/guides/directives-chart.test.js.map +1 -0
- package/dist/guides/directives-filter-table.test.d.ts +2 -0
- package/dist/guides/directives-filter-table.test.d.ts.map +1 -0
- package/dist/guides/directives-filter-table.test.js +22 -0
- package/dist/guides/directives-filter-table.test.js.map +1 -0
- package/dist/guides/directives-sev.test.d.ts +2 -0
- package/dist/guides/directives-sev.test.d.ts.map +1 -0
- package/dist/guides/directives-sev.test.js +15 -0
- package/dist/guides/directives-sev.test.js.map +1 -0
- package/dist/guides/directives-tabs.test.d.ts +2 -0
- package/dist/guides/directives-tabs.test.d.ts.map +1 -0
- package/dist/guides/directives-tabs.test.js +52 -0
- package/dist/guides/directives-tabs.test.js.map +1 -0
- package/dist/guides/directives.d.ts +7 -0
- package/dist/guides/directives.d.ts.map +1 -0
- package/dist/guides/directives.js +158 -0
- package/dist/guides/directives.js.map +1 -0
- package/dist/guides/fs-guides.test.d.ts +2 -0
- package/dist/guides/fs-guides.test.d.ts.map +1 -0
- package/dist/guides/fs-guides.test.js +14 -0
- package/dist/guides/fs-guides.test.js.map +1 -0
- package/dist/guides/index-page.d.ts +3 -0
- package/dist/guides/index-page.d.ts.map +1 -0
- package/dist/guides/index-page.js +14 -0
- package/dist/guides/index-page.js.map +1 -0
- package/dist/guides/lint.d.ts +6 -0
- package/dist/guides/lint.d.ts.map +1 -0
- package/dist/guides/lint.js +27 -0
- package/dist/guides/lint.js.map +1 -0
- package/dist/guides/lint.test.d.ts +2 -0
- package/dist/guides/lint.test.d.ts.map +1 -0
- package/dist/guides/lint.test.js +24 -0
- package/dist/guides/lint.test.js.map +1 -0
- package/dist/guides/loader.d.ts +4 -0
- package/dist/guides/loader.d.ts.map +1 -0
- package/dist/guides/loader.js +63 -0
- package/dist/guides/loader.js.map +1 -0
- package/dist/guides/loader.test.d.ts +2 -0
- package/dist/guides/loader.test.d.ts.map +1 -0
- package/dist/guides/loader.test.js +85 -0
- package/dist/guides/loader.test.js.map +1 -0
- package/dist/guides/mermaid-sanitize.test.d.ts +2 -0
- package/dist/guides/mermaid-sanitize.test.d.ts.map +1 -0
- package/dist/guides/mermaid-sanitize.test.js +57 -0
- package/dist/guides/mermaid-sanitize.test.js.map +1 -0
- package/dist/guides/mermaid.d.ts +18 -0
- package/dist/guides/mermaid.d.ts.map +1 -0
- package/dist/guides/mermaid.js +137 -0
- package/dist/guides/mermaid.js.map +1 -0
- package/dist/guides/mermaid.test.d.ts +2 -0
- package/dist/guides/mermaid.test.d.ts.map +1 -0
- package/dist/guides/mermaid.test.js +105 -0
- package/dist/guides/mermaid.test.js.map +1 -0
- package/dist/guides/render.d.ts +12 -0
- package/dist/guides/render.d.ts.map +1 -0
- package/dist/guides/render.js +58 -0
- package/dist/guides/render.js.map +1 -0
- package/dist/guides/render.test.d.ts +2 -0
- package/dist/guides/render.test.d.ts.map +1 -0
- package/dist/guides/render.test.js +46 -0
- package/dist/guides/render.test.js.map +1 -0
- package/dist/guides/sanitize.d.ts +3 -0
- package/dist/guides/sanitize.d.ts.map +1 -0
- package/dist/guides/sanitize.js +76 -0
- package/dist/guides/sanitize.js.map +1 -0
- package/dist/guides/sanitize.test.d.ts +2 -0
- package/dist/guides/sanitize.test.d.ts.map +1 -0
- package/dist/guides/sanitize.test.js +45 -0
- package/dist/guides/sanitize.test.js.map +1 -0
- package/dist/guides/template.d.ts +11 -0
- package/dist/guides/template.d.ts.map +1 -0
- package/dist/guides/template.js +38 -0
- package/dist/guides/template.js.map +1 -0
- package/dist/guides/template.test.d.ts +2 -0
- package/dist/guides/template.test.d.ts.map +1 -0
- package/dist/guides/template.test.js +41 -0
- package/dist/guides/template.test.js.map +1 -0
- package/dist/guides/types.d.ts +20 -0
- package/dist/guides/types.d.ts.map +1 -0
- package/dist/guides/types.js +2 -0
- package/dist/guides/types.js.map +1 -0
- package/dist/knowledge-freshness/audit-apply-pr.d.ts +64 -0
- package/dist/knowledge-freshness/audit-apply-pr.d.ts.map +1 -0
- package/dist/knowledge-freshness/audit-apply-pr.js +309 -0
- package/dist/knowledge-freshness/audit-apply-pr.js.map +1 -0
- package/dist/knowledge-freshness/audit-apply-pr.test.d.ts +2 -0
- package/dist/knowledge-freshness/audit-apply-pr.test.d.ts.map +1 -0
- package/dist/knowledge-freshness/audit-apply-pr.test.js +211 -0
- package/dist/knowledge-freshness/audit-apply-pr.test.js.map +1 -0
- package/dist/knowledge-freshness/audit-apply.d.ts +16 -0
- package/dist/knowledge-freshness/audit-apply.d.ts.map +1 -0
- package/dist/knowledge-freshness/audit-apply.js +193 -0
- package/dist/knowledge-freshness/audit-apply.js.map +1 -0
- package/dist/knowledge-freshness/audit-apply.test.d.ts +2 -0
- package/dist/knowledge-freshness/audit-apply.test.d.ts.map +1 -0
- package/dist/knowledge-freshness/audit-apply.test.js +482 -0
- package/dist/knowledge-freshness/audit-apply.test.js.map +1 -0
- package/dist/knowledge-freshness/audit-prefilter.d.ts +12 -0
- package/dist/knowledge-freshness/audit-prefilter.d.ts.map +1 -0
- package/dist/knowledge-freshness/audit-prefilter.js +74 -0
- package/dist/knowledge-freshness/audit-prefilter.js.map +1 -0
- package/dist/knowledge-freshness/audit-prefilter.test.d.ts +2 -0
- package/dist/knowledge-freshness/audit-prefilter.test.d.ts.map +1 -0
- package/dist/knowledge-freshness/audit-prefilter.test.js +78 -0
- package/dist/knowledge-freshness/audit-prefilter.test.js.map +1 -0
- package/dist/knowledge-freshness/audit-runner.d.ts +135 -0
- package/dist/knowledge-freshness/audit-runner.d.ts.map +1 -0
- package/dist/knowledge-freshness/audit-runner.js +168 -0
- package/dist/knowledge-freshness/audit-runner.js.map +1 -0
- package/dist/knowledge-freshness/audit-runner.test.d.ts +2 -0
- package/dist/knowledge-freshness/audit-runner.test.d.ts.map +1 -0
- package/dist/knowledge-freshness/audit-runner.test.js +130 -0
- package/dist/knowledge-freshness/audit-runner.test.js.map +1 -0
- package/dist/knowledge-freshness/bump-version.d.ts +24 -0
- package/dist/knowledge-freshness/bump-version.d.ts.map +1 -0
- package/dist/knowledge-freshness/bump-version.js +69 -0
- package/dist/knowledge-freshness/bump-version.js.map +1 -0
- package/dist/knowledge-freshness/bump-version.test.d.ts +2 -0
- package/dist/knowledge-freshness/bump-version.test.d.ts.map +1 -0
- package/dist/knowledge-freshness/bump-version.test.js +82 -0
- package/dist/knowledge-freshness/bump-version.test.js.map +1 -0
- package/dist/knowledge-freshness/gates/anti-over-rewrite.d.ts +86 -0
- package/dist/knowledge-freshness/gates/anti-over-rewrite.d.ts.map +1 -0
- package/dist/knowledge-freshness/gates/anti-over-rewrite.js +210 -0
- package/dist/knowledge-freshness/gates/anti-over-rewrite.js.map +1 -0
- package/dist/knowledge-freshness/gates/anti-over-rewrite.test.d.ts +2 -0
- package/dist/knowledge-freshness/gates/anti-over-rewrite.test.d.ts.map +1 -0
- package/dist/knowledge-freshness/gates/anti-over-rewrite.test.js +115 -0
- package/dist/knowledge-freshness/gates/anti-over-rewrite.test.js.map +1 -0
- package/dist/knowledge-freshness/gates/changed-files.d.ts +53 -0
- package/dist/knowledge-freshness/gates/changed-files.d.ts.map +1 -0
- package/dist/knowledge-freshness/gates/changed-files.js +128 -0
- package/dist/knowledge-freshness/gates/changed-files.js.map +1 -0
- package/dist/knowledge-freshness/gates/deep-guidance-check.d.ts +23 -0
- package/dist/knowledge-freshness/gates/deep-guidance-check.d.ts.map +1 -0
- package/dist/knowledge-freshness/gates/deep-guidance-check.js +27 -0
- package/dist/knowledge-freshness/gates/deep-guidance-check.js.map +1 -0
- package/dist/knowledge-freshness/gates/deep-guidance-check.test.d.ts +2 -0
- package/dist/knowledge-freshness/gates/deep-guidance-check.test.d.ts.map +1 -0
- package/dist/knowledge-freshness/gates/deep-guidance-check.test.js +23 -0
- package/dist/knowledge-freshness/gates/deep-guidance-check.test.js.map +1 -0
- package/dist/knowledge-freshness/gates/link-check.d.ts +55 -0
- package/dist/knowledge-freshness/gates/link-check.d.ts.map +1 -0
- package/dist/knowledge-freshness/gates/link-check.js +161 -0
- package/dist/knowledge-freshness/gates/link-check.js.map +1 -0
- package/dist/knowledge-freshness/gates/link-check.test.d.ts +2 -0
- package/dist/knowledge-freshness/gates/link-check.test.d.ts.map +1 -0
- package/dist/knowledge-freshness/gates/link-check.test.js +76 -0
- package/dist/knowledge-freshness/gates/link-check.test.js.map +1 -0
- package/dist/knowledge-freshness/gates/lint-unsourced.d.ts +40 -0
- package/dist/knowledge-freshness/gates/lint-unsourced.d.ts.map +1 -0
- package/dist/knowledge-freshness/gates/lint-unsourced.js +143 -0
- package/dist/knowledge-freshness/gates/lint-unsourced.js.map +1 -0
- package/dist/knowledge-freshness/gates/lint-unsourced.test.d.ts +2 -0
- package/dist/knowledge-freshness/gates/lint-unsourced.test.d.ts.map +1 -0
- package/dist/knowledge-freshness/gates/lint-unsourced.test.js +68 -0
- package/dist/knowledge-freshness/gates/lint-unsourced.test.js.map +1 -0
- package/dist/knowledge-freshness/gates/parse-entry.d.ts +25 -0
- package/dist/knowledge-freshness/gates/parse-entry.d.ts.map +1 -0
- package/dist/knowledge-freshness/gates/parse-entry.js +41 -0
- package/dist/knowledge-freshness/gates/parse-entry.js.map +1 -0
- package/dist/knowledge-freshness/gates/parse-entry.test.d.ts +2 -0
- package/dist/knowledge-freshness/gates/parse-entry.test.d.ts.map +1 -0
- package/dist/knowledge-freshness/gates/parse-entry.test.js +34 -0
- package/dist/knowledge-freshness/gates/parse-entry.test.js.map +1 -0
- package/dist/knowledge-freshness/providers/anthropic.d.ts +33 -0
- package/dist/knowledge-freshness/providers/anthropic.d.ts.map +1 -0
- package/dist/knowledge-freshness/providers/anthropic.js +36 -0
- package/dist/knowledge-freshness/providers/anthropic.js.map +1 -0
- package/dist/knowledge-freshness/providers/anthropic.test.d.ts +2 -0
- package/dist/knowledge-freshness/providers/anthropic.test.d.ts.map +1 -0
- package/dist/knowledge-freshness/providers/anthropic.test.js +32 -0
- package/dist/knowledge-freshness/providers/anthropic.test.js.map +1 -0
- package/dist/knowledge-freshness/providers/deepseek.d.ts +33 -0
- package/dist/knowledge-freshness/providers/deepseek.d.ts.map +1 -0
- package/dist/knowledge-freshness/providers/deepseek.js +157 -0
- package/dist/knowledge-freshness/providers/deepseek.js.map +1 -0
- package/dist/knowledge-freshness/providers/deepseek.test.d.ts +2 -0
- package/dist/knowledge-freshness/providers/deepseek.test.d.ts.map +1 -0
- package/dist/knowledge-freshness/providers/deepseek.test.js +142 -0
- package/dist/knowledge-freshness/providers/deepseek.test.js.map +1 -0
- package/dist/knowledge-freshness/providers/index.d.ts +41 -0
- package/dist/knowledge-freshness/providers/index.d.ts.map +1 -0
- package/dist/knowledge-freshness/providers/index.js +108 -0
- package/dist/knowledge-freshness/providers/index.js.map +1 -0
- package/dist/knowledge-freshness/providers/index.test.d.ts +2 -0
- package/dist/knowledge-freshness/providers/index.test.d.ts.map +1 -0
- package/dist/knowledge-freshness/providers/index.test.js +97 -0
- package/dist/knowledge-freshness/providers/index.test.js.map +1 -0
- package/dist/knowledge-freshness/source-hash.d.ts +39 -0
- package/dist/knowledge-freshness/source-hash.d.ts.map +1 -0
- package/dist/knowledge-freshness/source-hash.js +180 -0
- package/dist/knowledge-freshness/source-hash.js.map +1 -0
- package/dist/knowledge-freshness/source-hash.test.d.ts +2 -0
- package/dist/knowledge-freshness/source-hash.test.d.ts.map +1 -0
- package/dist/knowledge-freshness/source-hash.test.js +63 -0
- package/dist/knowledge-freshness/source-hash.test.js.map +1 -0
- package/dist/knowledge-freshness/source-url-validator.d.ts +57 -0
- package/dist/knowledge-freshness/source-url-validator.d.ts.map +1 -0
- package/dist/knowledge-freshness/source-url-validator.js +304 -0
- package/dist/knowledge-freshness/source-url-validator.js.map +1 -0
- package/dist/knowledge-freshness/source-url-validator.test.d.ts +2 -0
- package/dist/knowledge-freshness/source-url-validator.test.d.ts.map +1 -0
- package/dist/knowledge-freshness/source-url-validator.test.js +167 -0
- package/dist/knowledge-freshness/source-url-validator.test.js.map +1 -0
- package/dist/observability/adapters/beads.d.ts +4 -0
- package/dist/observability/adapters/beads.d.ts.map +1 -1
- package/dist/observability/adapters/beads.js +25 -2
- package/dist/observability/adapters/beads.js.map +1 -1
- package/dist/observability/adapters/beads.test.js +40 -2
- package/dist/observability/adapters/beads.test.js.map +1 -1
- package/dist/observability/checks/lens-i-knowledge-gaps.d.ts +3 -0
- package/dist/observability/checks/lens-i-knowledge-gaps.d.ts.map +1 -0
- package/dist/observability/checks/lens-i-knowledge-gaps.js +165 -0
- package/dist/observability/checks/lens-i-knowledge-gaps.js.map +1 -0
- package/dist/observability/checks/lens-i-knowledge-gaps.test.d.ts +2 -0
- package/dist/observability/checks/lens-i-knowledge-gaps.test.d.ts.map +1 -0
- package/dist/observability/checks/lens-i-knowledge-gaps.test.js +421 -0
- package/dist/observability/checks/lens-i-knowledge-gaps.test.js.map +1 -0
- package/dist/observability/checks/lens-i-lessons-scanner.d.ts +16 -0
- package/dist/observability/checks/lens-i-lessons-scanner.d.ts.map +1 -0
- package/dist/observability/checks/lens-i-lessons-scanner.js +106 -0
- package/dist/observability/checks/lens-i-lessons-scanner.js.map +1 -0
- package/dist/observability/checks/lens-i-lessons-scanner.test.d.ts +2 -0
- package/dist/observability/checks/lens-i-lessons-scanner.test.d.ts.map +1 -0
- package/dist/observability/checks/lens-i-lessons-scanner.test.js +174 -0
- package/dist/observability/checks/lens-i-lessons-scanner.test.js.map +1 -0
- package/dist/observability/engine/api.d.ts +4 -0
- package/dist/observability/engine/api.d.ts.map +1 -1
- package/dist/observability/engine/api.js +17 -1
- package/dist/observability/engine/api.js.map +1 -1
- package/dist/observability/engine/checks/observability-config.d.ts +4 -0
- package/dist/observability/engine/checks/observability-config.d.ts.map +1 -1
- package/dist/observability/engine/checks/observability-config.js +1 -0
- package/dist/observability/engine/checks/observability-config.js.map +1 -1
- package/dist/observability/engine/checks/registry.d.ts.map +1 -1
- package/dist/observability/engine/checks/registry.js +7 -0
- package/dist/observability/engine/checks/registry.js.map +1 -1
- package/dist/observability/engine/checks/registry.test.js +3 -2
- package/dist/observability/engine/checks/registry.test.js.map +1 -1
- package/dist/observability/engine/checks/runner.d.ts +30 -0
- package/dist/observability/engine/checks/runner.d.ts.map +1 -1
- package/dist/observability/engine/checks/runner.js +8 -1
- package/dist/observability/engine/checks/runner.js.map +1 -1
- package/dist/observability/engine/checks/runner.test.js +74 -0
- package/dist/observability/engine/checks/runner.test.js.map +1 -1
- package/dist/observability/engine/event-schemas.d.ts.map +1 -1
- package/dist/observability/engine/event-schemas.js +41 -3
- package/dist/observability/engine/event-schemas.js.map +1 -1
- package/dist/observability/engine/event-schemas.test.js +105 -0
- package/dist/observability/engine/event-schemas.test.js.map +1 -1
- package/dist/observability/engine/fix-flow.d.ts +7 -0
- package/dist/observability/engine/fix-flow.d.ts.map +1 -1
- package/dist/observability/engine/fix-flow.js +5 -3
- package/dist/observability/engine/fix-flow.js.map +1 -1
- package/dist/observability/engine/knowledge-root-integration.test.d.ts +2 -0
- package/dist/observability/engine/knowledge-root-integration.test.d.ts.map +1 -0
- package/dist/observability/engine/knowledge-root-integration.test.js +103 -0
- package/dist/observability/engine/knowledge-root-integration.test.js.map +1 -0
- package/dist/observability/engine/ledger-writer.d.ts +11 -1
- package/dist/observability/engine/ledger-writer.d.ts.map +1 -1
- package/dist/observability/engine/ledger-writer.js +6 -0
- package/dist/observability/engine/ledger-writer.js.map +1 -1
- package/dist/observability/engine/llm-dispatcher.d.ts.map +1 -1
- package/dist/observability/engine/llm-dispatcher.js +36 -5
- package/dist/observability/engine/llm-dispatcher.js.map +1 -1
- package/dist/observability/engine/llm-dispatcher.test.js +23 -0
- package/dist/observability/engine/llm-dispatcher.test.js.map +1 -1
- package/dist/observability/engine/types.d.ts +20 -1
- package/dist/observability/engine/types.d.ts.map +1 -1
- package/dist/observability/engine/types.test.js +1 -1
- package/dist/observability/engine/types.test.js.map +1 -1
- package/dist/observability/knowledge-index.d.ts +145 -0
- package/dist/observability/knowledge-index.d.ts.map +1 -0
- package/dist/observability/knowledge-index.js +353 -0
- package/dist/observability/knowledge-index.js.map +1 -0
- package/dist/observability/knowledge-index.test.d.ts +2 -0
- package/dist/observability/knowledge-index.test.d.ts.map +1 -0
- package/dist/observability/knowledge-index.test.js +364 -0
- package/dist/observability/knowledge-index.test.js.map +1 -0
- package/dist/observability/renderers/markdown.d.ts.map +1 -1
- package/dist/observability/renderers/markdown.js +14 -0
- package/dist/observability/renderers/markdown.js.map +1 -1
- package/dist/observability/renderers/markdown.test.js +30 -0
- package/dist/observability/renderers/markdown.test.js.map +1 -1
- package/dist/types/assembly.d.ts +10 -0
- package/dist/types/assembly.d.ts.map +1 -1
- package/dist/utils/fs.d.ts +6 -0
- package/dist/utils/fs.d.ts.map +1 -1
- package/dist/utils/fs.js +13 -0
- package/dist/utils/fs.js.map +1 -1
- package/dist/validation/knowledge-frontmatter-validator.d.ts +15 -0
- package/dist/validation/knowledge-frontmatter-validator.d.ts.map +1 -0
- package/dist/validation/knowledge-frontmatter-validator.js +131 -0
- package/dist/validation/knowledge-frontmatter-validator.js.map +1 -0
- package/dist/validation/knowledge-frontmatter-validator.test.d.ts +2 -0
- package/dist/validation/knowledge-frontmatter-validator.test.d.ts.map +1 -0
- package/dist/validation/knowledge-frontmatter-validator.test.js +66 -0
- package/dist/validation/knowledge-frontmatter-validator.test.js.map +1 -0
- package/package.json +13 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dashboard.test.js","sourceRoot":"","sources":["../../../src/cli/commands/dashboard.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dashboard.test.js","sourceRoot":"","sources":["../../../src/cli/commands/dashboard.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { CommandModule } from 'yargs';
|
|
2
|
+
import type { GuideEntry } from '../../guides/types.js';
|
|
3
|
+
export interface GuideSummary {
|
|
4
|
+
topic: string;
|
|
5
|
+
title: string;
|
|
6
|
+
description: string;
|
|
7
|
+
category: string;
|
|
8
|
+
}
|
|
9
|
+
export declare function listGuides(projectRoot?: string): GuideSummary[];
|
|
10
|
+
export declare function resolveGuide(projectRoot: string | undefined, topic: string): GuideEntry | null;
|
|
11
|
+
interface GuidesArgs {
|
|
12
|
+
topic?: string;
|
|
13
|
+
list?: boolean;
|
|
14
|
+
markdown?: boolean;
|
|
15
|
+
'print-path'?: boolean;
|
|
16
|
+
open?: boolean;
|
|
17
|
+
build?: boolean;
|
|
18
|
+
format?: string;
|
|
19
|
+
auto?: boolean;
|
|
20
|
+
root?: string;
|
|
21
|
+
}
|
|
22
|
+
declare const guidesCommand: CommandModule<Record<string, unknown>, GuidesArgs>;
|
|
23
|
+
export default guidesCommand;
|
|
24
|
+
//# sourceMappingURL=guides.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"guides.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/guides.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAQ,MAAM,OAAO,CAAA;AAShD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAGvD,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,wBAAgB,UAAU,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,YAAY,EAAE,CAU/D;AAED,wBAAgB,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,EAAE,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAE9F;AAUD,UAAU,UAAU;IAClB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,QAAA,MAAM,aAAa,EAAE,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,CAuErE,CAAA;AAED,eAAe,aAAa,CAAA"}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import fs from 'node:fs';
|
|
2
|
+
import { execFileSync } from 'node:child_process';
|
|
3
|
+
import { getPackageGuidesDir } from '../../utils/fs.js';
|
|
4
|
+
import { buildGuidesIndex } from '../../guides/loader.js';
|
|
5
|
+
import { buildAllGuides } from '../../guides/build.js';
|
|
6
|
+
import { findProjectRoot } from '../middleware/project-root.js';
|
|
7
|
+
import { resolveOutputMode } from '../middleware/output-mode.js';
|
|
8
|
+
import { createOutputContext } from '../output/context.js';
|
|
9
|
+
import { ExitCode } from '../../types/enums.js';
|
|
10
|
+
export function listGuides(projectRoot) {
|
|
11
|
+
const idx = buildGuidesIndex(getPackageGuidesDir(projectRoot));
|
|
12
|
+
return [...idx.values()]
|
|
13
|
+
.sort((a, b) => a.frontmatter.order - b.frontmatter.order)
|
|
14
|
+
.map((e) => ({
|
|
15
|
+
topic: e.topic,
|
|
16
|
+
title: e.frontmatter.title,
|
|
17
|
+
description: e.frontmatter.description,
|
|
18
|
+
category: e.frontmatter.category,
|
|
19
|
+
}));
|
|
20
|
+
}
|
|
21
|
+
export function resolveGuide(projectRoot, topic) {
|
|
22
|
+
return buildGuidesIndex(getPackageGuidesDir(projectRoot)).get(topic) ?? null;
|
|
23
|
+
}
|
|
24
|
+
function openInBrowser(file) {
|
|
25
|
+
try {
|
|
26
|
+
if (process.platform === 'darwin')
|
|
27
|
+
execFileSync('open', [file]);
|
|
28
|
+
else if (process.platform === 'win32')
|
|
29
|
+
execFileSync('cmd', ['/c', 'start', '', file]);
|
|
30
|
+
else
|
|
31
|
+
execFileSync('xdg-open', [file]);
|
|
32
|
+
}
|
|
33
|
+
catch { /* ignore */ }
|
|
34
|
+
}
|
|
35
|
+
const guidesCommand = {
|
|
36
|
+
command: 'guides [topic]',
|
|
37
|
+
describe: 'Open, list, or build scaffold reference guides',
|
|
38
|
+
builder: (yargs) => yargs
|
|
39
|
+
.positional('topic', { type: 'string', describe: 'Guide topic to open' })
|
|
40
|
+
.option('list', { type: 'boolean', default: false, describe: 'List available guides' })
|
|
41
|
+
.option('markdown', { type: 'boolean', default: false, describe: 'Print the guide markdown source' })
|
|
42
|
+
.option('print-path', { type: 'boolean', default: false, describe: 'Print the guide\'s markdown path' })
|
|
43
|
+
.option('open', { type: 'boolean', default: true, describe: 'Open in browser (use --no-open to suppress)' })
|
|
44
|
+
.option('build', {
|
|
45
|
+
type: 'boolean', default: false, describe: 'Regenerate ALL guide HTML from sources (maintainer/CI)',
|
|
46
|
+
}),
|
|
47
|
+
handler: async (argv) => {
|
|
48
|
+
const outputMode = resolveOutputMode(argv);
|
|
49
|
+
const output = createOutputContext(outputMode);
|
|
50
|
+
const projectRoot = argv.root ?? findProjectRoot(process.cwd()) ?? undefined;
|
|
51
|
+
if (argv.build) {
|
|
52
|
+
await buildAllGuides(projectRoot);
|
|
53
|
+
output.success('Guides rebuilt.');
|
|
54
|
+
process.exit(0);
|
|
55
|
+
}
|
|
56
|
+
if (argv.list) {
|
|
57
|
+
const guides = listGuides(projectRoot);
|
|
58
|
+
if (outputMode === 'json') {
|
|
59
|
+
output.result(guides);
|
|
60
|
+
}
|
|
61
|
+
else {
|
|
62
|
+
for (const g of guides) {
|
|
63
|
+
output.info(`${g.topic.padEnd(16)} ${g.description}`);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
process.exit(0);
|
|
67
|
+
}
|
|
68
|
+
if (!argv.topic) {
|
|
69
|
+
const indexHtml = `${getPackageGuidesDir(projectRoot)}/index.html`;
|
|
70
|
+
if (argv.open && fs.existsSync(indexHtml))
|
|
71
|
+
openInBrowser(indexHtml);
|
|
72
|
+
output.info(`Guides index: ${indexHtml}`);
|
|
73
|
+
process.exit(0);
|
|
74
|
+
}
|
|
75
|
+
const guide = resolveGuide(projectRoot, argv.topic);
|
|
76
|
+
if (!guide) {
|
|
77
|
+
output.error({
|
|
78
|
+
code: 'GUIDE_NOT_FOUND',
|
|
79
|
+
message: `No guide named "${argv.topic}"`,
|
|
80
|
+
exitCode: ExitCode.ValidationError,
|
|
81
|
+
});
|
|
82
|
+
process.exit(1);
|
|
83
|
+
}
|
|
84
|
+
if (argv['print-path']) {
|
|
85
|
+
output.info(guide.mdPath);
|
|
86
|
+
process.exit(0);
|
|
87
|
+
}
|
|
88
|
+
if (argv.markdown) {
|
|
89
|
+
output.info(fs.readFileSync(guide.mdPath, 'utf8'));
|
|
90
|
+
process.exit(0);
|
|
91
|
+
}
|
|
92
|
+
if (argv.open) {
|
|
93
|
+
openInBrowser(guide.htmlPath);
|
|
94
|
+
output.info(`Opened ${guide.htmlPath}`);
|
|
95
|
+
}
|
|
96
|
+
else {
|
|
97
|
+
output.info(`Guide: ${guide.htmlPath} (not opened)`);
|
|
98
|
+
}
|
|
99
|
+
process.exit(0);
|
|
100
|
+
},
|
|
101
|
+
};
|
|
102
|
+
export default guidesCommand;
|
|
103
|
+
//# sourceMappingURL=guides.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"guides.js","sourceRoot":"","sources":["../../../src/cli/commands/guides.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { CommandModule } from 'yargs';
|
|
2
|
+
interface AntiOverRewriteArgs {
|
|
3
|
+
files: string[];
|
|
4
|
+
diff?: string;
|
|
5
|
+
prLabels?: string;
|
|
6
|
+
}
|
|
7
|
+
declare const antiOverRewriteCommand: CommandModule<Record<string, unknown>, AntiOverRewriteArgs>;
|
|
8
|
+
export default antiOverRewriteCommand;
|
|
9
|
+
//# sourceMappingURL=knowledge-freshness-anti-over-rewrite.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"knowledge-freshness-anti-over-rewrite.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/knowledge-freshness-anti-over-rewrite.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAQ,aAAa,EAAE,MAAM,OAAO,CAAA;AAYhD,UAAU,mBAAmB;IAC3B,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,QAAA,MAAM,sBAAsB,EAAE,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,mBAAmB,CA6GvF,CAAA;AAED,eAAe,sBAAsB,CAAA"}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import fs from 'node:fs';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
import { spawnSync } from 'node:child_process';
|
|
4
|
+
import { evaluateChurn, parseUnifiedDiffForChurn, splitChurnByRegion, } from '../../knowledge-freshness/gates/anti-over-rewrite.js';
|
|
5
|
+
import { resolveTargetFiles, gitDiffForFiles, } from '../../knowledge-freshness/gates/changed-files.js';
|
|
6
|
+
const antiOverRewriteCommand = {
|
|
7
|
+
command: 'anti-over-rewrite [files..]',
|
|
8
|
+
describe: 'CI gate: fail if a stable entry has >20% line churn without an explicit PR-body override',
|
|
9
|
+
builder: (y) => y
|
|
10
|
+
.positional('files', {
|
|
11
|
+
type: 'string',
|
|
12
|
+
array: true,
|
|
13
|
+
default: [],
|
|
14
|
+
describe: 'Knowledge entry paths to check (default: git diff origin/main...HEAD)',
|
|
15
|
+
})
|
|
16
|
+
.option('diff', {
|
|
17
|
+
type: 'string',
|
|
18
|
+
describe: 'Path to a unified diff file (default: git diff origin/main...HEAD)',
|
|
19
|
+
})
|
|
20
|
+
.option('pr-labels', {
|
|
21
|
+
type: 'string',
|
|
22
|
+
describe: 'Comma-separated list of labels currently on the PR. The gate honors the ' +
|
|
23
|
+
'literal label `override:anti-over-rewrite` (F-005). PR-body markers are NOT honored ' +
|
|
24
|
+
'because they can be prompt-injected via LLM-generated verdict text.',
|
|
25
|
+
})
|
|
26
|
+
.option('files-from', {
|
|
27
|
+
type: 'string',
|
|
28
|
+
describe: 'Read file list from a JSON array file (avoids shell-injection via filenames)',
|
|
29
|
+
}),
|
|
30
|
+
handler: async (argv) => {
|
|
31
|
+
const cwd = process.cwd();
|
|
32
|
+
const argvAnyOpt = argv;
|
|
33
|
+
const filesFromOpt = (argvAnyOpt['files-from'] ?? argvAnyOpt.filesFrom);
|
|
34
|
+
const files = resolveTargetFiles(argv.files ?? [], cwd, { filesFrom: filesFromOpt });
|
|
35
|
+
if (files.length === 0) {
|
|
36
|
+
process.stdout.write('anti-over-rewrite: no changed knowledge entries\n');
|
|
37
|
+
return;
|
|
38
|
+
}
|
|
39
|
+
const diffText = argv.diff
|
|
40
|
+
? fs.readFileSync(path.resolve(cwd, argv.diff), 'utf8')
|
|
41
|
+
: gitDiffForFiles(cwd, files);
|
|
42
|
+
// Labels can be passed explicitly via --pr-labels (CI sets it from
|
|
43
|
+
// github.event.pull_request.labels). The override label must be applied
|
|
44
|
+
// by a human with write access — that's the trust anchor (F-005).
|
|
45
|
+
const argvAny = argv;
|
|
46
|
+
const labelsArg = (argvAny['pr-labels'] ?? argvAny.prLabels);
|
|
47
|
+
const prLabels = labelsArg ? labelsArg.split(',').map((s) => s.trim()).filter((s) => s) : [];
|
|
48
|
+
const churn = parseUnifiedDiffForChurn(diffText);
|
|
49
|
+
const byFile = new Map(churn.map((c) => [c.file, c]));
|
|
50
|
+
// Round-7 F-001 + round-8 F-003: derive body-only churn via a
|
|
51
|
+
// line-number-based split using BOTH the post-change content (for +
|
|
52
|
+
// lines) and the pre-change content (for - lines). audit-apply
|
|
53
|
+
// sometimes ADDS frontmatter fields, so the old frontmatter end can
|
|
54
|
+
// be earlier than the new one — using the new boundary for - lines
|
|
55
|
+
// mis-classifies the first body lines as frontmatter.
|
|
56
|
+
const contentMap = new Map();
|
|
57
|
+
for (const abs of files) {
|
|
58
|
+
const rel = path.relative(cwd, abs);
|
|
59
|
+
const newContent = fs.readFileSync(abs, 'utf8');
|
|
60
|
+
// Read the pre-change content from origin/main. Fall back to undefined
|
|
61
|
+
// if the file is new (`git show` returns non-zero) — splitChurnByRegion
|
|
62
|
+
// then uses the new boundary for both sides, which is fine for added
|
|
63
|
+
// files (no - lines exist).
|
|
64
|
+
const show = spawnSync('git', ['show', `origin/main:${rel}`], { cwd, encoding: 'utf8' });
|
|
65
|
+
const oldContent = show.status === 0 ? show.stdout : undefined;
|
|
66
|
+
contentMap.set(rel, { newContent, oldContent });
|
|
67
|
+
}
|
|
68
|
+
const bodyByFile = splitChurnByRegion(diffText, contentMap);
|
|
69
|
+
const inputs = files.map((abs) => {
|
|
70
|
+
const rel = path.relative(cwd, abs);
|
|
71
|
+
const c = byFile.get(rel);
|
|
72
|
+
const body = bodyByFile.get(rel);
|
|
73
|
+
return {
|
|
74
|
+
file: rel,
|
|
75
|
+
content: contentMap.get(rel)?.newContent ?? '',
|
|
76
|
+
addedCount: c?.addedCount ?? 0,
|
|
77
|
+
removedCount: c?.removedCount ?? 0,
|
|
78
|
+
bodyAddedCount: body?.bodyAddedCount ?? 0,
|
|
79
|
+
bodyRemovedCount: body?.bodyRemovedCount ?? 0,
|
|
80
|
+
};
|
|
81
|
+
});
|
|
82
|
+
const results = evaluateChurn(inputs, { prLabels });
|
|
83
|
+
let anyBlock = false;
|
|
84
|
+
for (const r of results) {
|
|
85
|
+
const pct = (r.churnPct * 100).toFixed(1);
|
|
86
|
+
const summary = `volatility=${r.volatility ?? 'unknown'} ` +
|
|
87
|
+
`churn=${r.addedCount}+/${r.removedCount}- (${pct}% of ${r.totalLines})`;
|
|
88
|
+
if (r.blocking) {
|
|
89
|
+
anyBlock = true;
|
|
90
|
+
process.stdout.write(`::error file=${r.file}::anti-over-rewrite: ${summary} exceeds 20% threshold ` +
|
|
91
|
+
'for stable entry (apply the `override:anti-over-rewrite` label as a maintainer ' +
|
|
92
|
+
'with write access to bypass)\n');
|
|
93
|
+
}
|
|
94
|
+
else if (r.overridden) {
|
|
95
|
+
process.stdout.write(`::notice file=${r.file}::anti-over-rewrite: ${summary} OVERRIDDEN by maintainer label\n`);
|
|
96
|
+
}
|
|
97
|
+
else if (r.volatility !== 'stable' && r.churnPct > 0.2) {
|
|
98
|
+
process.stdout.write(`::notice file=${r.file}::anti-over-rewrite: ${summary} (advisory — non-stable entry)\n`);
|
|
99
|
+
}
|
|
100
|
+
else {
|
|
101
|
+
process.stdout.write(`OK ${r.file} — ${summary}\n`);
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
if (anyBlock) {
|
|
105
|
+
process.stdout.write('anti-over-rewrite: FAILED — stable entry rewritten beyond threshold\n');
|
|
106
|
+
process.exit(1);
|
|
107
|
+
}
|
|
108
|
+
process.stdout.write('anti-over-rewrite: OK\n');
|
|
109
|
+
},
|
|
110
|
+
};
|
|
111
|
+
export default antiOverRewriteCommand;
|
|
112
|
+
//# sourceMappingURL=knowledge-freshness-anti-over-rewrite.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"knowledge-freshness-anti-over-rewrite.js","sourceRoot":"","sources":["../../../src/cli/commands/knowledge-freshness-anti-over-rewrite.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { CommandModule } from 'yargs';
|
|
2
|
+
interface AuditApplyArgs {
|
|
3
|
+
entryPath: string;
|
|
4
|
+
verdictPath: string;
|
|
5
|
+
}
|
|
6
|
+
declare const auditApplyCommand: CommandModule<Record<string, unknown>, AuditApplyArgs>;
|
|
7
|
+
export default auditApplyCommand;
|
|
8
|
+
//# sourceMappingURL=knowledge-freshness-audit-apply.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"knowledge-freshness-audit-apply.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/knowledge-freshness-audit-apply.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAQ,aAAa,EAAE,MAAM,OAAO,CAAA;AAOhD,UAAU,cAAc;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;CACpB;AAED,QAAA,MAAM,iBAAiB,EAAE,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,CA0F7E,CAAA;AAED,eAAe,iBAAiB,CAAA"}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import fs from 'node:fs';
|
|
2
|
+
import { spawnSync } from 'node:child_process';
|
|
3
|
+
import yaml from 'js-yaml';
|
|
4
|
+
import { applyVerdictToEntry, normalizeUrl } from '../../knowledge-freshness/audit-apply.js';
|
|
5
|
+
import { fetchAndHash } from '../../knowledge-freshness/source-hash.js';
|
|
6
|
+
import { openFreshnessPr, readVolatility } from '../../knowledge-freshness/audit-apply-pr.js';
|
|
7
|
+
const auditApplyCommand = {
|
|
8
|
+
command: 'audit-apply <entryPath> <verdictPath>',
|
|
9
|
+
describe: 'Apply a freshness audit verdict to a knowledge entry (use --open-pr to push a branch and open a PR)',
|
|
10
|
+
builder: (y) => y
|
|
11
|
+
.positional('entryPath', {
|
|
12
|
+
type: 'string',
|
|
13
|
+
describe: 'Path to the knowledge entry .md file to modify',
|
|
14
|
+
demandOption: true,
|
|
15
|
+
})
|
|
16
|
+
.positional('verdictPath', {
|
|
17
|
+
type: 'string',
|
|
18
|
+
describe: 'Path to the verdict JSON file produced by audit-run-entry',
|
|
19
|
+
demandOption: true,
|
|
20
|
+
})
|
|
21
|
+
.option('open-pr', {
|
|
22
|
+
type: 'boolean',
|
|
23
|
+
default: false,
|
|
24
|
+
describe: 'Create a branch, commit, push, and open a PR via gh (default: edit file only)',
|
|
25
|
+
})
|
|
26
|
+
.option('mmr-job-id', {
|
|
27
|
+
type: 'string',
|
|
28
|
+
describe: 'MMR corroboration job ID to reference in the PR body (optional)',
|
|
29
|
+
}),
|
|
30
|
+
handler: async (argv) => {
|
|
31
|
+
const content = fs.readFileSync(argv.entryPath, 'utf8');
|
|
32
|
+
const verdictRaw = fs.readFileSync(argv.verdictPath, 'utf8');
|
|
33
|
+
const verdict = JSON.parse(verdictRaw);
|
|
34
|
+
// Sanity-check: the verdict and the on-disk entry must agree on `name`.
|
|
35
|
+
// The verdict schema intentionally doesn't carry a filesystem path (so the
|
|
36
|
+
// LLM can't redirect writes), which means operator must pair them — catch
|
|
37
|
+
// a mismatched pair early with a clear message.
|
|
38
|
+
const fmMatch = content.match(/^---\n([\s\S]*?)\n---/);
|
|
39
|
+
if (!fmMatch) {
|
|
40
|
+
throw new Error(`could not parse frontmatter at ${argv.entryPath}`);
|
|
41
|
+
}
|
|
42
|
+
const fm = yaml.load(fmMatch[1], { schema: yaml.JSON_SCHEMA });
|
|
43
|
+
if (fm.name !== verdict.entry_name) {
|
|
44
|
+
throw new Error(`verdict/entry mismatch: verdict.entry_name="${verdict.entry_name}" but ` +
|
|
45
|
+
`${argv.entryPath} has name="${fm.name}". Did you pair the wrong files?`);
|
|
46
|
+
}
|
|
47
|
+
// Compute deterministic hashes for every URL the verdict checked. We
|
|
48
|
+
// re-fetch in Node rather than trust the LLM's `content_hash` because an
|
|
49
|
+
// LLM-emitted sha256 is not verifiable — the model could fabricate one.
|
|
50
|
+
// The same normalizeUrl logic that audit-apply uses for source-matching
|
|
51
|
+
// is used here as the map key so the two stay in sync (strict mode in
|
|
52
|
+
// applyVerdictToEntry throws if any URL is missing).
|
|
53
|
+
const trustedHashes = new Map();
|
|
54
|
+
for (const source of verdict.sources_checked) {
|
|
55
|
+
const key = normalizeUrl(source.url);
|
|
56
|
+
// De-dupe: if two verdict sources differ only by anchor, the fetch
|
|
57
|
+
// and hash is the same. Skip the second fetch.
|
|
58
|
+
if (trustedHashes.has(key))
|
|
59
|
+
continue;
|
|
60
|
+
const { hash } = await fetchAndHash(key);
|
|
61
|
+
trustedHashes.set(key, hash);
|
|
62
|
+
}
|
|
63
|
+
const updated = applyVerdictToEntry(content, verdict, { trustedHashes });
|
|
64
|
+
fs.writeFileSync(argv.entryPath, updated);
|
|
65
|
+
// yargs exposes kebab options under both kebab and camelCase keys. Read
|
|
66
|
+
// both forms so we don't rely on a single normalization path
|
|
67
|
+
// (matches the pattern in src/cli/commands/observe.ts for --stall-check).
|
|
68
|
+
const argvAny = argv;
|
|
69
|
+
const openPr = (argvAny['open-pr'] ?? argvAny.openPr) === true;
|
|
70
|
+
const mmrJobId = (argvAny['mmr-job-id'] ?? argvAny.mmrJobId);
|
|
71
|
+
if (openPr) {
|
|
72
|
+
// Re-read the updated entry so we pull `volatility` from the post-apply
|
|
73
|
+
// frontmatter (apply never changes volatility, but reading once-after is
|
|
74
|
+
// a tidy invariant — single source of truth).
|
|
75
|
+
const updatedContent = fs.readFileSync(argv.entryPath, 'utf8');
|
|
76
|
+
const volatility = readVolatility(updatedContent);
|
|
77
|
+
const { branch, prUrl } = openFreshnessPr(verdict, {
|
|
78
|
+
entryPath: argv.entryPath,
|
|
79
|
+
volatility,
|
|
80
|
+
mmrJobId,
|
|
81
|
+
});
|
|
82
|
+
process.stdout.write(`branch: ${branch}\npr: ${prUrl}\n`);
|
|
83
|
+
}
|
|
84
|
+
else {
|
|
85
|
+
// Show the operator what changed. Without --open-pr we stop here and let
|
|
86
|
+
// the human open the PR manually (Phase 1 behavior).
|
|
87
|
+
const diff = spawnSync('git', ['diff', '--', argv.entryPath], { encoding: 'utf8' });
|
|
88
|
+
if (diff.stdout)
|
|
89
|
+
process.stdout.write(diff.stdout);
|
|
90
|
+
if (diff.stderr)
|
|
91
|
+
process.stderr.write(diff.stderr);
|
|
92
|
+
}
|
|
93
|
+
},
|
|
94
|
+
};
|
|
95
|
+
export default auditApplyCommand;
|
|
96
|
+
//# sourceMappingURL=knowledge-freshness-audit-apply.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"knowledge-freshness-audit-apply.js","sourceRoot":"","sources":["../../../src/cli/commands/knowledge-freshness-audit-apply.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { CommandModule } from 'yargs';
|
|
2
|
+
interface AuditPrefilterArgs {
|
|
3
|
+
max: number;
|
|
4
|
+
}
|
|
5
|
+
declare const auditPrefilterCommand: CommandModule<Record<string, unknown>, AuditPrefilterArgs>;
|
|
6
|
+
export default auditPrefilterCommand;
|
|
7
|
+
//# sourceMappingURL=knowledge-freshness-audit-prefilter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"knowledge-freshness-audit-prefilter.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/knowledge-freshness-audit-prefilter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAO1C,UAAU,kBAAkB;IAC1B,GAAG,EAAE,MAAM,CAAA;CACZ;AAED,QAAA,MAAM,qBAAqB,EAAE,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB,CAkCrF,CAAA;AAED,eAAe,qBAAqB,CAAA"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { findProjectRoot } from '../middleware/project-root.js';
|
|
2
|
+
import { buildIndexWithOverrides, loadFullEntries } from '../../core/assembly/knowledge-loader.js';
|
|
3
|
+
import { getPackageKnowledgeDir } from '../../utils/fs.js';
|
|
4
|
+
import { selectAuditCandidates } from '../../knowledge-freshness/audit-prefilter.js';
|
|
5
|
+
import { fetchAndHash } from '../../knowledge-freshness/source-hash.js';
|
|
6
|
+
const auditPrefilterCommand = {
|
|
7
|
+
command: 'audit-prefilter',
|
|
8
|
+
describe: 'List knowledge entries due for an audit (cadence + source-hash check)',
|
|
9
|
+
builder: (y) => y
|
|
10
|
+
.option('max', {
|
|
11
|
+
type: 'number',
|
|
12
|
+
default: 10,
|
|
13
|
+
describe: 'Maximum number of candidates to return (daily ceiling)',
|
|
14
|
+
coerce: (value) => {
|
|
15
|
+
// Guard against negative / fractional / zero. `slice(0, -1)` would
|
|
16
|
+
// bypass the ceiling silently by returning all-but-last; clamp to a
|
|
17
|
+
// positive integer (round-2 F-003).
|
|
18
|
+
if (!Number.isFinite(value) || !Number.isInteger(value) || value < 1) {
|
|
19
|
+
throw new Error(`--max must be a positive integer; got ${value}`);
|
|
20
|
+
}
|
|
21
|
+
return value;
|
|
22
|
+
},
|
|
23
|
+
}),
|
|
24
|
+
handler: async (argv) => {
|
|
25
|
+
const cwd = findProjectRoot(process.cwd()) ?? process.cwd();
|
|
26
|
+
const kbIndex = buildIndexWithOverrides(cwd, getPackageKnowledgeDir(cwd));
|
|
27
|
+
const allNames = [...kbIndex.keys()];
|
|
28
|
+
const { entries } = loadFullEntries(kbIndex, allNames);
|
|
29
|
+
const candidates = await selectAuditCandidates(entries, {
|
|
30
|
+
now: new Date(),
|
|
31
|
+
max: argv.max,
|
|
32
|
+
fetch: fetchAndHash,
|
|
33
|
+
});
|
|
34
|
+
// Emit `{ name, path }` so downstream `audit-run-entry` (which takes a
|
|
35
|
+
// filesystem path, not a name) can be invoked directly from this output
|
|
36
|
+
// without a separate name→path resolution step.
|
|
37
|
+
const out = candidates.map((c) => ({ name: c.name, path: kbIndex.get(c.name) ?? null }));
|
|
38
|
+
process.stdout.write(JSON.stringify(out, null, 2) + '\n');
|
|
39
|
+
},
|
|
40
|
+
};
|
|
41
|
+
export default auditPrefilterCommand;
|
|
42
|
+
//# sourceMappingURL=knowledge-freshness-audit-prefilter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"knowledge-freshness-audit-prefilter.js","sourceRoot":"","sources":["../../../src/cli/commands/knowledge-freshness-audit-prefilter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,EAAE,uBAAuB,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAA;AAClG,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAA;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,8CAA8C,CAAA;AACpF,OAAO,EAAE,YAAY,EAAE,MAAM,0CAA0C,CAAA;AAMvE,MAAM,qBAAqB,GAA+D;IACxF,OAAO,EAAE,iBAAiB;IAC1B,QAAQ,EAAE,uEAAuE;IACjF,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;SACd,MAAM,CAAC,KAAK,EAAE;QACb,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,EAAE;QACX,QAAQ,EAAE,wDAAwD;QAClE,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;YACxB,mEAAmE;YACnE,oEAAoE;YACpE,oCAAoC;YACpC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;gBACrE,MAAM,IAAI,KAAK,CAAC,yCAAyC,KAAK,EAAE,CAAC,CAAA;YACnE,CAAC;YACD,OAAO,KAAK,CAAA;QACd,CAAC;KACF,CAAC;IACJ,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,MAAM,GAAG,GAAG,eAAe,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,OAAO,CAAC,GAAG,EAAE,CAAA;QAC3D,MAAM,OAAO,GAAG,uBAAuB,CAAC,GAAG,EAAE,sBAAsB,CAAC,GAAG,CAAC,CAAC,CAAA;QACzE,MAAM,QAAQ,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,CAAA;QACpC,MAAM,EAAE,OAAO,EAAE,GAAG,eAAe,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;QACtD,MAAM,UAAU,GAAG,MAAM,qBAAqB,CAAC,OAAO,EAAE;YACtD,GAAG,EAAE,IAAI,IAAI,EAAE;YACf,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,KAAK,EAAE,YAAY;SACpB,CAAC,CAAA;QACF,uEAAuE;QACvE,wEAAwE;QACxE,gDAAgD;QAChD,MAAM,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAA;QACxF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAA;IAC3D,CAAC;CACF,CAAA;AAED,eAAe,qBAAqB,CAAA"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { CommandModule } from 'yargs';
|
|
2
|
+
interface AuditRunEntryArgs {
|
|
3
|
+
entryPath: string;
|
|
4
|
+
timeout: number;
|
|
5
|
+
provider?: string;
|
|
6
|
+
}
|
|
7
|
+
declare const auditRunEntryCommand: CommandModule<Record<string, unknown>, AuditRunEntryArgs>;
|
|
8
|
+
export default auditRunEntryCommand;
|
|
9
|
+
//# sourceMappingURL=knowledge-freshness-audit-run-entry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"knowledge-freshness-audit-run-entry.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/knowledge-freshness-audit-run-entry.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAQ,aAAa,EAAE,MAAM,OAAO,CAAA;AAQhD,UAAU,iBAAiB;IACzB,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAuBD,QAAA,MAAM,oBAAoB,EAAE,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,CAqCnF,CAAA;AAED,eAAe,oBAAoB,CAAA"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { execSync } from 'node:child_process';
|
|
2
|
+
import { runEntryAudit } from '../../knowledge-freshness/audit-runner.js';
|
|
3
|
+
import { resolveProvider, buildDispatcher, } from '../../knowledge-freshness/providers/index.js';
|
|
4
|
+
/**
|
|
5
|
+
* Probe whether the `claude` CLI is on PATH. Used only for rule 5 of the
|
|
6
|
+
* provider precedence chain (the "local dev with keychain auth" case).
|
|
7
|
+
*
|
|
8
|
+
* Platform-aware: POSIX systems use `command -v` (POSIX builtin, exits
|
|
9
|
+
* non-zero when the binary is missing); Windows uses `where`, which has
|
|
10
|
+
* the same exit-code semantics. The existing llm-dispatcher already
|
|
11
|
+
* special-cases Windows via `cmd.exe`, so we follow the same convention
|
|
12
|
+
* to keep rule-5 fallback working for Windows operators with Claude Code
|
|
13
|
+
* installed.
|
|
14
|
+
*/
|
|
15
|
+
function probeClaudeOnPath() {
|
|
16
|
+
const probe = process.platform === 'win32' ? 'where claude' : 'command -v claude';
|
|
17
|
+
try {
|
|
18
|
+
execSync(probe, { stdio: 'ignore' });
|
|
19
|
+
return true;
|
|
20
|
+
}
|
|
21
|
+
catch {
|
|
22
|
+
return false;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
const auditRunEntryCommand = {
|
|
26
|
+
command: 'audit-run-entry <entryPath>',
|
|
27
|
+
describe: 'Run a grounded freshness audit on a single knowledge entry',
|
|
28
|
+
builder: (y) => y
|
|
29
|
+
.positional('entryPath', {
|
|
30
|
+
type: 'string',
|
|
31
|
+
describe: 'Path to the knowledge entry .md file to audit',
|
|
32
|
+
demandOption: true,
|
|
33
|
+
})
|
|
34
|
+
.option('timeout', {
|
|
35
|
+
type: 'number',
|
|
36
|
+
default: 600,
|
|
37
|
+
describe: 'Subprocess / HTTP timeout in seconds (default 600s for grounded audits)',
|
|
38
|
+
})
|
|
39
|
+
.option('provider', {
|
|
40
|
+
type: 'string',
|
|
41
|
+
choices: ['anthropic', 'deepseek'],
|
|
42
|
+
describe: 'Force a specific LLM provider. Overrides KNOWLEDGE_FRESHNESS_PROVIDER and ' +
|
|
43
|
+
'auto-detection from env vars. Default: resolved from env (see ' +
|
|
44
|
+
'docs/knowledge-freshness/operations.md §4).',
|
|
45
|
+
}),
|
|
46
|
+
handler: async (argv) => {
|
|
47
|
+
// Resolve the provider FIRST so a misconfiguration fails before we
|
|
48
|
+
// do any other work (entry-file reading, frontmatter parsing, etc.).
|
|
49
|
+
const provider = resolveProvider({
|
|
50
|
+
env: process.env,
|
|
51
|
+
args: { provider: argv.provider },
|
|
52
|
+
claudeOnPath: probeClaudeOnPath(),
|
|
53
|
+
});
|
|
54
|
+
const dispatcher = buildDispatcher(provider, {
|
|
55
|
+
timeoutSec: argv.timeout,
|
|
56
|
+
env: process.env,
|
|
57
|
+
});
|
|
58
|
+
const verdict = await runEntryAudit(argv.entryPath, dispatcher);
|
|
59
|
+
process.stdout.write(JSON.stringify(verdict, null, 2) + '\n');
|
|
60
|
+
},
|
|
61
|
+
};
|
|
62
|
+
export default auditRunEntryCommand;
|
|
63
|
+
//# sourceMappingURL=knowledge-freshness-audit-run-entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"knowledge-freshness-audit-run-entry.js","sourceRoot":"","sources":["../../../src/cli/commands/knowledge-freshness-audit-run-entry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAE7C,OAAO,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAA;AACzE,OAAO,EACL,eAAe,EACf,eAAe,GAEhB,MAAM,8CAA8C,CAAA;AAQrD;;;;;;;;;;GAUG;AACH,SAAS,iBAAiB;IACxB,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,mBAAmB,CAAA;IACjF,IAAI,CAAC;QACH,QAAQ,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAA;QACpC,OAAO,IAAI,CAAA;IACb,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC;AAED,MAAM,oBAAoB,GAA8D;IACtF,OAAO,EAAE,6BAA6B;IACtC,QAAQ,EAAE,4DAA4D;IACtE,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;SACd,UAAU,CAAC,WAAW,EAAE;QACvB,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,+CAA+C;QACzD,YAAY,EAAE,IAAI;KACnB,CAAC;SACD,MAAM,CAAC,SAAS,EAAE;QACjB,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,GAAG;QACZ,QAAQ,EAAE,yEAAyE;KACpF,CAAC;SACD,MAAM,CAAC,UAAU,EAAE;QAClB,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,CAAC,WAAW,EAAE,UAAU,CAAC;QAClC,QAAQ,EACN,4EAA4E;YAC5E,gEAAgE;YAChE,6CAA6C;KAChD,CAA4B;IAC/B,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,mEAAmE;QACnE,qEAAqE;QACrE,MAAM,QAAQ,GAAa,eAAe,CAAC;YACzC,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;YACjC,YAAY,EAAE,iBAAiB,EAAE;SAClC,CAAC,CAAA;QACF,MAAM,UAAU,GAAG,eAAe,CAAC,QAAQ,EAAE;YAC3C,UAAU,EAAE,IAAI,CAAC,OAAO;YACxB,GAAG,EAAE,OAAO,CAAC,GAAG;SACjB,CAAC,CAAA;QACF,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAA;QAC/D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAA;IAC/D,CAAC;CACF,CAAA;AAED,eAAe,oBAAoB,CAAA"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { CommandModule } from 'yargs';
|
|
2
|
+
interface BumpVersionArgs {
|
|
3
|
+
title: string;
|
|
4
|
+
body: string;
|
|
5
|
+
}
|
|
6
|
+
declare const bumpVersionCommand: CommandModule<Record<string, unknown>, BumpVersionArgs>;
|
|
7
|
+
export default bumpVersionCommand;
|
|
8
|
+
//# sourceMappingURL=knowledge-freshness-bump-version.d.ts.map
|