@aquex/cmos-mcp 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +99 -0
- package/LICENSE +15 -0
- package/README.md +250 -0
- package/cmos-seed/README.md +153 -0
- package/cmos-seed/context/master_context.json +27 -0
- package/cmos-seed/context/project_context.json +12 -0
- package/cmos-seed/db/schema.sql +334 -0
- package/cmos-seed/docs/README.md +128 -0
- package/cmos-seed/docs/agents-md-guide.md +253 -0
- package/cmos-seed/docs/build-session-prompt.md +137 -0
- package/cmos-seed/docs/getting-started.md +150 -0
- package/cmos-seed/docs/session-management-guide.md +163 -0
- package/cmos-seed/docs/sqlite-schema-reference.md +188 -0
- package/cmos-seed/foundational-docs/roadmap_template.md +365 -0
- package/cmos-seed/foundational-docs/tech_arch_template.md +331 -0
- package/cmos-seed/templates/PROJECT-README-template.md +110 -0
- package/cmos-seed/templates/agents.md +306 -0
- package/cmos-seed/tiers/build.md +110 -0
- package/cmos-seed/tiers/general.md +112 -0
- package/cmos-seed/tiers/managed.md +118 -0
- package/dist/.build-manifest.json +5 -0
- package/dist/auth/auth-state.d.ts +96 -0
- package/dist/auth/auth-state.d.ts.map +1 -0
- package/dist/auth/auth-state.js +115 -0
- package/dist/auth/auth-state.js.map +1 -0
- package/dist/auth/delivery-ack-cache.d.ts +27 -0
- package/dist/auth/delivery-ack-cache.d.ts.map +1 -0
- package/dist/auth/delivery-ack-cache.js +21 -0
- package/dist/auth/delivery-ack-cache.js.map +1 -0
- package/dist/auth/device-code.d.ts +136 -0
- package/dist/auth/device-code.d.ts.map +1 -0
- package/dist/auth/device-code.js +334 -0
- package/dist/auth/device-code.js.map +1 -0
- package/dist/auth/project-key-capture.d.ts +124 -0
- package/dist/auth/project-key-capture.d.ts.map +1 -0
- package/dist/auth/project-key-capture.js +218 -0
- package/dist/auth/project-key-capture.js.map +1 -0
- package/dist/combination/dependency-resolver.d.ts +69 -0
- package/dist/combination/dependency-resolver.d.ts.map +1 -0
- package/dist/combination/dependency-resolver.js +303 -0
- package/dist/combination/dependency-resolver.js.map +1 -0
- package/dist/combination/merge-strategies.d.ts +87 -0
- package/dist/combination/merge-strategies.d.ts.map +1 -0
- package/dist/combination/merge-strategies.js +210 -0
- package/dist/combination/merge-strategies.js.map +1 -0
- package/dist/combination/pack-combiner.d.ts +84 -0
- package/dist/combination/pack-combiner.d.ts.map +1 -0
- package/dist/combination/pack-combiner.js +288 -0
- package/dist/combination/pack-combiner.js.map +1 -0
- package/dist/combination/types.d.ts +112 -0
- package/dist/combination/types.d.ts.map +1 -0
- package/dist/combination/types.js +39 -0
- package/dist/combination/types.js.map +1 -0
- package/dist/domains/domain-pack-loader.d.ts +148 -0
- package/dist/domains/domain-pack-loader.d.ts.map +1 -0
- package/dist/domains/domain-pack-loader.js +501 -0
- package/dist/domains/domain-pack-loader.js.map +1 -0
- package/dist/domains/types.d.ts +64 -0
- package/dist/domains/types.d.ts.map +1 -0
- package/dist/domains/types.js +10 -0
- package/dist/domains/types.js.map +1 -0
- package/dist/errors/config-error.d.ts +13 -0
- package/dist/errors/config-error.d.ts.map +1 -0
- package/dist/errors/config-error.js +19 -0
- package/dist/errors/config-error.js.map +1 -0
- package/dist/errors/domain-error.d.ts +13 -0
- package/dist/errors/domain-error.d.ts.map +1 -0
- package/dist/errors/domain-error.js +19 -0
- package/dist/errors/domain-error.js.map +1 -0
- package/dist/errors/handler.d.ts +30 -0
- package/dist/errors/handler.d.ts.map +1 -0
- package/dist/errors/handler.js +63 -0
- package/dist/errors/handler.js.map +1 -0
- package/dist/errors/index.d.ts +9 -0
- package/dist/errors/index.d.ts.map +1 -0
- package/dist/errors/index.js +25 -0
- package/dist/errors/index.js.map +1 -0
- package/dist/errors/io-error.d.ts +13 -0
- package/dist/errors/io-error.d.ts.map +1 -0
- package/dist/errors/io-error.js +19 -0
- package/dist/errors/io-error.js.map +1 -0
- package/dist/errors/logger.d.ts +21 -0
- package/dist/errors/logger.d.ts.map +1 -0
- package/dist/errors/logger.js +88 -0
- package/dist/errors/logger.js.map +1 -0
- package/dist/errors/mission-error.d.ts +27 -0
- package/dist/errors/mission-error.d.ts.map +1 -0
- package/dist/errors/mission-error.js +76 -0
- package/dist/errors/mission-error.js.map +1 -0
- package/dist/errors/types.d.ts +52 -0
- package/dist/errors/types.d.ts.map +1 -0
- package/dist/errors/types.js +3 -0
- package/dist/errors/types.js.map +1 -0
- package/dist/errors/utils.d.ts +24 -0
- package/dist/errors/utils.d.ts.map +1 -0
- package/dist/errors/utils.js +64 -0
- package/dist/errors/utils.js.map +1 -0
- package/dist/errors/validation-error.d.ts +13 -0
- package/dist/errors/validation-error.d.ts.map +1 -0
- package/dist/errors/validation-error.js +19 -0
- package/dist/errors/validation-error.js.map +1 -0
- package/dist/extraction/template-extractor.d.ts +59 -0
- package/dist/extraction/template-extractor.d.ts.map +1 -0
- package/dist/extraction/template-extractor.js +553 -0
- package/dist/extraction/template-extractor.js.map +1 -0
- package/dist/extraction/types.d.ts +160 -0
- package/dist/extraction/types.d.ts.map +1 -0
- package/dist/extraction/types.js +7 -0
- package/dist/extraction/types.js.map +1 -0
- package/dist/http-server.d.ts +18 -0
- package/dist/http-server.d.ts.map +1 -0
- package/dist/http-server.js +326 -0
- package/dist/http-server.js.map +1 -0
- package/dist/import-export/hybrid-template-parser.d.ts +44 -0
- package/dist/import-export/hybrid-template-parser.d.ts.map +1 -0
- package/dist/import-export/hybrid-template-parser.js +373 -0
- package/dist/import-export/hybrid-template-parser.js.map +1 -0
- package/dist/import-export/security-validator.d.ts +93 -0
- package/dist/import-export/security-validator.d.ts.map +1 -0
- package/dist/import-export/security-validator.js +441 -0
- package/dist/import-export/security-validator.js.map +1 -0
- package/dist/import-export/template-exporter.d.ts +106 -0
- package/dist/import-export/template-exporter.d.ts.map +1 -0
- package/dist/import-export/template-exporter.js +247 -0
- package/dist/import-export/template-exporter.js.map +1 -0
- package/dist/import-export/template-importer.d.ts +97 -0
- package/dist/import-export/template-importer.d.ts.map +1 -0
- package/dist/import-export/template-importer.js +308 -0
- package/dist/import-export/template-importer.js.map +1 -0
- package/dist/import-export/types.d.ts +118 -0
- package/dist/import-export/types.d.ts.map +1 -0
- package/dist/import-export/types.js +41 -0
- package/dist/import-export/types.js.map +1 -0
- package/dist/index.d.ts +157 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +972 -0
- package/dist/index.js.map +1 -0
- package/dist/intelligence/agentic-controller.d.ts +345 -0
- package/dist/intelligence/agentic-controller.d.ts.map +1 -0
- package/dist/intelligence/agentic-controller.js +1376 -0
- package/dist/intelligence/agentic-controller.js.map +1 -0
- package/dist/intelligence/agentic-observability.d.ts +43 -0
- package/dist/intelligence/agentic-observability.d.ts.map +1 -0
- package/dist/intelligence/agentic-observability.js +62 -0
- package/dist/intelligence/agentic-observability.js.map +1 -0
- package/dist/intelligence/agents-md-loader.d.ts +81 -0
- package/dist/intelligence/agents-md-loader.d.ts.map +1 -0
- package/dist/intelligence/agents-md-loader.js +298 -0
- package/dist/intelligence/agents-md-loader.js.map +1 -0
- package/dist/intelligence/attribution-verification.d.ts +58 -0
- package/dist/intelligence/attribution-verification.d.ts.map +1 -0
- package/dist/intelligence/attribution-verification.js +133 -0
- package/dist/intelligence/attribution-verification.js.map +1 -0
- package/dist/intelligence/boomerang-workflow.d.ts +87 -0
- package/dist/intelligence/boomerang-workflow.d.ts.map +1 -0
- package/dist/intelligence/boomerang-workflow.js +311 -0
- package/dist/intelligence/boomerang-workflow.js.map +1 -0
- package/dist/intelligence/cmos-detector.d.ts +42 -0
- package/dist/intelligence/cmos-detector.d.ts.map +1 -0
- package/dist/intelligence/cmos-detector.js +94 -0
- package/dist/intelligence/cmos-detector.js.map +1 -0
- package/dist/intelligence/cmos-sync.d.ts +101 -0
- package/dist/intelligence/cmos-sync.d.ts.map +1 -0
- package/dist/intelligence/cmos-sync.js +435 -0
- package/dist/intelligence/cmos-sync.js.map +1 -0
- package/dist/intelligence/complexity-scorer.d.ts +111 -0
- package/dist/intelligence/complexity-scorer.d.ts.map +1 -0
- package/dist/intelligence/complexity-scorer.js +299 -0
- package/dist/intelligence/complexity-scorer.js.map +1 -0
- package/dist/intelligence/compression-rules.d.ts +62 -0
- package/dist/intelligence/compression-rules.d.ts.map +1 -0
- package/dist/intelligence/compression-rules.js +303 -0
- package/dist/intelligence/compression-rules.js.map +1 -0
- package/dist/intelligence/content-sanitizer.d.ts +61 -0
- package/dist/intelligence/content-sanitizer.d.ts.map +1 -0
- package/dist/intelligence/content-sanitizer.js +170 -0
- package/dist/intelligence/content-sanitizer.js.map +1 -0
- package/dist/intelligence/context-propagator-v2.d.ts +23 -0
- package/dist/intelligence/context-propagator-v2.d.ts.map +1 -0
- package/dist/intelligence/context-propagator-v2.js +37 -0
- package/dist/intelligence/context-propagator-v2.js.map +1 -0
- package/dist/intelligence/context-propagator-v3.d.ts +46 -0
- package/dist/intelligence/context-propagator-v3.d.ts.map +1 -0
- package/dist/intelligence/context-propagator-v3.js +266 -0
- package/dist/intelligence/context-propagator-v3.js.map +1 -0
- package/dist/intelligence/context-propagator.d.ts +108 -0
- package/dist/intelligence/context-propagator.d.ts.map +1 -0
- package/dist/intelligence/context-propagator.js +283 -0
- package/dist/intelligence/context-propagator.js.map +1 -0
- package/dist/intelligence/context-windows.d.ts +5 -0
- package/dist/intelligence/context-windows.d.ts.map +1 -0
- package/dist/intelligence/context-windows.js +18 -0
- package/dist/intelligence/context-windows.js.map +1 -0
- package/dist/intelligence/credential-store.d.ts +145 -0
- package/dist/intelligence/credential-store.d.ts.map +1 -0
- package/dist/intelligence/credential-store.js +243 -0
- package/dist/intelligence/credential-store.js.map +1 -0
- package/dist/intelligence/dependency-analyzer.d.ts +117 -0
- package/dist/intelligence/dependency-analyzer.d.ts.map +1 -0
- package/dist/intelligence/dependency-analyzer.js +398 -0
- package/dist/intelligence/dependency-analyzer.js.map +1 -0
- package/dist/intelligence/dependency-inferrer.d.ts +68 -0
- package/dist/intelligence/dependency-inferrer.d.ts.map +1 -0
- package/dist/intelligence/dependency-inferrer.js +281 -0
- package/dist/intelligence/dependency-inferrer.js.map +1 -0
- package/dist/intelligence/enhanced-dependency-analyzer.d.ts +25 -0
- package/dist/intelligence/enhanced-dependency-analyzer.d.ts.map +1 -0
- package/dist/intelligence/enhanced-dependency-analyzer.js +207 -0
- package/dist/intelligence/enhanced-dependency-analyzer.js.map +1 -0
- package/dist/intelligence/graph-validator.d.ts +61 -0
- package/dist/intelligence/graph-validator.d.ts.map +1 -0
- package/dist/intelligence/graph-validator.js +212 -0
- package/dist/intelligence/graph-validator.js.map +1 -0
- package/dist/intelligence/lifecycle-analyzer.d.ts +64 -0
- package/dist/intelligence/lifecycle-analyzer.d.ts.map +1 -0
- package/dist/intelligence/lifecycle-analyzer.js +587 -0
- package/dist/intelligence/lifecycle-analyzer.js.map +1 -0
- package/dist/intelligence/mission-history.d.ts +56 -0
- package/dist/intelligence/mission-history.d.ts.map +1 -0
- package/dist/intelligence/mission-history.js +145 -0
- package/dist/intelligence/mission-history.js.map +1 -0
- package/dist/intelligence/mission-outcome-analytics.d.ts +84 -0
- package/dist/intelligence/mission-outcome-analytics.d.ts.map +1 -0
- package/dist/intelligence/mission-outcome-analytics.js +499 -0
- package/dist/intelligence/mission-outcome-analytics.js.map +1 -0
- package/dist/intelligence/mission-splitter.d.ts +148 -0
- package/dist/intelligence/mission-splitter.d.ts.map +1 -0
- package/dist/intelligence/mission-splitter.js +461 -0
- package/dist/intelligence/mission-splitter.js.map +1 -0
- package/dist/intelligence/model-transpilers.d.ts +59 -0
- package/dist/intelligence/model-transpilers.d.ts.map +1 -0
- package/dist/intelligence/model-transpilers.js +185 -0
- package/dist/intelligence/model-transpilers.js.map +1 -0
- package/dist/intelligence/project-registry.d.ts +265 -0
- package/dist/intelligence/project-registry.d.ts.map +1 -0
- package/dist/intelligence/project-registry.js +484 -0
- package/dist/intelligence/project-registry.js.map +1 -0
- package/dist/intelligence/rsip-loop.d.ts +52 -0
- package/dist/intelligence/rsip-loop.d.ts.map +1 -0
- package/dist/intelligence/rsip-loop.js +139 -0
- package/dist/intelligence/rsip-loop.js.map +1 -0
- package/dist/intelligence/sender-context.d.ts +114 -0
- package/dist/intelligence/sender-context.d.ts.map +1 -0
- package/dist/intelligence/sender-context.js +275 -0
- package/dist/intelligence/sender-context.js.map +1 -0
- package/dist/intelligence/sqlite-client.d.ts +144 -0
- package/dist/intelligence/sqlite-client.d.ts.map +1 -0
- package/dist/intelligence/sqlite-client.js +568 -0
- package/dist/intelligence/sqlite-client.js.map +1 -0
- package/dist/intelligence/telemetry.d.ts +44 -0
- package/dist/intelligence/telemetry.d.ts.map +1 -0
- package/dist/intelligence/telemetry.js +106 -0
- package/dist/intelligence/telemetry.js.map +1 -0
- package/dist/intelligence/token-counters.d.ts +69 -0
- package/dist/intelligence/token-counters.d.ts.map +1 -0
- package/dist/intelligence/token-counters.js +197 -0
- package/dist/intelligence/token-counters.js.map +1 -0
- package/dist/intelligence/token-optimizer.d.ts +52 -0
- package/dist/intelligence/token-optimizer.d.ts.map +1 -0
- package/dist/intelligence/token-optimizer.js +205 -0
- package/dist/intelligence/token-optimizer.js.map +1 -0
- package/dist/intelligence/tokenizer-bootstrap.d.ts +54 -0
- package/dist/intelligence/tokenizer-bootstrap.d.ts.map +1 -0
- package/dist/intelligence/tokenizer-bootstrap.js +238 -0
- package/dist/intelligence/tokenizer-bootstrap.js.map +1 -0
- package/dist/intelligence/types.d.ts +117 -0
- package/dist/intelligence/types.d.ts.map +1 -0
- package/dist/intelligence/types.js +8 -0
- package/dist/intelligence/types.js.map +1 -0
- package/dist/intelligence/worker-manifest-loader.d.ts +70 -0
- package/dist/intelligence/worker-manifest-loader.d.ts.map +1 -0
- package/dist/intelligence/worker-manifest-loader.js +387 -0
- package/dist/intelligence/worker-manifest-loader.js.map +1 -0
- package/dist/loaders/yaml-loader.d.ts +99 -0
- package/dist/loaders/yaml-loader.d.ts.map +1 -0
- package/dist/loaders/yaml-loader.js +236 -0
- package/dist/loaders/yaml-loader.js.map +1 -0
- package/dist/merge/deep-merge.d.ts +93 -0
- package/dist/merge/deep-merge.d.ts.map +1 -0
- package/dist/merge/deep-merge.js +168 -0
- package/dist/merge/deep-merge.js.map +1 -0
- package/dist/quality/analyzers/ai-readiness-analyzer.d.ts +35 -0
- package/dist/quality/analyzers/ai-readiness-analyzer.d.ts.map +1 -0
- package/dist/quality/analyzers/ai-readiness-analyzer.js +357 -0
- package/dist/quality/analyzers/ai-readiness-analyzer.js.map +1 -0
- package/dist/quality/analyzers/clarity-analyzer.d.ts +52 -0
- package/dist/quality/analyzers/clarity-analyzer.d.ts.map +1 -0
- package/dist/quality/analyzers/clarity-analyzer.js +405 -0
- package/dist/quality/analyzers/clarity-analyzer.js.map +1 -0
- package/dist/quality/analyzers/completeness-analyzer.d.ts +45 -0
- package/dist/quality/analyzers/completeness-analyzer.d.ts.map +1 -0
- package/dist/quality/analyzers/completeness-analyzer.js +331 -0
- package/dist/quality/analyzers/completeness-analyzer.js.map +1 -0
- package/dist/quality/improvement-engine.d.ts +37 -0
- package/dist/quality/improvement-engine.d.ts.map +1 -0
- package/dist/quality/improvement-engine.js +260 -0
- package/dist/quality/improvement-engine.js.map +1 -0
- package/dist/quality/quality-scorer.d.ts +36 -0
- package/dist/quality/quality-scorer.d.ts.map +1 -0
- package/dist/quality/quality-scorer.js +95 -0
- package/dist/quality/quality-scorer.js.map +1 -0
- package/dist/quality/types.d.ts +92 -0
- package/dist/quality/types.d.ts.map +1 -0
- package/dist/quality/types.js +33 -0
- package/dist/quality/types.js.map +1 -0
- package/dist/registry/registry-parser.d.ts +59 -0
- package/dist/registry/registry-parser.d.ts.map +1 -0
- package/dist/registry/registry-parser.js +161 -0
- package/dist/registry/registry-parser.js.map +1 -0
- package/dist/registry/semver-validator.d.ts +48 -0
- package/dist/registry/semver-validator.d.ts.map +1 -0
- package/dist/registry/semver-validator.js +115 -0
- package/dist/registry/semver-validator.js.map +1 -0
- package/dist/schemas/generic-mission.d.ts +120 -0
- package/dist/schemas/generic-mission.d.ts.map +1 -0
- package/dist/schemas/generic-mission.js +118 -0
- package/dist/schemas/generic-mission.js.map +1 -0
- package/dist/security/workspace-guard.d.ts +10 -0
- package/dist/security/workspace-guard.d.ts.map +1 -0
- package/dist/security/workspace-guard.js +116 -0
- package/dist/security/workspace-guard.js.map +1 -0
- package/dist/server-health.d.ts +73 -0
- package/dist/server-health.d.ts.map +1 -0
- package/dist/server-health.js +181 -0
- package/dist/server-health.js.map +1 -0
- package/dist/tools/analyze-dependencies.d.ts +99 -0
- package/dist/tools/analyze-dependencies.d.ts.map +1 -0
- package/dist/tools/analyze-dependencies.js +329 -0
- package/dist/tools/analyze-dependencies.js.map +1 -0
- package/dist/tools/cmos/agent-feedback.d.ts +25 -0
- package/dist/tools/cmos/agent-feedback.d.ts.map +1 -0
- package/dist/tools/cmos/agent-feedback.js +50 -0
- package/dist/tools/cmos/agent-feedback.js.map +1 -0
- package/dist/tools/cmos/blob-migrations.d.ts +77 -0
- package/dist/tools/cmos/blob-migrations.d.ts.map +1 -0
- package/dist/tools/cmos/blob-migrations.js +210 -0
- package/dist/tools/cmos/blob-migrations.js.map +1 -0
- package/dist/tools/cmos/checkpoint-backfill.d.ts +33 -0
- package/dist/tools/cmos/checkpoint-backfill.d.ts.map +1 -0
- package/dist/tools/cmos/checkpoint-backfill.js +186 -0
- package/dist/tools/cmos/checkpoint-backfill.js.map +1 -0
- package/dist/tools/cmos/client.d.ts +293 -0
- package/dist/tools/cmos/client.d.ts.map +1 -0
- package/dist/tools/cmos/client.js +669 -0
- package/dist/tools/cmos/client.js.map +1 -0
- package/dist/tools/cmos/cmos-agent-onboard.d.ts +344 -0
- package/dist/tools/cmos/cmos-agent-onboard.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-agent-onboard.js +1533 -0
- package/dist/tools/cmos/cmos-agent-onboard.js.map +1 -0
- package/dist/tools/cmos/cmos-auth.d.ts +283 -0
- package/dist/tools/cmos/cmos-auth.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-auth.js +687 -0
- package/dist/tools/cmos/cmos-auth.js.map +1 -0
- package/dist/tools/cmos/cmos-backlog-export.d.ts +142 -0
- package/dist/tools/cmos/cmos-backlog-export.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-backlog-export.js +340 -0
- package/dist/tools/cmos/cmos-backlog-export.js.map +1 -0
- package/dist/tools/cmos/cmos-constraints.d.ts +58 -0
- package/dist/tools/cmos/cmos-constraints.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-constraints.js +227 -0
- package/dist/tools/cmos/cmos-constraints.js.map +1 -0
- package/dist/tools/cmos/cmos-context-condense.d.ts +129 -0
- package/dist/tools/cmos/cmos-context-condense.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-context-condense.js +649 -0
- package/dist/tools/cmos/cmos-context-condense.js.map +1 -0
- package/dist/tools/cmos/cmos-context-history.d.ts +145 -0
- package/dist/tools/cmos/cmos-context-history.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-context-history.js +235 -0
- package/dist/tools/cmos/cmos-context-history.js.map +1 -0
- package/dist/tools/cmos/cmos-context-project-identity.d.ts +34 -0
- package/dist/tools/cmos/cmos-context-project-identity.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-context-project-identity.js +145 -0
- package/dist/tools/cmos/cmos-context-project-identity.js.map +1 -0
- package/dist/tools/cmos/cmos-context-search.d.ts +44 -0
- package/dist/tools/cmos/cmos-context-search.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-context-search.js +79 -0
- package/dist/tools/cmos/cmos-context-search.js.map +1 -0
- package/dist/tools/cmos/cmos-context-snapshot.d.ts +105 -0
- package/dist/tools/cmos/cmos-context-snapshot.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-context-snapshot.js +213 -0
- package/dist/tools/cmos/cmos-context-snapshot.js.map +1 -0
- package/dist/tools/cmos/cmos-context-update.d.ts +193 -0
- package/dist/tools/cmos/cmos-context-update.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-context-update.js +710 -0
- package/dist/tools/cmos/cmos-context-update.js.map +1 -0
- package/dist/tools/cmos/cmos-context-view.d.ts +159 -0
- package/dist/tools/cmos/cmos-context-view.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-context-view.js +531 -0
- package/dist/tools/cmos/cmos-context-view.js.map +1 -0
- package/dist/tools/cmos/cmos-context.d.ts +325 -0
- package/dist/tools/cmos/cmos-context.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-context.js +424 -0
- package/dist/tools/cmos/cmos-context.js.map +1 -0
- package/dist/tools/cmos/cmos-db-backfill.d.ts +119 -0
- package/dist/tools/cmos/cmos-db-backfill.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-db-backfill.js +889 -0
- package/dist/tools/cmos/cmos-db-backfill.js.map +1 -0
- package/dist/tools/cmos/cmos-db-health.d.ts +76 -0
- package/dist/tools/cmos/cmos-db-health.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-db-health.js +226 -0
- package/dist/tools/cmos/cmos-db-health.js.map +1 -0
- package/dist/tools/cmos/cmos-db-restore.d.ts +92 -0
- package/dist/tools/cmos/cmos-db-restore.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-db-restore.js +359 -0
- package/dist/tools/cmos/cmos-db-restore.js.map +1 -0
- package/dist/tools/cmos/cmos-db-snapshot.d.ts +108 -0
- package/dist/tools/cmos/cmos-db-snapshot.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-db-snapshot.js +359 -0
- package/dist/tools/cmos/cmos-db-snapshot.js.map +1 -0
- package/dist/tools/cmos/cmos-db.d.ts +103 -0
- package/dist/tools/cmos/cmos-db.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-db.js +182 -0
- package/dist/tools/cmos/cmos-db.js.map +1 -0
- package/dist/tools/cmos/cmos-decisions-batch-update.d.ts +34 -0
- package/dist/tools/cmos/cmos-decisions-batch-update.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-decisions-batch-update.js +90 -0
- package/dist/tools/cmos/cmos-decisions-batch-update.js.map +1 -0
- package/dist/tools/cmos/cmos-decisions-list.d.ts +134 -0
- package/dist/tools/cmos/cmos-decisions-list.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-decisions-list.js +153 -0
- package/dist/tools/cmos/cmos-decisions-list.js.map +1 -0
- package/dist/tools/cmos/cmos-decisions-review.d.ts +21 -0
- package/dist/tools/cmos/cmos-decisions-review.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-decisions-review.js +83 -0
- package/dist/tools/cmos/cmos-decisions-review.js.map +1 -0
- package/dist/tools/cmos/cmos-decisions-search.d.ts +119 -0
- package/dist/tools/cmos/cmos-decisions-search.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-decisions-search.js +219 -0
- package/dist/tools/cmos/cmos-decisions-search.js.map +1 -0
- package/dist/tools/cmos/cmos-decisions-update.d.ts +34 -0
- package/dist/tools/cmos/cmos-decisions-update.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-decisions-update.js +121 -0
- package/dist/tools/cmos/cmos-decisions-update.js.map +1 -0
- package/dist/tools/cmos/cmos-decisions.d.ts +156 -0
- package/dist/tools/cmos/cmos-decisions.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-decisions.js +223 -0
- package/dist/tools/cmos/cmos-decisions.js.map +1 -0
- package/dist/tools/cmos/cmos-feedback.d.ts +127 -0
- package/dist/tools/cmos/cmos-feedback.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-feedback.js +259 -0
- package/dist/tools/cmos/cmos-feedback.js.map +1 -0
- package/dist/tools/cmos/cmos-learnings-list.d.ts +81 -0
- package/dist/tools/cmos/cmos-learnings-list.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-learnings-list.js +120 -0
- package/dist/tools/cmos/cmos-learnings-list.js.map +1 -0
- package/dist/tools/cmos/cmos-learnings-reaffirm.d.ts +27 -0
- package/dist/tools/cmos/cmos-learnings-reaffirm.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-learnings-reaffirm.js +69 -0
- package/dist/tools/cmos/cmos-learnings-reaffirm.js.map +1 -0
- package/dist/tools/cmos/cmos-learnings-search.d.ts +69 -0
- package/dist/tools/cmos/cmos-learnings-search.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-learnings-search.js +130 -0
- package/dist/tools/cmos/cmos-learnings-search.js.map +1 -0
- package/dist/tools/cmos/cmos-learnings-update.d.ts +52 -0
- package/dist/tools/cmos/cmos-learnings-update.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-learnings-update.js +122 -0
- package/dist/tools/cmos/cmos-learnings-update.js.map +1 -0
- package/dist/tools/cmos/cmos-learnings.d.ts +137 -0
- package/dist/tools/cmos/cmos-learnings.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-learnings.js +197 -0
- package/dist/tools/cmos/cmos-learnings.js.map +1 -0
- package/dist/tools/cmos/cmos-message.d.ts +257 -0
- package/dist/tools/cmos/cmos-message.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-message.js +729 -0
- package/dist/tools/cmos/cmos-message.js.map +1 -0
- package/dist/tools/cmos/cmos-mission-add.d.ts +186 -0
- package/dist/tools/cmos/cmos-mission-add.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-mission-add.js +328 -0
- package/dist/tools/cmos/cmos-mission-add.js.map +1 -0
- package/dist/tools/cmos/cmos-mission-block.d.ts +104 -0
- package/dist/tools/cmos/cmos-mission-block.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-mission-block.js +248 -0
- package/dist/tools/cmos/cmos-mission-block.js.map +1 -0
- package/dist/tools/cmos/cmos-mission-complete.d.ts +127 -0
- package/dist/tools/cmos/cmos-mission-complete.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-mission-complete.js +529 -0
- package/dist/tools/cmos/cmos-mission-complete.js.map +1 -0
- package/dist/tools/cmos/cmos-mission-defer.d.ts +41 -0
- package/dist/tools/cmos/cmos-mission-defer.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-mission-defer.js +169 -0
- package/dist/tools/cmos/cmos-mission-defer.js.map +1 -0
- package/dist/tools/cmos/cmos-mission-depends.d.ts +98 -0
- package/dist/tools/cmos/cmos-mission-depends.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-mission-depends.js +221 -0
- package/dist/tools/cmos/cmos-mission-depends.js.map +1 -0
- package/dist/tools/cmos/cmos-mission-drop.d.ts +36 -0
- package/dist/tools/cmos/cmos-mission-drop.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-mission-drop.js +139 -0
- package/dist/tools/cmos/cmos-mission-drop.js.map +1 -0
- package/dist/tools/cmos/cmos-mission-list.d.ts +127 -0
- package/dist/tools/cmos/cmos-mission-list.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-mission-list.js +277 -0
- package/dist/tools/cmos/cmos-mission-list.js.map +1 -0
- package/dist/tools/cmos/cmos-mission-show.d.ts +115 -0
- package/dist/tools/cmos/cmos-mission-show.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-mission-show.js +278 -0
- package/dist/tools/cmos/cmos-mission-show.js.map +1 -0
- package/dist/tools/cmos/cmos-mission-start.d.ts +94 -0
- package/dist/tools/cmos/cmos-mission-start.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-mission-start.js +347 -0
- package/dist/tools/cmos/cmos-mission-start.js.map +1 -0
- package/dist/tools/cmos/cmos-mission-status.d.ts +152 -0
- package/dist/tools/cmos/cmos-mission-status.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-mission-status.js +420 -0
- package/dist/tools/cmos/cmos-mission-status.js.map +1 -0
- package/dist/tools/cmos/cmos-mission-transition.d.ts +126 -0
- package/dist/tools/cmos/cmos-mission-transition.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-mission-transition.js +222 -0
- package/dist/tools/cmos/cmos-mission-transition.js.map +1 -0
- package/dist/tools/cmos/cmos-mission-unblock.d.ts +102 -0
- package/dist/tools/cmos/cmos-mission-unblock.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-mission-unblock.js +242 -0
- package/dist/tools/cmos/cmos-mission-unblock.js.map +1 -0
- package/dist/tools/cmos/cmos-mission-undepends.d.ts +39 -0
- package/dist/tools/cmos/cmos-mission-undepends.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-mission-undepends.js +94 -0
- package/dist/tools/cmos/cmos-mission-undepends.js.map +1 -0
- package/dist/tools/cmos/cmos-mission-update.d.ts +225 -0
- package/dist/tools/cmos/cmos-mission-update.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-mission-update.js +350 -0
- package/dist/tools/cmos/cmos-mission-update.js.map +1 -0
- package/dist/tools/cmos/cmos-mission.d.ts +300 -0
- package/dist/tools/cmos/cmos-mission.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-mission.js +318 -0
- package/dist/tools/cmos/cmos-mission.js.map +1 -0
- package/dist/tools/cmos/cmos-next-steps.d.ts +57 -0
- package/dist/tools/cmos/cmos-next-steps.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-next-steps.js +154 -0
- package/dist/tools/cmos/cmos-next-steps.js.map +1 -0
- package/dist/tools/cmos/cmos-project-init.d.ts +283 -0
- package/dist/tools/cmos/cmos-project-init.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-project-init.js +502 -0
- package/dist/tools/cmos/cmos-project-init.js.map +1 -0
- package/dist/tools/cmos/cmos-project-list.d.ts +79 -0
- package/dist/tools/cmos/cmos-project-list.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-project-list.js +150 -0
- package/dist/tools/cmos/cmos-project-list.js.map +1 -0
- package/dist/tools/cmos/cmos-project-register.d.ts +90 -0
- package/dist/tools/cmos/cmos-project-register.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-project-register.js +199 -0
- package/dist/tools/cmos/cmos-project-register.js.map +1 -0
- package/dist/tools/cmos/cmos-project-sweep.d.ts +34 -0
- package/dist/tools/cmos/cmos-project-sweep.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-project-sweep.js +210 -0
- package/dist/tools/cmos/cmos-project-sweep.js.map +1 -0
- package/dist/tools/cmos/cmos-project-unregister.d.ts +66 -0
- package/dist/tools/cmos/cmos-project-unregister.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-project-unregister.js +108 -0
- package/dist/tools/cmos/cmos-project-unregister.js.map +1 -0
- package/dist/tools/cmos/cmos-project-update.d.ts +21 -0
- package/dist/tools/cmos/cmos-project-update.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-project-update.js +46 -0
- package/dist/tools/cmos/cmos-project-update.js.map +1 -0
- package/dist/tools/cmos/cmos-project-validate.d.ts +89 -0
- package/dist/tools/cmos/cmos-project-validate.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-project-validate.js +155 -0
- package/dist/tools/cmos/cmos-project-validate.js.map +1 -0
- package/dist/tools/cmos/cmos-project.d.ts +225 -0
- package/dist/tools/cmos/cmos-project.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-project.js +255 -0
- package/dist/tools/cmos/cmos-project.js.map +1 -0
- package/dist/tools/cmos/cmos-resolve-references.d.ts +145 -0
- package/dist/tools/cmos/cmos-resolve-references.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-resolve-references.js +273 -0
- package/dist/tools/cmos/cmos-resolve-references.js.map +1 -0
- package/dist/tools/cmos/cmos-session-capture.d.ts +228 -0
- package/dist/tools/cmos/cmos-session-capture.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-session-capture.js +552 -0
- package/dist/tools/cmos/cmos-session-capture.js.map +1 -0
- package/dist/tools/cmos/cmos-session-complete.d.ts +201 -0
- package/dist/tools/cmos/cmos-session-complete.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-session-complete.js +816 -0
- package/dist/tools/cmos/cmos-session-complete.js.map +1 -0
- package/dist/tools/cmos/cmos-session-list.d.ts +150 -0
- package/dist/tools/cmos/cmos-session-list.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-session-list.js +234 -0
- package/dist/tools/cmos/cmos-session-list.js.map +1 -0
- package/dist/tools/cmos/cmos-session-search.d.ts +176 -0
- package/dist/tools/cmos/cmos-session-search.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-session-search.js +374 -0
- package/dist/tools/cmos/cmos-session-search.js.map +1 -0
- package/dist/tools/cmos/cmos-session-start.d.ts +136 -0
- package/dist/tools/cmos/cmos-session-start.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-session-start.js +305 -0
- package/dist/tools/cmos/cmos-session-start.js.map +1 -0
- package/dist/tools/cmos/cmos-session.d.ts +223 -0
- package/dist/tools/cmos/cmos-session.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-session.js +255 -0
- package/dist/tools/cmos/cmos-session.js.map +1 -0
- package/dist/tools/cmos/cmos-sprint-add.d.ts +114 -0
- package/dist/tools/cmos/cmos-sprint-add.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-sprint-add.js +164 -0
- package/dist/tools/cmos/cmos-sprint-add.js.map +1 -0
- package/dist/tools/cmos/cmos-sprint-analytics.d.ts +66 -0
- package/dist/tools/cmos/cmos-sprint-analytics.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-sprint-analytics.js +289 -0
- package/dist/tools/cmos/cmos-sprint-analytics.js.map +1 -0
- package/dist/tools/cmos/cmos-sprint-carry-forward.d.ts +55 -0
- package/dist/tools/cmos/cmos-sprint-carry-forward.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-sprint-carry-forward.js +271 -0
- package/dist/tools/cmos/cmos-sprint-carry-forward.js.map +1 -0
- package/dist/tools/cmos/cmos-sprint-complete.d.ts +155 -0
- package/dist/tools/cmos/cmos-sprint-complete.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-sprint-complete.js +768 -0
- package/dist/tools/cmos/cmos-sprint-complete.js.map +1 -0
- package/dist/tools/cmos/cmos-sprint-list.d.ts +115 -0
- package/dist/tools/cmos/cmos-sprint-list.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-sprint-list.js +225 -0
- package/dist/tools/cmos/cmos-sprint-list.js.map +1 -0
- package/dist/tools/cmos/cmos-sprint-retro.d.ts +114 -0
- package/dist/tools/cmos/cmos-sprint-retro.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-sprint-retro.js +331 -0
- package/dist/tools/cmos/cmos-sprint-retro.js.map +1 -0
- package/dist/tools/cmos/cmos-sprint-show.d.ts +109 -0
- package/dist/tools/cmos/cmos-sprint-show.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-sprint-show.js +238 -0
- package/dist/tools/cmos/cmos-sprint-show.js.map +1 -0
- package/dist/tools/cmos/cmos-sprint-update.d.ts +150 -0
- package/dist/tools/cmos/cmos-sprint-update.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-sprint-update.js +191 -0
- package/dist/tools/cmos/cmos-sprint-update.js.map +1 -0
- package/dist/tools/cmos/cmos-sprint.d.ts +219 -0
- package/dist/tools/cmos/cmos-sprint.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-sprint.js +304 -0
- package/dist/tools/cmos/cmos-sprint.js.map +1 -0
- package/dist/tools/cmos/cmos-status.d.ts +69 -0
- package/dist/tools/cmos/cmos-status.d.ts.map +1 -0
- package/dist/tools/cmos/cmos-status.js +136 -0
- package/dist/tools/cmos/cmos-status.js.map +1 -0
- package/dist/tools/cmos/context-freshness.d.ts +67 -0
- package/dist/tools/cmos/context-freshness.d.ts.map +1 -0
- package/dist/tools/cmos/context-freshness.js +352 -0
- package/dist/tools/cmos/context-freshness.js.map +1 -0
- package/dist/tools/cmos/context-retention.d.ts +58 -0
- package/dist/tools/cmos/context-retention.d.ts.map +1 -0
- package/dist/tools/cmos/context-retention.js +507 -0
- package/dist/tools/cmos/context-retention.js.map +1 -0
- package/dist/tools/cmos/dashboard-client.d.ts +513 -0
- package/dist/tools/cmos/dashboard-client.d.ts.map +1 -0
- package/dist/tools/cmos/dashboard-client.js +800 -0
- package/dist/tools/cmos/dashboard-client.js.map +1 -0
- package/dist/tools/cmos/decision-memory.d.ts +39 -0
- package/dist/tools/cmos/decision-memory.d.ts.map +1 -0
- package/dist/tools/cmos/decision-memory.js +263 -0
- package/dist/tools/cmos/decision-memory.js.map +1 -0
- package/dist/tools/cmos/errors.d.ts +113 -0
- package/dist/tools/cmos/errors.d.ts.map +1 -0
- package/dist/tools/cmos/errors.js +315 -0
- package/dist/tools/cmos/errors.js.map +1 -0
- package/dist/tools/cmos/fts5-retriever.d.ts +101 -0
- package/dist/tools/cmos/fts5-retriever.d.ts.map +1 -0
- package/dist/tools/cmos/fts5-retriever.js +210 -0
- package/dist/tools/cmos/fts5-retriever.js.map +1 -0
- package/dist/tools/cmos/index.d.ts +1238 -0
- package/dist/tools/cmos/index.d.ts.map +1 -0
- package/dist/tools/cmos/index.js +359 -0
- package/dist/tools/cmos/index.js.map +1 -0
- package/dist/tools/cmos/learning-reaffirm.d.ts +74 -0
- package/dist/tools/cmos/learning-reaffirm.d.ts.map +1 -0
- package/dist/tools/cmos/learning-reaffirm.js +145 -0
- package/dist/tools/cmos/learning-reaffirm.js.map +1 -0
- package/dist/tools/cmos/orphan-detection.d.ts +55 -0
- package/dist/tools/cmos/orphan-detection.d.ts.map +1 -0
- package/dist/tools/cmos/orphan-detection.js +139 -0
- package/dist/tools/cmos/orphan-detection.js.map +1 -0
- package/dist/tools/cmos/owner-resolution.d.ts +21 -0
- package/dist/tools/cmos/owner-resolution.d.ts.map +1 -0
- package/dist/tools/cmos/owner-resolution.js +162 -0
- package/dist/tools/cmos/owner-resolution.js.map +1 -0
- package/dist/tools/cmos/project-identity.d.ts +112 -0
- package/dist/tools/cmos/project-identity.d.ts.map +1 -0
- package/dist/tools/cmos/project-identity.js +261 -0
- package/dist/tools/cmos/project-identity.js.map +1 -0
- package/dist/tools/cmos/relevance-surfacing.d.ts +40 -0
- package/dist/tools/cmos/relevance-surfacing.d.ts.map +1 -0
- package/dist/tools/cmos/relevance-surfacing.js +153 -0
- package/dist/tools/cmos/relevance-surfacing.js.map +1 -0
- package/dist/tools/cmos/schema-migrations.d.ts +157 -0
- package/dist/tools/cmos/schema-migrations.d.ts.map +1 -0
- package/dist/tools/cmos/schema-migrations.js +678 -0
- package/dist/tools/cmos/schema-migrations.js.map +1 -0
- package/dist/tools/cmos/schema.d.ts +76 -0
- package/dist/tools/cmos/schema.d.ts.map +1 -0
- package/dist/tools/cmos/schema.js +462 -0
- package/dist/tools/cmos/schema.js.map +1 -0
- package/dist/tools/cmos/sender-identity.d.ts +87 -0
- package/dist/tools/cmos/sender-identity.d.ts.map +1 -0
- package/dist/tools/cmos/sender-identity.js +207 -0
- package/dist/tools/cmos/sender-identity.js.map +1 -0
- package/dist/tools/cmos/staleness-detection.d.ts +128 -0
- package/dist/tools/cmos/staleness-detection.d.ts.map +1 -0
- package/dist/tools/cmos/staleness-detection.js +381 -0
- package/dist/tools/cmos/staleness-detection.js.map +1 -0
- package/dist/tools/cmos/supersession-detection.d.ts +46 -0
- package/dist/tools/cmos/supersession-detection.d.ts.map +1 -0
- package/dist/tools/cmos/supersession-detection.js +235 -0
- package/dist/tools/cmos/supersession-detection.js.map +1 -0
- package/dist/tools/cmos/sync-event-payloads.d.ts +576 -0
- package/dist/tools/cmos/sync-event-payloads.d.ts.map +1 -0
- package/dist/tools/cmos/sync-event-payloads.js +521 -0
- package/dist/tools/cmos/sync-event-payloads.js.map +1 -0
- package/dist/tools/cmos/sync-health-check.d.ts +43 -0
- package/dist/tools/cmos/sync-health-check.d.ts.map +1 -0
- package/dist/tools/cmos/sync-health-check.js +93 -0
- package/dist/tools/cmos/sync-health-check.js.map +1 -0
- package/dist/tools/cmos/sync-hooks.d.ts +82 -0
- package/dist/tools/cmos/sync-hooks.d.ts.map +1 -0
- package/dist/tools/cmos/sync-hooks.js +162 -0
- package/dist/tools/cmos/sync-hooks.js.map +1 -0
- package/dist/tools/cmos/sync-pusher.d.ts +128 -0
- package/dist/tools/cmos/sync-pusher.d.ts.map +1 -0
- package/dist/tools/cmos/sync-pusher.js +248 -0
- package/dist/tools/cmos/sync-pusher.js.map +1 -0
- package/dist/tools/cmos/sync-queue.d.ts +87 -0
- package/dist/tools/cmos/sync-queue.d.ts.map +1 -0
- package/dist/tools/cmos/sync-queue.js +208 -0
- package/dist/tools/cmos/sync-queue.js.map +1 -0
- package/dist/tools/cmos/tier-config.d.ts +32 -0
- package/dist/tools/cmos/tier-config.d.ts.map +1 -0
- package/dist/tools/cmos/tier-config.js +123 -0
- package/dist/tools/cmos/tier-config.js.map +1 -0
- package/dist/tools/cmos/types.d.ts +164 -0
- package/dist/tools/cmos/types.d.ts.map +1 -0
- package/dist/tools/cmos/types.js +11 -0
- package/dist/tools/cmos/types.js.map +1 -0
- package/dist/tools/combine-packs.d.ts +194 -0
- package/dist/tools/combine-packs.d.ts.map +1 -0
- package/dist/tools/combine-packs.js +283 -0
- package/dist/tools/combine-packs.js.map +1 -0
- package/dist/tools/create-mission.d.ts +192 -0
- package/dist/tools/create-mission.d.ts.map +1 -0
- package/dist/tools/create-mission.js +453 -0
- package/dist/tools/create-mission.js.map +1 -0
- package/dist/tools/export-template.d.ts +175 -0
- package/dist/tools/export-template.d.ts.map +1 -0
- package/dist/tools/export-template.js +212 -0
- package/dist/tools/export-template.js.map +1 -0
- package/dist/tools/extract-template.d.ts +106 -0
- package/dist/tools/extract-template.d.ts.map +1 -0
- package/dist/tools/extract-template.js +322 -0
- package/dist/tools/extract-template.js.map +1 -0
- package/dist/tools/formatters/mission-protocol-json.d.ts +122 -0
- package/dist/tools/formatters/mission-protocol-json.d.ts.map +1 -0
- package/dist/tools/formatters/mission-protocol-json.js +155 -0
- package/dist/tools/formatters/mission-protocol-json.js.map +1 -0
- package/dist/tools/import-template.d.ts +170 -0
- package/dist/tools/import-template.d.ts.map +1 -0
- package/dist/tools/import-template.js +203 -0
- package/dist/tools/import-template.js.map +1 -0
- package/dist/tools/list-domains.d.ts +70 -0
- package/dist/tools/list-domains.d.ts.map +1 -0
- package/dist/tools/list-domains.js +110 -0
- package/dist/tools/list-domains.js.map +1 -0
- package/dist/tools/optimize-tokens.d.ts +190 -0
- package/dist/tools/optimize-tokens.d.ts.map +1 -0
- package/dist/tools/optimize-tokens.js +193 -0
- package/dist/tools/optimize-tokens.js.map +1 -0
- package/dist/tools/score-quality.d.ts +76 -0
- package/dist/tools/score-quality.d.ts.map +1 -0
- package/dist/tools/score-quality.js +191 -0
- package/dist/tools/score-quality.js.map +1 -0
- package/dist/tools/split-mission.d.ts +181 -0
- package/dist/tools/split-mission.d.ts.map +1 -0
- package/dist/tools/split-mission.js +416 -0
- package/dist/tools/split-mission.js.map +1 -0
- package/dist/tools/suggest-splits.d.ts +162 -0
- package/dist/tools/suggest-splits.d.ts.map +1 -0
- package/dist/tools/suggest-splits.js +344 -0
- package/dist/tools/suggest-splits.js.map +1 -0
- package/dist/tools/tool-execution.d.ts +4 -0
- package/dist/tools/tool-execution.d.ts.map +1 -0
- package/dist/tools/tool-execution.js +3 -0
- package/dist/tools/tool-execution.js.map +1 -0
- package/dist/tools/version-template.d.ts +515 -0
- package/dist/tools/version-template.d.ts.map +1 -0
- package/dist/tools/version-template.js +338 -0
- package/dist/tools/version-template.js.map +1 -0
- package/dist/types/errors.d.ts +19 -0
- package/dist/types/errors.d.ts.map +1 -0
- package/dist/types/errors.js +52 -0
- package/dist/types/errors.js.map +1 -0
- package/dist/types/mission-types.d.ts +8 -0
- package/dist/types/mission-types.d.ts.map +1 -0
- package/dist/types/mission-types.js +12 -0
- package/dist/types/mission-types.js.map +1 -0
- package/dist/types/registry.d.ts +55 -0
- package/dist/types/registry.d.ts.map +1 -0
- package/dist/types/registry.js +10 -0
- package/dist/types/registry.js.map +1 -0
- package/dist/types/schemas.d.ts +25 -0
- package/dist/types/schemas.d.ts.map +1 -0
- package/dist/types/schemas.js +6 -0
- package/dist/types/schemas.js.map +1 -0
- package/dist/types/tools.d.ts +22 -0
- package/dist/types/tools.d.ts.map +1 -0
- package/dist/types/tools.js +10 -0
- package/dist/types/tools.js.map +1 -0
- package/dist/utils/abort.d.ts +16 -0
- package/dist/utils/abort.d.ts.map +1 -0
- package/dist/utils/abort.js +89 -0
- package/dist/utils/abort.js.map +1 -0
- package/dist/utils/fs.d.ts +14 -0
- package/dist/utils/fs.d.ts.map +1 -0
- package/dist/utils/fs.js +114 -0
- package/dist/utils/fs.js.map +1 -0
- package/dist/utils/workspace-io.d.ts +18 -0
- package/dist/utils/workspace-io.d.ts.map +1 -0
- package/dist/utils/workspace-io.js +40 -0
- package/dist/utils/workspace-io.js.map +1 -0
- package/dist/validation/common.d.ts +21 -0
- package/dist/validation/common.d.ts.map +1 -0
- package/dist/validation/common.js +241 -0
- package/dist/validation/common.js.map +1 -0
- package/dist/validation/errors.d.ts +21 -0
- package/dist/validation/errors.d.ts.map +1 -0
- package/dist/validation/errors.js +122 -0
- package/dist/validation/errors.js.map +1 -0
- package/dist/validation/middleware.d.ts +6 -0
- package/dist/validation/middleware.d.ts.map +1 -0
- package/dist/validation/middleware.js +26 -0
- package/dist/validation/middleware.js.map +1 -0
- package/dist/validation/schemas/config-schema.d.ts +25 -0
- package/dist/validation/schemas/config-schema.d.ts.map +1 -0
- package/dist/validation/schemas/config-schema.js +22 -0
- package/dist/validation/schemas/config-schema.js.map +1 -0
- package/dist/validation/schemas/domain-schema.d.ts +129 -0
- package/dist/validation/schemas/domain-schema.d.ts.map +1 -0
- package/dist/validation/schemas/domain-schema.js +28 -0
- package/dist/validation/schemas/domain-schema.js.map +1 -0
- package/dist/validation/schemas/file-path-schema.d.ts +10 -0
- package/dist/validation/schemas/file-path-schema.d.ts.map +1 -0
- package/dist/validation/schemas/file-path-schema.js +29 -0
- package/dist/validation/schemas/file-path-schema.js.map +1 -0
- package/dist/validation/schemas/mission-schema.d.ts +65 -0
- package/dist/validation/schemas/mission-schema.d.ts.map +1 -0
- package/dist/validation/schemas/mission-schema.js +24 -0
- package/dist/validation/schemas/mission-schema.js.map +1 -0
- package/dist/validation/schemas/template-schema.d.ts +364 -0
- package/dist/validation/schemas/template-schema.d.ts.map +1 -0
- package/dist/validation/schemas/template-schema.js +64 -0
- package/dist/validation/schemas/template-schema.js.map +1 -0
- package/dist/versioning/migration-engine.d.ts +82 -0
- package/dist/versioning/migration-engine.d.ts.map +1 -0
- package/dist/versioning/migration-engine.js +352 -0
- package/dist/versioning/migration-engine.js.map +1 -0
- package/dist/versioning/types.d.ts +236 -0
- package/dist/versioning/types.d.ts.map +1 -0
- package/dist/versioning/types.js +57 -0
- package/dist/versioning/types.js.map +1 -0
- package/dist/versioning/version-manager.d.ts +76 -0
- package/dist/versioning/version-manager.d.ts.map +1 -0
- package/dist/versioning/version-manager.js +386 -0
- package/dist/versioning/version-manager.js.map +1 -0
- package/package.json +117 -0
|
@@ -0,0 +1,236 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Secure YAML Loader with Three-Layer Defense
|
|
4
|
+
*
|
|
5
|
+
* Layer 1: Path Sanitization - Prevents directory traversal attacks
|
|
6
|
+
* Layer 2: Safe Parsing - Prevents code execution via YAML tags
|
|
7
|
+
* Layer 3: Schema Validation - Ensures structural integrity
|
|
8
|
+
*
|
|
9
|
+
* @module loaders/yaml-loader
|
|
10
|
+
*/
|
|
11
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
12
|
+
if (k2 === undefined) k2 = k;
|
|
13
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
14
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
15
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
16
|
+
}
|
|
17
|
+
Object.defineProperty(o, k2, desc);
|
|
18
|
+
}) : (function(o, m, k, k2) {
|
|
19
|
+
if (k2 === undefined) k2 = k;
|
|
20
|
+
o[k2] = m[k];
|
|
21
|
+
}));
|
|
22
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
23
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
24
|
+
}) : function(o, v) {
|
|
25
|
+
o["default"] = v;
|
|
26
|
+
});
|
|
27
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
28
|
+
var ownKeys = function(o) {
|
|
29
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
30
|
+
var ar = [];
|
|
31
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
32
|
+
return ar;
|
|
33
|
+
};
|
|
34
|
+
return ownKeys(o);
|
|
35
|
+
};
|
|
36
|
+
return function (mod) {
|
|
37
|
+
if (mod && mod.__esModule) return mod;
|
|
38
|
+
var result = {};
|
|
39
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
40
|
+
__setModuleDefault(result, mod);
|
|
41
|
+
return result;
|
|
42
|
+
};
|
|
43
|
+
})();
|
|
44
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
45
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
46
|
+
};
|
|
47
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
48
|
+
exports.SecureYAMLLoader = void 0;
|
|
49
|
+
const fs_1 = require("fs");
|
|
50
|
+
const path = __importStar(require("path"));
|
|
51
|
+
const YAML = __importStar(require("yaml"));
|
|
52
|
+
const ajv_1 = __importDefault(require("ajv"));
|
|
53
|
+
const errors_1 = require("../types/errors");
|
|
54
|
+
const io_error_1 = require("../errors/io-error");
|
|
55
|
+
const fs_2 = require("../utils/fs");
|
|
56
|
+
/**
|
|
57
|
+
* SecureYAMLLoader provides defense-in-depth for loading YAML files
|
|
58
|
+
*/
|
|
59
|
+
class SecureYAMLLoader {
|
|
60
|
+
constructor(options) {
|
|
61
|
+
// Normalize and resolve base directory
|
|
62
|
+
this.baseDir = path.resolve(options.baseDir);
|
|
63
|
+
this.followSymlinks = options.followSymlinks ?? false;
|
|
64
|
+
this.maxFileSize = options.maxFileSize ?? 10 * 1024 * 1024; // 10MB default
|
|
65
|
+
// Ajv is created lazily only when schema validation is requested to avoid per-call overhead
|
|
66
|
+
this.schemaValidatorCache = new WeakMap();
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Layer 1: Path Sanitization
|
|
70
|
+
* Prevents directory traversal attacks by ensuring the resolved path
|
|
71
|
+
* is within the base directory
|
|
72
|
+
*
|
|
73
|
+
* @param filePath - Relative or absolute file path
|
|
74
|
+
* @returns Sanitized absolute path
|
|
75
|
+
* @throws PathTraversalError if path escapes base directory
|
|
76
|
+
*/
|
|
77
|
+
sanitizePath(filePath) {
|
|
78
|
+
// Resolve the path relative to base directory
|
|
79
|
+
const resolvedPath = path.resolve(this.baseDir, filePath);
|
|
80
|
+
// Get the relative path from base to resolved
|
|
81
|
+
const relativePath = path.relative(this.baseDir, resolvedPath);
|
|
82
|
+
// Check if path escapes base directory
|
|
83
|
+
// If it starts with '..' or is absolute, it's outside baseDir
|
|
84
|
+
if (relativePath.startsWith('..') || path.isAbsolute(relativePath)) {
|
|
85
|
+
throw new errors_1.PathTraversalError(filePath);
|
|
86
|
+
}
|
|
87
|
+
// Additional check: ensure resolved path starts with baseDir
|
|
88
|
+
if (!resolvedPath.startsWith(this.baseDir + path.sep) && resolvedPath !== this.baseDir) {
|
|
89
|
+
throw new errors_1.PathTraversalError(filePath);
|
|
90
|
+
}
|
|
91
|
+
return resolvedPath;
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Layer 2: Safe YAML Parsing
|
|
95
|
+
* Uses YAML.parse which is safe by default (no custom tags)
|
|
96
|
+
* Prevents code execution via malicious YAML constructs
|
|
97
|
+
*
|
|
98
|
+
* @param content - YAML string content
|
|
99
|
+
* @returns Parsed object
|
|
100
|
+
* @throws UnsafeYAMLError if parsing fails or detects unsafe content
|
|
101
|
+
*/
|
|
102
|
+
safeParse(content) {
|
|
103
|
+
try {
|
|
104
|
+
// YAML.parse is safe - it doesn't evaluate custom tags
|
|
105
|
+
// Unlike js-yaml's load(), it won't execute code
|
|
106
|
+
const parsed = YAML.parse(content);
|
|
107
|
+
// Additional safety check: ensure no functions in parsed data
|
|
108
|
+
this.validateNoFunctions(parsed);
|
|
109
|
+
return parsed;
|
|
110
|
+
}
|
|
111
|
+
catch (error) {
|
|
112
|
+
if (error instanceof Error) {
|
|
113
|
+
throw new errors_1.UnsafeYAMLError(error.message);
|
|
114
|
+
}
|
|
115
|
+
throw new errors_1.UnsafeYAMLError('Unknown parsing error');
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Recursively check for function objects in parsed data
|
|
120
|
+
* This prevents any executable code from being loaded
|
|
121
|
+
*/
|
|
122
|
+
validateNoFunctions(obj, path = 'root') {
|
|
123
|
+
if (typeof obj === 'function') {
|
|
124
|
+
throw new errors_1.UnsafeYAMLError(`Function detected at ${path}`);
|
|
125
|
+
}
|
|
126
|
+
if (obj && typeof obj === 'object') {
|
|
127
|
+
for (const [key, value] of Object.entries(obj)) {
|
|
128
|
+
this.validateNoFunctions(value, `${path}.${key}`);
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Layer 3: Schema Validation
|
|
134
|
+
* Validates parsed data against a JSON Schema
|
|
135
|
+
*
|
|
136
|
+
* @param data - Parsed data to validate
|
|
137
|
+
* @param schema - JSON Schema for validation
|
|
138
|
+
* @returns Validated and typed data
|
|
139
|
+
* @throws SchemaValidationError if validation fails
|
|
140
|
+
*/
|
|
141
|
+
validateSchema(data, schema) {
|
|
142
|
+
const ajv = this.getAjv();
|
|
143
|
+
const validate = this.getValidator(schema);
|
|
144
|
+
const valid = validate(data);
|
|
145
|
+
if (!valid) {
|
|
146
|
+
throw new errors_1.SchemaValidationError(ajv.errorsText(validate.errors), validate.errors || []);
|
|
147
|
+
}
|
|
148
|
+
return data;
|
|
149
|
+
}
|
|
150
|
+
/**
|
|
151
|
+
* Load and parse a YAML file with all security layers
|
|
152
|
+
*
|
|
153
|
+
* @param filePath - Path to YAML file (relative to baseDir)
|
|
154
|
+
* @param schema - Optional JSON Schema for validation
|
|
155
|
+
* @returns Parsed and validated data
|
|
156
|
+
* @throws PathTraversalError, UnsafeYAMLError, SchemaValidationError
|
|
157
|
+
*/
|
|
158
|
+
async load(filePath, schema) {
|
|
159
|
+
// Layer 1: Sanitize path
|
|
160
|
+
const sanitizedPath = this.sanitizePath(filePath);
|
|
161
|
+
// Check file exists and get stats
|
|
162
|
+
if (!(await (0, fs_2.pathExists)(sanitizedPath))) {
|
|
163
|
+
throw new io_error_1.IOError(`File not found: ${filePath}`, {
|
|
164
|
+
code: 'IO_NOT_FOUND',
|
|
165
|
+
context: {
|
|
166
|
+
requestedPath: filePath,
|
|
167
|
+
resolvedPath: sanitizedPath,
|
|
168
|
+
},
|
|
169
|
+
});
|
|
170
|
+
}
|
|
171
|
+
// Use lstatSync to detect symlinks (statSync follows them)
|
|
172
|
+
const stats = await fs_1.promises.lstat(sanitizedPath);
|
|
173
|
+
// Check if symlink when not allowed
|
|
174
|
+
if (stats.isSymbolicLink() && !this.followSymlinks) {
|
|
175
|
+
throw new errors_1.PathTraversalError(`Symbolic links not allowed: ${filePath}`);
|
|
176
|
+
}
|
|
177
|
+
// Check file size
|
|
178
|
+
if (stats.size > this.maxFileSize) {
|
|
179
|
+
throw new io_error_1.IOError(`File too large: ${stats.size} bytes (max: ${this.maxFileSize})`, {
|
|
180
|
+
code: 'IO_SIZE_LIMIT',
|
|
181
|
+
context: {
|
|
182
|
+
resolvedPath: sanitizedPath,
|
|
183
|
+
fileSize: stats.size,
|
|
184
|
+
maxSize: this.maxFileSize,
|
|
185
|
+
},
|
|
186
|
+
});
|
|
187
|
+
}
|
|
188
|
+
// Read file content
|
|
189
|
+
const content = await fs_1.promises.readFile(sanitizedPath, 'utf-8');
|
|
190
|
+
// Layer 2: Safe parse
|
|
191
|
+
const parsed = this.safeParse(content);
|
|
192
|
+
// Layer 3: Schema validation (if provided)
|
|
193
|
+
if (schema) {
|
|
194
|
+
return this.validateSchema(parsed, schema);
|
|
195
|
+
}
|
|
196
|
+
return parsed;
|
|
197
|
+
}
|
|
198
|
+
/**
|
|
199
|
+
* Retrieve (or compile) a validator for the supplied schema.
|
|
200
|
+
* WeakMap cache ensures we only compile static schemas once.
|
|
201
|
+
*/
|
|
202
|
+
getAjv() {
|
|
203
|
+
if (!this.ajv) {
|
|
204
|
+
this.ajv = new ajv_1.default({ allErrors: true, strict: false });
|
|
205
|
+
}
|
|
206
|
+
return this.ajv;
|
|
207
|
+
}
|
|
208
|
+
getValidator(schema) {
|
|
209
|
+
const cached = this.schemaValidatorCache.get(schema);
|
|
210
|
+
if (cached) {
|
|
211
|
+
return cached;
|
|
212
|
+
}
|
|
213
|
+
const ajv = this.getAjv();
|
|
214
|
+
const validator = ajv.compile(schema);
|
|
215
|
+
this.schemaValidatorCache.set(schema, validator);
|
|
216
|
+
return validator;
|
|
217
|
+
}
|
|
218
|
+
/**
|
|
219
|
+
* Load multiple YAML files
|
|
220
|
+
*
|
|
221
|
+
* @param filePaths - Array of file paths
|
|
222
|
+
* @param schema - Optional schema to validate each file
|
|
223
|
+
* @returns Array of parsed data
|
|
224
|
+
*/
|
|
225
|
+
async loadMultiple(filePaths, schema) {
|
|
226
|
+
return Promise.all(filePaths.map((filePath) => this.load(filePath, schema)));
|
|
227
|
+
}
|
|
228
|
+
/**
|
|
229
|
+
* Get the base directory
|
|
230
|
+
*/
|
|
231
|
+
getBaseDir() {
|
|
232
|
+
return this.baseDir;
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
exports.SecureYAMLLoader = SecureYAMLLoader;
|
|
236
|
+
//# sourceMappingURL=yaml-loader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"yaml-loader.js","sourceRoot":"","sources":["../../src/loaders/yaml-loader.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Deep Merge Logic for Mission Template Composition
|
|
3
|
+
*
|
|
4
|
+
* Deterministic algorithm that merges generic mission templates with
|
|
5
|
+
* domain-specific fields. Ensures same inputs always produce same output.
|
|
6
|
+
*
|
|
7
|
+
* Merge Rules:
|
|
8
|
+
* 1. Dictionaries: recursive merge, domain overrides generic
|
|
9
|
+
* 2. Lists: concatenate (generic first, then domain)
|
|
10
|
+
* 3. Scalars: domain value replaces generic value
|
|
11
|
+
* 4. Null handling: domain null removes generic field
|
|
12
|
+
*
|
|
13
|
+
* @version 1.0
|
|
14
|
+
*/
|
|
15
|
+
/**
|
|
16
|
+
* Merge strategy options for handling different data types
|
|
17
|
+
*/
|
|
18
|
+
export type MergeStrategy = 'append' | 'override' | 'unique';
|
|
19
|
+
/**
|
|
20
|
+
* Configuration options for the merge algorithm
|
|
21
|
+
*/
|
|
22
|
+
export interface MergeOptions {
|
|
23
|
+
/** Strategy for merging arrays/lists (default: 'concat') */
|
|
24
|
+
arrayStrategy?: 'concat' | 'replace';
|
|
25
|
+
/** Strategy for list merging (default: 'append') */
|
|
26
|
+
listStrategy?: MergeStrategy;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* MissionMerger class - Deterministic deep merge for template composition
|
|
30
|
+
*
|
|
31
|
+
* @example
|
|
32
|
+
* ```typescript
|
|
33
|
+
* const merger = new MissionMerger();
|
|
34
|
+
* const generic = { objective: "Build feature", domainFields: {} };
|
|
35
|
+
* const domain = { domainFields: { techStack: "TypeScript" } };
|
|
36
|
+
* const result = merger.merge(generic, domain);
|
|
37
|
+
* ```
|
|
38
|
+
*/
|
|
39
|
+
export declare class MissionMerger {
|
|
40
|
+
/**
|
|
41
|
+
* Merge base object with extension object, creating a new merged object
|
|
42
|
+
*
|
|
43
|
+
* @param base - The base object (generic template)
|
|
44
|
+
* @param extension - The extension object (domain-specific fields)
|
|
45
|
+
* @param options - Optional merge configuration
|
|
46
|
+
* @returns New merged object (does not mutate inputs)
|
|
47
|
+
*/
|
|
48
|
+
merge<T>(base: T, extension: unknown, options?: MergeOptions): T;
|
|
49
|
+
/**
|
|
50
|
+
* Merge two objects recursively
|
|
51
|
+
*
|
|
52
|
+
* @param base - Base object
|
|
53
|
+
* @param extension - Extension object
|
|
54
|
+
* @param options - Merge options
|
|
55
|
+
* @returns New merged object
|
|
56
|
+
*/
|
|
57
|
+
private mergeObjects;
|
|
58
|
+
/**
|
|
59
|
+
* Merge two arrays/lists
|
|
60
|
+
*
|
|
61
|
+
* @param base - Base array
|
|
62
|
+
* @param extension - Extension array
|
|
63
|
+
* @param options - Merge options
|
|
64
|
+
* @returns New merged array
|
|
65
|
+
*/
|
|
66
|
+
private mergeLists;
|
|
67
|
+
/**
|
|
68
|
+
* Merge individual values based on their types
|
|
69
|
+
*
|
|
70
|
+
* @param baseValue - Value from base object
|
|
71
|
+
* @param extensionValue - Value from extension object
|
|
72
|
+
* @param options - Merge options
|
|
73
|
+
* @returns Merged value
|
|
74
|
+
*/
|
|
75
|
+
private mergeValue;
|
|
76
|
+
/**
|
|
77
|
+
* Type guard to check if a value is a plain object (not array, not null)
|
|
78
|
+
*
|
|
79
|
+
* @param value - Value to check
|
|
80
|
+
* @returns True if value is a plain object
|
|
81
|
+
*/
|
|
82
|
+
private isObject;
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Convenience function for one-off merges
|
|
86
|
+
*
|
|
87
|
+
* @param base - Base object
|
|
88
|
+
* @param extension - Extension object
|
|
89
|
+
* @param options - Optional merge configuration
|
|
90
|
+
* @returns New merged object
|
|
91
|
+
*/
|
|
92
|
+
export declare function deepMerge<T>(base: T, extension: unknown, options?: MergeOptions): T;
|
|
93
|
+
//# sourceMappingURL=deep-merge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deep-merge.d.ts","sourceRoot":"","sources":["../../src/merge/deep-merge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,UAAU,GAAG,QAAQ,CAAC;AAE7D;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,4DAA4D;IAC5D,aAAa,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;IAErC,oDAAoD;IACpD,YAAY,CAAC,EAAE,aAAa,CAAC;CAC9B;AAUD;;;;;;;;;;GAUG;AACH,qBAAa,aAAa;IACxB;;;;;;;OAOG;IACH,KAAK,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,CAAC;IAyBhE;;;;;;;OAOG;IACH,OAAO,CAAC,YAAY;IAwBpB;;;;;;;OAOG;IACH,OAAO,CAAC,UAAU;IAsBlB;;;;;;;OAOG;IACH,OAAO,CAAC,UAAU;IA6BlB;;;;;OAKG;IACH,OAAO,CAAC,QAAQ;CASjB;AAED;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,CAAC,CAGnF"}
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Deep Merge Logic for Mission Template Composition
|
|
4
|
+
*
|
|
5
|
+
* Deterministic algorithm that merges generic mission templates with
|
|
6
|
+
* domain-specific fields. Ensures same inputs always produce same output.
|
|
7
|
+
*
|
|
8
|
+
* Merge Rules:
|
|
9
|
+
* 1. Dictionaries: recursive merge, domain overrides generic
|
|
10
|
+
* 2. Lists: concatenate (generic first, then domain)
|
|
11
|
+
* 3. Scalars: domain value replaces generic value
|
|
12
|
+
* 4. Null handling: domain null removes generic field
|
|
13
|
+
*
|
|
14
|
+
* @version 1.0
|
|
15
|
+
*/
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.MissionMerger = void 0;
|
|
18
|
+
exports.deepMerge = deepMerge;
|
|
19
|
+
/**
|
|
20
|
+
* Default merge options
|
|
21
|
+
*/
|
|
22
|
+
const DEFAULT_OPTIONS = {
|
|
23
|
+
arrayStrategy: 'concat',
|
|
24
|
+
listStrategy: 'append',
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* MissionMerger class - Deterministic deep merge for template composition
|
|
28
|
+
*
|
|
29
|
+
* @example
|
|
30
|
+
* ```typescript
|
|
31
|
+
* const merger = new MissionMerger();
|
|
32
|
+
* const generic = { objective: "Build feature", domainFields: {} };
|
|
33
|
+
* const domain = { domainFields: { techStack: "TypeScript" } };
|
|
34
|
+
* const result = merger.merge(generic, domain);
|
|
35
|
+
* ```
|
|
36
|
+
*/
|
|
37
|
+
class MissionMerger {
|
|
38
|
+
/**
|
|
39
|
+
* Merge base object with extension object, creating a new merged object
|
|
40
|
+
*
|
|
41
|
+
* @param base - The base object (generic template)
|
|
42
|
+
* @param extension - The extension object (domain-specific fields)
|
|
43
|
+
* @param options - Optional merge configuration
|
|
44
|
+
* @returns New merged object (does not mutate inputs)
|
|
45
|
+
*/
|
|
46
|
+
merge(base, extension, options) {
|
|
47
|
+
const mergeOpts = { ...DEFAULT_OPTIONS, ...options };
|
|
48
|
+
// Handle null/undefined cases
|
|
49
|
+
if (base === null || base === undefined) {
|
|
50
|
+
return extension;
|
|
51
|
+
}
|
|
52
|
+
if (extension === null || extension === undefined) {
|
|
53
|
+
return base;
|
|
54
|
+
}
|
|
55
|
+
// Handle arrays
|
|
56
|
+
if (Array.isArray(base) && Array.isArray(extension)) {
|
|
57
|
+
return this.mergeLists(base, extension, mergeOpts);
|
|
58
|
+
}
|
|
59
|
+
// Handle objects
|
|
60
|
+
if (this.isObject(base) && this.isObject(extension)) {
|
|
61
|
+
return this.mergeObjects(base, extension, mergeOpts);
|
|
62
|
+
}
|
|
63
|
+
// Scalars: extension replaces base
|
|
64
|
+
return extension;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Merge two objects recursively
|
|
68
|
+
*
|
|
69
|
+
* @param base - Base object
|
|
70
|
+
* @param extension - Extension object
|
|
71
|
+
* @param options - Merge options
|
|
72
|
+
* @returns New merged object
|
|
73
|
+
*/
|
|
74
|
+
mergeObjects(base, extension, options) {
|
|
75
|
+
const result = { ...base };
|
|
76
|
+
for (const [key, extensionValue] of Object.entries(extension)) {
|
|
77
|
+
const baseValue = base[key];
|
|
78
|
+
// Skip undefined values (they don't override)
|
|
79
|
+
if (extensionValue === undefined) {
|
|
80
|
+
continue;
|
|
81
|
+
}
|
|
82
|
+
// Domain null removes field
|
|
83
|
+
if (extensionValue === null) {
|
|
84
|
+
delete result[key];
|
|
85
|
+
continue;
|
|
86
|
+
}
|
|
87
|
+
// Merge the value
|
|
88
|
+
result[key] = this.mergeValue(baseValue, extensionValue, options);
|
|
89
|
+
}
|
|
90
|
+
return result;
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Merge two arrays/lists
|
|
94
|
+
*
|
|
95
|
+
* @param base - Base array
|
|
96
|
+
* @param extension - Extension array
|
|
97
|
+
* @param options - Merge options
|
|
98
|
+
* @returns New merged array
|
|
99
|
+
*/
|
|
100
|
+
mergeLists(base, extension, options) {
|
|
101
|
+
if (options.arrayStrategy === 'replace') {
|
|
102
|
+
return [...extension];
|
|
103
|
+
}
|
|
104
|
+
// Default: concat (generic first, then domain)
|
|
105
|
+
if (options.listStrategy === 'unique') {
|
|
106
|
+
// Remove duplicates while preserving order
|
|
107
|
+
const combined = [...base, ...extension];
|
|
108
|
+
return Array.from(new Set(combined.map((item) => JSON.stringify(item)))).map((item) => JSON.parse(item));
|
|
109
|
+
}
|
|
110
|
+
// Default append strategy
|
|
111
|
+
return [...base, ...extension];
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Merge individual values based on their types
|
|
115
|
+
*
|
|
116
|
+
* @param baseValue - Value from base object
|
|
117
|
+
* @param extensionValue - Value from extension object
|
|
118
|
+
* @param options - Merge options
|
|
119
|
+
* @returns Merged value
|
|
120
|
+
*/
|
|
121
|
+
mergeValue(baseValue, extensionValue, options) {
|
|
122
|
+
// Extension null removes the field
|
|
123
|
+
if (extensionValue === null) {
|
|
124
|
+
return undefined;
|
|
125
|
+
}
|
|
126
|
+
// If base doesn't exist, use extension
|
|
127
|
+
if (baseValue === undefined || baseValue === null) {
|
|
128
|
+
return extensionValue;
|
|
129
|
+
}
|
|
130
|
+
// Arrays
|
|
131
|
+
if (Array.isArray(baseValue) && Array.isArray(extensionValue)) {
|
|
132
|
+
return this.mergeLists(baseValue, extensionValue, options);
|
|
133
|
+
}
|
|
134
|
+
// Objects
|
|
135
|
+
if (this.isObject(baseValue) && this.isObject(extensionValue)) {
|
|
136
|
+
return this.mergeObjects(baseValue, extensionValue, options);
|
|
137
|
+
}
|
|
138
|
+
// Scalars: extension wins
|
|
139
|
+
return extensionValue;
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* Type guard to check if a value is a plain object (not array, not null)
|
|
143
|
+
*
|
|
144
|
+
* @param value - Value to check
|
|
145
|
+
* @returns True if value is a plain object
|
|
146
|
+
*/
|
|
147
|
+
isObject(value) {
|
|
148
|
+
return (typeof value === 'object' &&
|
|
149
|
+
value !== null &&
|
|
150
|
+
!Array.isArray(value) &&
|
|
151
|
+
!(value instanceof Date) &&
|
|
152
|
+
!(value instanceof RegExp));
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
exports.MissionMerger = MissionMerger;
|
|
156
|
+
/**
|
|
157
|
+
* Convenience function for one-off merges
|
|
158
|
+
*
|
|
159
|
+
* @param base - Base object
|
|
160
|
+
* @param extension - Extension object
|
|
161
|
+
* @param options - Optional merge configuration
|
|
162
|
+
* @returns New merged object
|
|
163
|
+
*/
|
|
164
|
+
function deepMerge(base, extension, options) {
|
|
165
|
+
const merger = new MissionMerger();
|
|
166
|
+
return merger.merge(base, extension, options);
|
|
167
|
+
}
|
|
168
|
+
//# sourceMappingURL=deep-merge.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deep-merge.js","sourceRoot":"","sources":["../../src/merge/deep-merge.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AI-Readiness Dimension Analyzer
|
|
3
|
+
* Implements: Syntactic Validity, Instruction Specificity, Structural Consistency
|
|
4
|
+
*/
|
|
5
|
+
import { DimensionScore, AIReadinessMetrics, MissionContent } from '../types';
|
|
6
|
+
export declare class AIReadinessAnalyzer {
|
|
7
|
+
private weights;
|
|
8
|
+
private readonly WEAK_PHRASES;
|
|
9
|
+
constructor(customWeights?: Partial<Record<keyof AIReadinessMetrics, number>>);
|
|
10
|
+
analyze(mission: MissionContent): Promise<DimensionScore>;
|
|
11
|
+
/**
|
|
12
|
+
* Check syntactic validity
|
|
13
|
+
* Hard gate: mission must be valid structure
|
|
14
|
+
*/
|
|
15
|
+
private checkSyntacticValidity;
|
|
16
|
+
/**
|
|
17
|
+
* Calculate instruction specificity
|
|
18
|
+
* Based on prompt engineering best practices checklist
|
|
19
|
+
*/
|
|
20
|
+
private calculateInstructionSpecificity;
|
|
21
|
+
/**
|
|
22
|
+
* Calculate linting score
|
|
23
|
+
* Checks for structural consistency and best practices
|
|
24
|
+
*/
|
|
25
|
+
private calculateLintingScore;
|
|
26
|
+
private hasExplicitGoal;
|
|
27
|
+
private hasDefinedScope;
|
|
28
|
+
private hasFormatSpecification;
|
|
29
|
+
private hasConstraints;
|
|
30
|
+
private hasWellDefinedSuccessCriteria;
|
|
31
|
+
private findEmptyFields;
|
|
32
|
+
private getSpecificityDetails;
|
|
33
|
+
private getLintingDetails;
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=ai-readiness-analyzer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-readiness-analyzer.d.ts","sourceRoot":"","sources":["../../../src/quality/analyzers/ai-readiness-analyzer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,cAAc,EAEd,kBAAkB,EAClB,cAAc,EAEf,MAAM,UAAU,CAAC;AAElB,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,OAAO,CAA2C;IAG1D,OAAO,CAAC,QAAQ,CAAC,YAAY,CA+B3B;gBAEU,aAAa,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,kBAAkB,EAAE,MAAM,CAAC,CAAC;IAIvE,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;IAuD/D;;;OAGG;IACH,OAAO,CAAC,sBAAsB;IAmB9B;;;OAGG;IACH,OAAO,CAAC,+BAA+B;IAgDvC;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAyD7B,OAAO,CAAC,eAAe;IA8BvB,OAAO,CAAC,eAAe;IA2BvB,OAAO,CAAC,sBAAsB;IAoB9B,OAAO,CAAC,cAAc;IA0CtB,OAAO,CAAC,6BAA6B;IAyBrC,OAAO,CAAC,eAAe;IAmBvB,OAAO,CAAC,qBAAqB;IAU7B,OAAO,CAAC,iBAAiB;CAY1B"}
|