@seanmars/tospec 0.19.0-beta.0 → 0.19.0-beta.13
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 +578 -0
- package/README.md +71 -77
- package/assets/dashboard/app.js +14 -3
- package/assets/dashboard/style.css +7 -0
- package/assets/metrics/app.js +22 -0
- package/assets/metrics/style.css +8 -0
- package/assets/rules/tospec/decision.md +3 -0
- package/assets/rules/tospec/single-source-of-truth.md +19 -0
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +266 -82
- package/dist/cli/index.js.map +1 -1
- package/dist/commands/config.d.ts +9 -17
- package/dist/commands/config.d.ts.map +1 -1
- package/dist/commands/config.js +374 -95
- package/dist/commands/config.js.map +1 -1
- package/dist/commands/dashboard.d.ts +64 -81
- package/dist/commands/dashboard.d.ts.map +1 -1
- package/dist/commands/dashboard.js +350 -218
- package/dist/commands/dashboard.js.map +1 -1
- package/dist/commands/decision.d.ts +41 -19
- package/dist/commands/decision.d.ts.map +1 -1
- package/dist/commands/decision.js +400 -70
- package/dist/commands/decision.js.map +1 -1
- package/dist/commands/metrics.d.ts +34 -48
- package/dist/commands/metrics.d.ts.map +1 -1
- package/dist/commands/metrics.js +74 -84
- package/dist/commands/metrics.js.map +1 -1
- package/dist/commands/shared-output.d.ts +24 -10
- package/dist/commands/shared-output.d.ts.map +1 -1
- package/dist/commands/shared-output.js +62 -11
- package/dist/commands/shared-output.js.map +1 -1
- package/dist/commands/show.d.ts +7 -0
- package/dist/commands/show.d.ts.map +1 -1
- package/dist/commands/show.js +39 -8
- package/dist/commands/show.js.map +1 -1
- package/dist/commands/validate.d.ts +47 -30
- package/dist/commands/validate.d.ts.map +1 -1
- package/dist/commands/validate.js +282 -108
- package/dist/commands/validate.js.map +1 -1
- package/dist/commands/workflow/index.d.ts +6 -10
- package/dist/commands/workflow/index.d.ts.map +1 -1
- package/dist/commands/workflow/index.js +6 -10
- package/dist/commands/workflow/index.js.map +1 -1
- package/dist/commands/workflow/instructions.d.ts +21 -8
- package/dist/commands/workflow/instructions.d.ts.map +1 -1
- package/dist/commands/workflow/instructions.js +254 -95
- package/dist/commands/workflow/instructions.js.map +1 -1
- package/dist/commands/workflow/new-change.d.ts +4 -5
- package/dist/commands/workflow/new-change.d.ts.map +1 -1
- package/dist/commands/workflow/new-change.js +90 -25
- package/dist/commands/workflow/new-change.js.map +1 -1
- package/dist/commands/workflow/schemas.d.ts +3 -5
- package/dist/commands/workflow/schemas.d.ts.map +1 -1
- package/dist/commands/workflow/schemas.js +37 -11
- package/dist/commands/workflow/schemas.js.map +1 -1
- package/dist/commands/workflow/shared.d.ts +48 -21
- package/dist/commands/workflow/shared.d.ts.map +1 -1
- package/dist/commands/workflow/shared.js +36 -33
- package/dist/commands/workflow/shared.js.map +1 -1
- package/dist/commands/workflow/status.d.ts +10 -6
- package/dist/commands/workflow/status.d.ts.map +1 -1
- package/dist/commands/workflow/status.js +84 -42
- package/dist/commands/workflow/status.js.map +1 -1
- package/dist/commands/workflow/templates.d.ts +10 -3
- package/dist/commands/workflow/templates.d.ts.map +1 -1
- package/dist/commands/workflow/templates.js +39 -40
- package/dist/commands/workflow/templates.js.map +1 -1
- package/dist/core/archive.d.ts +26 -21
- package/dist/core/archive.d.ts.map +1 -1
- package/dist/core/archive.js +415 -201
- package/dist/core/archive.js.map +1 -1
- package/dist/core/artifact-graph/graph.d.ts +29 -36
- package/dist/core/artifact-graph/graph.d.ts.map +1 -1
- package/dist/core/artifact-graph/graph.js +50 -58
- package/dist/core/artifact-graph/graph.js.map +1 -1
- package/dist/core/artifact-graph/index.d.ts +2 -2
- package/dist/core/artifact-graph/index.d.ts.map +1 -1
- package/dist/core/artifact-graph/index.js +2 -2
- package/dist/core/artifact-graph/index.js.map +1 -1
- package/dist/core/artifact-graph/instruction-loader.d.ts +105 -100
- package/dist/core/artifact-graph/instruction-loader.d.ts.map +1 -1
- package/dist/core/artifact-graph/instruction-loader.js +176 -110
- package/dist/core/artifact-graph/instruction-loader.js.map +1 -1
- package/dist/core/artifact-graph/outputs.d.ts +13 -6
- package/dist/core/artifact-graph/outputs.d.ts.map +1 -1
- package/dist/core/artifact-graph/outputs.js +146 -8
- package/dist/core/artifact-graph/outputs.js.map +1 -1
- package/dist/core/artifact-graph/resolver.d.ts +44 -63
- package/dist/core/artifact-graph/resolver.d.ts.map +1 -1
- package/dist/core/artifact-graph/resolver.js +85 -86
- package/dist/core/artifact-graph/resolver.js.map +1 -1
- package/dist/core/artifact-graph/schema.d.ts +0 -6
- package/dist/core/artifact-graph/schema.d.ts.map +1 -1
- package/dist/core/artifact-graph/schema.js +7 -32
- package/dist/core/artifact-graph/schema.js.map +1 -1
- package/dist/core/artifact-graph/state.d.ts +1 -8
- package/dist/core/artifact-graph/state.d.ts.map +1 -1
- package/dist/core/artifact-graph/state.js +2 -17
- package/dist/core/artifact-graph/state.js.map +1 -1
- package/dist/core/artifact-graph/stub-detection.d.ts +12 -0
- package/dist/core/artifact-graph/stub-detection.d.ts.map +1 -0
- package/dist/core/artifact-graph/stub-detection.js +39 -0
- package/dist/core/artifact-graph/stub-detection.js.map +1 -0
- package/dist/core/artifact-graph/types.d.ts +4 -0
- package/dist/core/artifact-graph/types.d.ts.map +1 -1
- package/dist/core/artifact-graph/types.js +30 -10
- package/dist/core/artifact-graph/types.js.map +1 -1
- package/dist/core/available-tools.d.ts +3 -12
- package/dist/core/available-tools.d.ts.map +1 -1
- package/dist/core/available-tools.js +4 -13
- package/dist/core/available-tools.js.map +1 -1
- package/dist/core/change-metadata/schema.d.ts +1 -1
- package/dist/core/change-metadata/schema.d.ts.map +1 -1
- package/dist/core/change-metadata/schema.js +10 -7
- package/dist/core/change-metadata/schema.js.map +1 -1
- package/dist/core/change-presenter.d.ts +23 -18
- package/dist/core/change-presenter.d.ts.map +1 -1
- package/dist/core/change-presenter.js +102 -43
- package/dist/core/change-presenter.js.map +1 -1
- package/dist/core/change-status-policy.d.ts +8 -1
- package/dist/core/change-status-policy.d.ts.map +1 -1
- package/dist/core/change-status-policy.js +25 -1
- package/dist/core/change-status-policy.js.map +1 -1
- package/dist/core/codex-metrics.d.ts +25 -45
- package/dist/core/codex-metrics.d.ts.map +1 -1
- package/dist/core/codex-metrics.js +44 -88
- package/dist/core/codex-metrics.js.map +1 -1
- package/dist/core/codex-residue.d.ts +22 -0
- package/dist/core/codex-residue.d.ts.map +1 -0
- package/dist/core/codex-residue.js +61 -0
- package/dist/core/codex-residue.js.map +1 -0
- package/dist/core/command-generation/adapters/claude.d.ts +2 -9
- package/dist/core/command-generation/adapters/claude.d.ts.map +1 -1
- package/dist/core/command-generation/adapters/claude.js +2 -12
- package/dist/core/command-generation/adapters/claude.js.map +1 -1
- package/dist/core/command-generation/adapters/index.d.ts +1 -9
- package/dist/core/command-generation/adapters/index.d.ts.map +1 -1
- package/dist/core/command-generation/adapters/index.js +1 -9
- package/dist/core/command-generation/adapters/index.js.map +1 -1
- package/dist/core/command-generation/generator.d.ts +0 -17
- package/dist/core/command-generation/generator.d.ts.map +1 -1
- package/dist/core/command-generation/generator.js +0 -17
- package/dist/core/command-generation/generator.js.map +1 -1
- package/dist/core/command-generation/index.d.ts +2 -5
- package/dist/core/command-generation/index.d.ts.map +1 -1
- package/dist/core/command-generation/index.js +0 -9
- package/dist/core/command-generation/index.js.map +1 -1
- package/dist/core/command-generation/types.d.ts +10 -36
- package/dist/core/command-generation/types.d.ts.map +1 -1
- package/dist/core/command-generation/types.js +0 -6
- package/dist/core/command-generation/types.js.map +1 -1
- package/dist/core/command-generation/yaml.d.ts +3 -18
- package/dist/core/command-generation/yaml.d.ts.map +1 -1
- package/dist/core/command-generation/yaml.js +5 -23
- package/dist/core/command-generation/yaml.js.map +1 -1
- package/dist/core/config-prompts.d.ts +2 -4
- package/dist/core/config-prompts.d.ts.map +1 -1
- package/dist/core/config-prompts.js +2 -7
- package/dist/core/config-prompts.js.map +1 -1
- package/dist/core/config-schema.d.ts +8 -53
- package/dist/core/config-schema.d.ts.map +1 -1
- package/dist/core/config-schema.js +49 -62
- package/dist/core/config-schema.js.map +1 -1
- package/dist/core/config.d.ts +56 -0
- package/dist/core/config.d.ts.map +1 -1
- package/dist/core/config.js +73 -2
- package/dist/core/config.js.map +1 -1
- package/dist/core/converters/json-converter.d.ts.map +1 -1
- package/dist/core/dashboard-activity.d.ts +7 -9
- package/dist/core/dashboard-activity.d.ts.map +1 -1
- package/dist/core/dashboard-activity.js +26 -24
- package/dist/core/dashboard-activity.js.map +1 -1
- package/dist/core/dashboard-data.d.ts +40 -22
- package/dist/core/dashboard-data.d.ts.map +1 -1
- package/dist/core/dashboard-data.js +84 -68
- package/dist/core/dashboard-data.js.map +1 -1
- package/dist/core/global-config.d.ts +24 -53
- package/dist/core/global-config.d.ts.map +1 -1
- package/dist/core/global-config.js +43 -62
- package/dist/core/global-config.js.map +1 -1
- package/dist/core/init.d.ts +29 -11
- package/dist/core/init.d.ts.map +1 -1
- package/dist/core/init.js +232 -164
- package/dist/core/init.js.map +1 -1
- package/dist/core/list.d.ts +1 -1
- package/dist/core/list.d.ts.map +1 -1
- package/dist/core/list.js +121 -28
- package/dist/core/list.js.map +1 -1
- package/dist/core/local-server.d.ts +63 -39
- package/dist/core/local-server.d.ts.map +1 -1
- package/dist/core/local-server.js +99 -53
- package/dist/core/local-server.js.map +1 -1
- package/dist/core/markdown-render.d.ts +25 -0
- package/dist/core/markdown-render.d.ts.map +1 -0
- package/dist/core/markdown-render.js +94 -0
- package/dist/core/markdown-render.js.map +1 -0
- package/dist/core/migrate.d.ts +32 -15
- package/dist/core/migrate.d.ts.map +1 -1
- package/dist/core/migrate.js +220 -108
- package/dist/core/migrate.js.map +1 -1
- package/dist/core/parsers/change-parser.d.ts +7 -10
- package/dist/core/parsers/change-parser.d.ts.map +1 -1
- package/dist/core/parsers/change-parser.js +48 -56
- package/dist/core/parsers/change-parser.js.map +1 -1
- package/dist/core/parsers/markdown-parser.d.ts +8 -9
- package/dist/core/parsers/markdown-parser.d.ts.map +1 -1
- package/dist/core/parsers/markdown-parser.js +31 -22
- package/dist/core/parsers/markdown-parser.js.map +1 -1
- package/dist/core/parsers/requirement-blocks.d.ts +53 -11
- package/dist/core/parsers/requirement-blocks.d.ts.map +1 -1
- package/dist/core/parsers/requirement-blocks.js +200 -60
- package/dist/core/parsers/requirement-blocks.js.map +1 -1
- package/dist/core/parsers/requirement-text.d.ts +73 -79
- package/dist/core/parsers/requirement-text.d.ts.map +1 -1
- package/dist/core/parsers/requirement-text.js +137 -79
- package/dist/core/parsers/requirement-text.js.map +1 -1
- package/dist/core/parsers/spec-structure.d.ts +1 -1
- package/dist/core/parsers/spec-structure.d.ts.map +1 -1
- package/dist/core/parsers/spec-structure.js +30 -3
- package/dist/core/parsers/spec-structure.js.map +1 -1
- package/dist/core/planning-home.js.map +1 -1
- package/dist/core/profiles.d.ts +3 -10
- package/dist/core/profiles.d.ts.map +1 -1
- package/dist/core/profiles.js +5 -12
- package/dist/core/profiles.js.map +1 -1
- package/dist/core/project-config.d.ts +43 -44
- package/dist/core/project-config.d.ts.map +1 -1
- package/dist/core/project-config.js +107 -82
- package/dist/core/project-config.js.map +1 -1
- package/dist/core/project-layout.d.ts +10 -18
- package/dist/core/project-layout.d.ts.map +1 -1
- package/dist/core/project-layout.js +16 -26
- package/dist/core/project-layout.js.map +1 -1
- package/dist/core/root-selection.d.ts +11 -7
- package/dist/core/root-selection.d.ts.map +1 -1
- package/dist/core/root-selection.js +7 -8
- package/dist/core/root-selection.js.map +1 -1
- package/dist/core/rules.d.ts +10 -0
- package/dist/core/rules.d.ts.map +1 -0
- package/dist/core/rules.js +43 -0
- package/dist/core/rules.js.map +1 -0
- package/dist/core/schema-names.d.ts +16 -0
- package/dist/core/schema-names.d.ts.map +1 -0
- package/dist/core/schema-names.js +16 -0
- package/dist/core/schema-names.js.map +1 -0
- package/dist/core/schemas/base.schema.d.ts +3 -0
- package/dist/core/schemas/base.schema.d.ts.map +1 -1
- package/dist/core/schemas/base.schema.js +22 -6
- package/dist/core/schemas/base.schema.js.map +1 -1
- package/dist/core/schemas/change.schema.d.ts +16 -0
- package/dist/core/schemas/change.schema.d.ts.map +1 -1
- package/dist/core/schemas/change.schema.js +41 -10
- package/dist/core/schemas/change.schema.js.map +1 -1
- package/dist/core/schemas/spec.schema.d.ts +2 -0
- package/dist/core/schemas/spec.schema.d.ts.map +1 -1
- package/dist/core/shared/index.d.ts +3 -8
- package/dist/core/shared/index.d.ts.map +1 -1
- package/dist/core/shared/index.js +3 -8
- package/dist/core/shared/index.js.map +1 -1
- package/dist/core/shared/rules-generation.d.ts +27 -8
- package/dist/core/shared/rules-generation.d.ts.map +1 -1
- package/dist/core/shared/rules-generation.js +151 -16
- package/dist/core/shared/rules-generation.js.map +1 -1
- package/dist/core/shared/skill-generation.d.ts +38 -53
- package/dist/core/shared/skill-generation.d.ts.map +1 -1
- package/dist/core/shared/skill-generation.js +82 -51
- package/dist/core/shared/skill-generation.js.map +1 -1
- package/dist/core/shared/tool-detection.d.ts +40 -62
- package/dist/core/shared/tool-detection.d.ts.map +1 -1
- package/dist/core/shared/tool-detection.js +88 -80
- package/dist/core/shared/tool-detection.js.map +1 -1
- package/dist/core/skill-metrics.d.ts +36 -63
- package/dist/core/skill-metrics.d.ts.map +1 -1
- package/dist/core/skill-metrics.js +34 -73
- package/dist/core/skill-metrics.js.map +1 -1
- package/dist/core/spec-presenter.d.ts.map +1 -1
- package/dist/core/spec-presenter.js +6 -6
- package/dist/core/spec-presenter.js.map +1 -1
- package/dist/core/specs-apply.d.ts +24 -23
- package/dist/core/specs-apply.d.ts.map +1 -1
- package/dist/core/specs-apply.js +188 -173
- package/dist/core/specs-apply.js.map +1 -1
- package/dist/core/templates/fragments/interview.d.ts +2 -6
- package/dist/core/templates/fragments/interview.d.ts.map +1 -1
- package/dist/core/templates/fragments/interview.js +2 -6
- package/dist/core/templates/fragments/interview.js.map +1 -1
- package/dist/core/templates/fragments/next-step.d.ts +4 -8
- package/dist/core/templates/fragments/next-step.d.ts.map +1 -1
- package/dist/core/templates/fragments/next-step.js +4 -8
- package/dist/core/templates/fragments/next-step.js.map +1 -1
- package/dist/core/templates/fragments/verify.d.ts +9 -12
- package/dist/core/templates/fragments/verify.d.ts.map +1 -1
- package/dist/core/templates/fragments/verify.js +9 -12
- package/dist/core/templates/fragments/verify.js.map +1 -1
- package/dist/core/templates/index.d.ts +0 -6
- package/dist/core/templates/index.d.ts.map +1 -1
- package/dist/core/templates/index.js +0 -7
- package/dist/core/templates/index.js.map +1 -1
- package/dist/core/templates/skill-templates.d.ts +1 -5
- package/dist/core/templates/skill-templates.d.ts.map +1 -1
- package/dist/core/templates/skill-templates.js +0 -5
- package/dist/core/templates/skill-templates.js.map +1 -1
- package/dist/core/templates/types.d.ts +3 -7
- package/dist/core/templates/types.d.ts.map +1 -1
- package/dist/core/templates/types.js +0 -3
- package/dist/core/templates/types.js.map +1 -1
- package/dist/core/templates/workflows/apply.d.ts +3 -9
- package/dist/core/templates/workflows/apply.d.ts.map +1 -1
- package/dist/core/templates/workflows/apply.js +9 -12
- package/dist/core/templates/workflows/apply.js.map +1 -1
- package/dist/core/templates/workflows/archive.d.ts +0 -6
- package/dist/core/templates/workflows/archive.d.ts.map +1 -1
- package/dist/core/templates/workflows/archive.js +7 -5
- package/dist/core/templates/workflows/archive.js.map +1 -1
- package/dist/core/templates/workflows/decision.js +4 -4
- package/dist/core/templates/workflows/decision.js.map +1 -1
- package/dist/core/templates/workflows/explore.js +1 -1
- package/dist/core/templates/workflows/grill.d.ts.map +1 -1
- package/dist/core/templates/workflows/grill.js +0 -2
- package/dist/core/templates/workflows/grill.js.map +1 -1
- package/dist/core/templates/workflows/issue.d.ts +0 -6
- package/dist/core/templates/workflows/issue.d.ts.map +1 -1
- package/dist/core/templates/workflows/issue.js +3 -0
- package/dist/core/templates/workflows/issue.js.map +1 -1
- package/dist/core/templates/workflows/propose.d.ts +0 -6
- package/dist/core/templates/workflows/propose.d.ts.map +1 -1
- package/dist/core/templates/workflows/propose.js +0 -1
- package/dist/core/templates/workflows/propose.js.map +1 -1
- package/dist/core/templates/workflows/sync.d.ts +2 -8
- package/dist/core/templates/workflows/sync.d.ts.map +1 -1
- package/dist/core/templates/workflows/sync.js +2 -2
- package/dist/core/templates/workflows/sync.js.map +1 -1
- package/dist/core/templates/workflows/update.d.ts +0 -6
- package/dist/core/templates/workflows/update.d.ts.map +1 -1
- package/dist/core/templates/workflows/update.js.map +1 -1
- package/dist/core/update.d.ts +26 -21
- package/dist/core/update.d.ts.map +1 -1
- package/dist/core/update.js +165 -116
- package/dist/core/update.js.map +1 -1
- package/dist/core/user-state-migration.d.ts +13 -15
- package/dist/core/user-state-migration.d.ts.map +1 -1
- package/dist/core/user-state-migration.js +16 -20
- package/dist/core/user-state-migration.js.map +1 -1
- package/dist/core/validation/constants.d.ts +19 -25
- package/dist/core/validation/constants.d.ts.map +1 -1
- package/dist/core/validation/constants.js +25 -20
- package/dist/core/validation/constants.js.map +1 -1
- package/dist/core/validation/prose-length.d.ts +15 -0
- package/dist/core/validation/prose-length.d.ts.map +1 -0
- package/dist/core/validation/prose-length.js +29 -0
- package/dist/core/validation/prose-length.js.map +1 -0
- package/dist/core/validation/purpose-placeholder.d.ts +9 -16
- package/dist/core/validation/purpose-placeholder.d.ts.map +1 -1
- package/dist/core/validation/purpose-placeholder.js +30 -44
- package/dist/core/validation/purpose-placeholder.js.map +1 -1
- package/dist/core/validation/section-validator.d.ts +4 -4
- package/dist/core/validation/section-validator.d.ts.map +1 -1
- package/dist/core/validation/section-validator.js +43 -7
- package/dist/core/validation/section-validator.js.map +1 -1
- package/dist/core/validation/task-numbering.d.ts +6 -3
- package/dist/core/validation/task-numbering.d.ts.map +1 -1
- package/dist/core/validation/task-numbering.js +23 -11
- package/dist/core/validation/task-numbering.js.map +1 -1
- package/dist/core/validation/types.d.ts +18 -0
- package/dist/core/validation/types.d.ts.map +1 -1
- package/dist/core/validation/types.js +12 -1
- package/dist/core/validation/types.js.map +1 -1
- package/dist/core/validation/validator.d.ts +50 -51
- package/dist/core/validation/validator.d.ts.map +1 -1
- package/dist/core/validation/validator.js +486 -263
- package/dist/core/validation/validator.js.map +1 -1
- package/dist/prompts/searchable-multi-select.d.ts +3 -8
- package/dist/prompts/searchable-multi-select.d.ts.map +1 -1
- package/dist/prompts/searchable-multi-select.js +16 -39
- package/dist/prompts/searchable-multi-select.js.map +1 -1
- package/dist/utils/change-metadata.d.ts +11 -50
- package/dist/utils/change-metadata.d.ts.map +1 -1
- package/dist/utils/change-metadata.js +48 -67
- package/dist/utils/change-metadata.js.map +1 -1
- package/dist/utils/change-utils.d.ts +31 -54
- package/dist/utils/change-utils.d.ts.map +1 -1
- package/dist/utils/change-utils.js +143 -100
- package/dist/utils/change-utils.js.map +1 -1
- package/dist/utils/file-lock.d.ts +39 -0
- package/dist/utils/file-lock.d.ts.map +1 -0
- package/dist/utils/file-lock.js +149 -0
- package/dist/utils/file-lock.js.map +1 -0
- package/dist/utils/file-system.d.ts +12 -32
- package/dist/utils/file-system.d.ts.map +1 -1
- package/dist/utils/file-system.js +16 -40
- package/dist/utils/file-system.js.map +1 -1
- package/dist/utils/frontmatter.d.ts +7 -11
- package/dist/utils/frontmatter.d.ts.map +1 -1
- package/dist/utils/frontmatter.js +11 -11
- package/dist/utils/frontmatter.js.map +1 -1
- package/dist/utils/interactive.d.ts +4 -9
- package/dist/utils/interactive.d.ts.map +1 -1
- package/dist/utils/interactive.js +2 -4
- package/dist/utils/interactive.js.map +1 -1
- package/dist/utils/item-discovery.d.ts +15 -10
- package/dist/utils/item-discovery.d.ts.map +1 -1
- package/dist/utils/item-discovery.js +42 -47
- package/dist/utils/item-discovery.js.map +1 -1
- package/dist/utils/link.d.ts +13 -4
- package/dist/utils/link.d.ts.map +1 -1
- package/dist/utils/link.js +13 -4
- package/dist/utils/link.js.map +1 -1
- package/dist/utils/match.js.map +1 -1
- package/dist/utils/requirement-diff.d.ts +13 -23
- package/dist/utils/requirement-diff.d.ts.map +1 -1
- package/dist/utils/requirement-diff.js +13 -23
- package/dist/utils/requirement-diff.js.map +1 -1
- package/dist/utils/spec-files.d.ts +10 -11
- package/dist/utils/spec-files.d.ts.map +1 -1
- package/dist/utils/spec-files.js +31 -22
- package/dist/utils/spec-files.js.map +1 -1
- package/dist/utils/task-progress.d.ts +11 -9
- package/dist/utils/task-progress.d.ts.map +1 -1
- package/dist/utils/task-progress.js +53 -32
- package/dist/utils/task-progress.js.map +1 -1
- package/dist/utils/timestamp.d.ts +5 -8
- package/dist/utils/timestamp.d.ts.map +1 -1
- package/dist/utils/timestamp.js +5 -8
- package/dist/utils/timestamp.js.map +1 -1
- package/package.json +9 -10
- package/schemas/decision/templates/decision.md +3 -1
- package/schemas/decision/templates/index.md +2 -2
- package/schemas/issue/schema.yaml +11 -2
- package/schemas/issue/templates/spec.md +37 -3
- package/schemas/sdd/schema.yaml +24 -1
- package/schemas/sdd/templates/spec.md +37 -3
|
@@ -1,57 +1,84 @@
|
|
|
1
1
|
import * as fs from 'node:fs';
|
|
2
2
|
import * as path from 'node:path';
|
|
3
|
-
import { collectAllArtifactIds, fileStamp,
|
|
3
|
+
import { collectAllArtifactIds, fileStamp, getSchemaDirWithSource, resolveSchema, } from './resolver.js';
|
|
4
4
|
import { ArtifactGraph } from './graph.js';
|
|
5
5
|
import { detectCompleted } from './state.js';
|
|
6
6
|
import { resolveArtifactOutputs } from './outputs.js';
|
|
7
|
-
import {
|
|
7
|
+
import { isStubArtifactFile } from './stub-detection.js';
|
|
8
|
+
import { METADATA_FILENAME, readChangeMetadata, readSkipSpecsMarker, resolveSchemaForChange, } from '../../utils/change-metadata.js';
|
|
8
9
|
import { FileSystemUtils } from '../../utils/file-system.js';
|
|
10
|
+
import { stripBom } from '../parsers/requirement-text.js';
|
|
9
11
|
import { buildActionContext, buildNextSteps, summarizePlanningHome, } from '../change-status-policy.js';
|
|
10
|
-
import {
|
|
11
|
-
|
|
12
|
+
import { readProjectConfigWithDiagnostics, validateConfigRules, } from '../project-config.js';
|
|
13
|
+
/** Warnings already printed this session, so each is printed once. */
|
|
12
14
|
const shownWarnings = new Set();
|
|
13
|
-
/**
|
|
14
|
-
* Error thrown when loading a template fails.
|
|
15
|
-
*/
|
|
16
15
|
export class TemplateLoadError extends Error {
|
|
17
16
|
templatePath;
|
|
18
|
-
|
|
17
|
+
/**
|
|
18
|
+
* A full `CommandDiagnostic`, so the failure reaches `--json` with its `fix`.
|
|
19
|
+
* Without one it fell through to the generic `change_error` shape, which
|
|
20
|
+
* offers no next step.
|
|
21
|
+
*/
|
|
22
|
+
diagnostic;
|
|
23
|
+
constructor(message, templatePath, fix) {
|
|
19
24
|
super(message);
|
|
20
25
|
this.templatePath = templatePath;
|
|
21
26
|
this.name = 'TemplateLoadError';
|
|
27
|
+
this.diagnostic = {
|
|
28
|
+
severity: 'error',
|
|
29
|
+
// The same code `tospec templates` warns with; the severity differs
|
|
30
|
+
// because there the caller still got what it asked for.
|
|
31
|
+
code: 'template_file_missing',
|
|
32
|
+
message,
|
|
33
|
+
target: templatePath,
|
|
34
|
+
...(fix ? { fix } : {}),
|
|
35
|
+
};
|
|
22
36
|
}
|
|
23
37
|
}
|
|
24
38
|
/** Template file contents keyed by path, invalidated on stamp change. */
|
|
25
39
|
const templateCache = new Map();
|
|
26
40
|
/**
|
|
27
|
-
*
|
|
41
|
+
* What to do about a template file the winning schema layer does not have.
|
|
28
42
|
*
|
|
29
|
-
*
|
|
30
|
-
*
|
|
31
|
-
*
|
|
32
|
-
|
|
33
|
-
|
|
43
|
+
* An override layer is taken whole — there is no per-file fallback to the
|
|
44
|
+
* packaged templates — so overriding one template breaks every artifact whose
|
|
45
|
+
* template was not copied along with it. That is the resolution rule, not a bug.
|
|
46
|
+
*/
|
|
47
|
+
function templateMissingFix(schemaName, source) {
|
|
48
|
+
if (source === 'package') {
|
|
49
|
+
return `Schema '${schemaName}' names a template file that its package directory does not have; reinstall tospec, or fix the artifact's template: value in schema.yaml.`;
|
|
50
|
+
}
|
|
51
|
+
const layer = source === 'project' ? 'project-level' : 'user-level';
|
|
52
|
+
return `This path is inside the ${layer} '${schemaName}' override, which replaces the packaged schema directory whole — templates are not resolved per file. Copy the packaged schema's templates/ file in beside your own, or remove the override to fall back to the packaged schema. Run 'tospec templates --schema ${schemaName}' to see every file the override still has to supply.`;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* A template from a schema's `templates/` directory, e.g. "proposal.md".
|
|
56
|
+
*
|
|
57
|
+
* @throws TemplateLoadError when the schema or the template cannot be read.
|
|
34
58
|
*/
|
|
35
59
|
export function loadTemplate(schemaName, templatePath, projectRoot) {
|
|
36
|
-
const
|
|
37
|
-
if (!
|
|
60
|
+
const resolved = getSchemaDirWithSource(schemaName, projectRoot);
|
|
61
|
+
if (!resolved) {
|
|
38
62
|
throw new TemplateLoadError(`Schema '${schemaName}' not found`, templatePath);
|
|
39
63
|
}
|
|
64
|
+
const { dir: schemaDir, source } = resolved;
|
|
40
65
|
const templatePathOnDisk = path.join(schemaDir, 'templates', templatePath);
|
|
41
66
|
if (!fs.existsSync(templatePathOnDisk)) {
|
|
42
|
-
throw new TemplateLoadError(`Template not found: ${templatePathOnDisk}`, templatePathOnDisk);
|
|
67
|
+
throw new TemplateLoadError(`Template not found: ${templatePathOnDisk}`, templatePathOnDisk, templateMissingFix(schemaName, source));
|
|
43
68
|
}
|
|
44
69
|
const fullPath = FileSystemUtils.canonicalizeExistingPath(templatePathOnDisk);
|
|
45
|
-
//
|
|
46
|
-
//
|
|
47
|
-
// run. Strings are immutable, so the cached value can be handed out as-is.
|
|
70
|
+
// Stub detection asks for a template once per artifact per change, so the same
|
|
71
|
+
// few files were re-read N times a run.
|
|
48
72
|
const stamp = fileStamp(fullPath);
|
|
49
73
|
const cached = stamp === null ? undefined : templateCache.get(fullPath);
|
|
50
74
|
if (cached && cached.stamp === stamp) {
|
|
51
75
|
return cached.content;
|
|
52
76
|
}
|
|
53
77
|
try {
|
|
54
|
-
|
|
78
|
+
// BOM-free on read, so stub detection compares like with like: it strips
|
|
79
|
+
// the artifact's BOM but took the template as-is, and a project override
|
|
80
|
+
// saved from a Windows editor made every verbatim copy look edited.
|
|
81
|
+
const content = stripBom(fs.readFileSync(fullPath, 'utf-8'));
|
|
55
82
|
if (stamp !== null) {
|
|
56
83
|
templateCache.set(fullPath, { stamp, content });
|
|
57
84
|
}
|
|
@@ -63,38 +90,56 @@ export function loadTemplate(schemaName, templatePath, projectRoot) {
|
|
|
63
90
|
}
|
|
64
91
|
}
|
|
65
92
|
/**
|
|
66
|
-
*
|
|
67
|
-
*
|
|
68
|
-
* Schema resolution order:
|
|
69
|
-
* 1. Explicit schemaName parameter (if provided)
|
|
70
|
-
* 2. Schema from .tospec.yaml metadata (if exists in change directory)
|
|
71
|
-
* 3. Default 'sdd'
|
|
93
|
+
* The graph plus the completion state derived from files on disk.
|
|
72
94
|
*
|
|
73
|
-
*
|
|
74
|
-
*
|
|
75
|
-
* @param schemaName - Optional schema name override. If not provided, auto-detected from metadata.
|
|
76
|
-
* @returns Change context with graph, completed set, and metadata
|
|
95
|
+
* The schema is the explicit `schemaName`, else the one `.tospec.yaml` records,
|
|
96
|
+
* else `sdd`.
|
|
77
97
|
*/
|
|
78
98
|
export function loadChangeContext(projectRoot, changeName, schemaName, options = {}) {
|
|
79
99
|
const changeDir = FileSystemUtils.canonicalizeExistingPath(options.changeDir ?? path.join(projectRoot, 'tospec', 'changes', changeName));
|
|
80
|
-
|
|
100
|
+
// Read independently of readChangeMetadata below, which throws: this one
|
|
101
|
+
// reports a malformed value via invalidReason, so it stays available even
|
|
102
|
+
// when the full parse fails on that same field.
|
|
103
|
+
const skipSpecsMarker = readSkipSpecsMarker(changeDir);
|
|
104
|
+
let metadata;
|
|
105
|
+
try {
|
|
106
|
+
metadata = readChangeMetadata(changeDir, projectRoot) ?? undefined;
|
|
107
|
+
}
|
|
108
|
+
catch (error) {
|
|
109
|
+
// readChangeMetadata validates the document as a unit, so an invalid
|
|
110
|
+
// skip_specs fails every unrelated field with it. Recover only when
|
|
111
|
+
// skipSpecsMarker confirms skip_specs is at fault; any other cause still
|
|
112
|
+
// throws, since the rest of the metadata is then unknown.
|
|
113
|
+
if (!skipSpecsMarker.invalidReason)
|
|
114
|
+
throw error;
|
|
115
|
+
metadata = undefined;
|
|
116
|
+
}
|
|
81
117
|
const resolvedSchemaName = resolveSchemaForChange(changeDir, schemaName, projectRoot, {
|
|
82
118
|
metadata: metadata ?? null,
|
|
83
119
|
});
|
|
84
120
|
const schema = resolveSchema(resolvedSchemaName, projectRoot);
|
|
85
121
|
const graph = ArtifactGraph.fromSchema(schema);
|
|
86
122
|
const completed = detectCompleted(graph, changeDir);
|
|
87
|
-
// A stub
|
|
88
|
-
//
|
|
123
|
+
// A stub must not count as done, or it optimistically unlocks downstream
|
|
124
|
+
// artifacts.
|
|
89
125
|
const stubs = detectStubs(graph, changeDir, resolvedSchemaName, projectRoot);
|
|
90
126
|
for (const id of stubs) {
|
|
91
127
|
completed.delete(id);
|
|
92
128
|
}
|
|
129
|
+
// skip_specs is the per-change escape hatch from a schema's default `specs`
|
|
130
|
+
// requirement, scoped to that id by convention — matching the same marker's
|
|
131
|
+
// readers in validate.ts and archive.ts.
|
|
132
|
+
const skippedArtifacts = new Set();
|
|
133
|
+
if (skipSpecsMarker.declared && graph.getArtifact('specs')) {
|
|
134
|
+
skippedArtifacts.add('specs');
|
|
135
|
+
}
|
|
93
136
|
return {
|
|
94
137
|
graph,
|
|
95
138
|
completed,
|
|
96
139
|
stubs,
|
|
97
140
|
schemaName: resolvedSchemaName,
|
|
141
|
+
skippedArtifacts,
|
|
142
|
+
...(skipSpecsMarker.invalidReason ? { skipSpecsInvalidReason: skipSpecsMarker.invalidReason } : {}),
|
|
98
143
|
changeName,
|
|
99
144
|
changeDir,
|
|
100
145
|
projectRoot,
|
|
@@ -103,11 +148,9 @@ export function loadChangeContext(projectRoot, changeName, schemaName, options =
|
|
|
103
148
|
};
|
|
104
149
|
}
|
|
105
150
|
/**
|
|
106
|
-
*
|
|
107
|
-
*
|
|
108
|
-
*
|
|
109
|
-
* ponytail: cheap checks only (empty + template compare); deep "required
|
|
110
|
-
* sections all empty" analysis is validate's job, not status's.
|
|
151
|
+
* Artifacts whose every resolved output is empty or byte-identical to the
|
|
152
|
+
* template, because file existence alone must not mean done. Cheap checks only;
|
|
153
|
+
* "required sections all empty" analysis is validate's job, not status's.
|
|
111
154
|
*/
|
|
112
155
|
function detectStubs(graph, changeDir, schemaName, projectRoot) {
|
|
113
156
|
const stubs = new Set();
|
|
@@ -115,32 +158,16 @@ function detectStubs(graph, changeDir, schemaName, projectRoot) {
|
|
|
115
158
|
const outputs = resolveArtifactOutputs(changeDir, artifact.generates);
|
|
116
159
|
if (outputs.length === 0)
|
|
117
160
|
continue;
|
|
118
|
-
//
|
|
119
|
-
//
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
template = loadTemplate(schemaName, artifact.template, projectRoot);
|
|
123
|
-
}
|
|
124
|
-
catch {
|
|
125
|
-
template = null;
|
|
126
|
-
}
|
|
127
|
-
const allStubs = outputs.every((file) => {
|
|
128
|
-
let content;
|
|
129
|
-
try {
|
|
130
|
-
content = fs.readFileSync(file, 'utf-8');
|
|
131
|
-
}
|
|
132
|
-
catch {
|
|
133
|
-
return false;
|
|
134
|
-
}
|
|
135
|
-
if (content.trim().length === 0)
|
|
136
|
-
return true;
|
|
137
|
-
return template !== null && content === template;
|
|
138
|
-
});
|
|
161
|
+
// Shared with validate so the two cannot disagree about what a stub is. The
|
|
162
|
+
// template resolves through the project/user/package chain, so the compare
|
|
163
|
+
// uses the template the file actually came from.
|
|
164
|
+
const allStubs = outputs.every((file) => isStubArtifactFile(file, schemaName, artifact.template, projectRoot));
|
|
139
165
|
if (allStubs)
|
|
140
166
|
stubs.add(artifact.id);
|
|
141
167
|
}
|
|
142
168
|
return stubs;
|
|
143
169
|
}
|
|
170
|
+
/** @throws Error when the schema has no artifact with that id. */
|
|
144
171
|
export function generateInstructions(context, artifactId, projectRoot, options = {}) {
|
|
145
172
|
const artifact = context.graph.getArtifact(artifactId);
|
|
146
173
|
if (!artifact) {
|
|
@@ -149,34 +176,52 @@ export function generateInstructions(context, artifactId, projectRoot, options =
|
|
|
149
176
|
const templateContent = loadTemplate(context.schemaName, artifact.template, context.projectRoot);
|
|
150
177
|
const dependencies = getDependencyInfo(artifact, context.graph, context.completed);
|
|
151
178
|
const unlocks = getUnlockedArtifacts(context.graph, artifactId);
|
|
152
|
-
// Use projectRoot from context if not explicitly provided
|
|
153
179
|
const effectiveProjectRoot = projectRoot ?? context.projectRoot;
|
|
154
|
-
// Use the pre-read config when provided; otherwise read it here.
|
|
155
180
|
let projectConfig = options.projectConfig ?? null;
|
|
181
|
+
let configDiagnostics = options.configDiagnostics ?? [];
|
|
156
182
|
if (options.projectConfig === undefined && effectiveProjectRoot) {
|
|
157
183
|
try {
|
|
158
|
-
|
|
184
|
+
const result = readProjectConfigWithDiagnostics(effectiveProjectRoot);
|
|
185
|
+
projectConfig = result.config;
|
|
186
|
+
configDiagnostics = result.diagnostics;
|
|
159
187
|
}
|
|
160
188
|
catch {
|
|
161
|
-
//
|
|
189
|
+
// An unreadable config is not fatal: continue without one.
|
|
162
190
|
}
|
|
163
191
|
}
|
|
164
|
-
//
|
|
165
|
-
//
|
|
166
|
-
//
|
|
167
|
-
//
|
|
168
|
-
// the
|
|
192
|
+
// Rules keys are checked against every schema's artifacts, not just this
|
|
193
|
+
// change's: `rules` is one global map, so a key naming another schema's
|
|
194
|
+
// artifact is correct config, not a typo.
|
|
195
|
+
//
|
|
196
|
+
// Carried on the payload as well as printed: stderr alone left a broken
|
|
197
|
+
// `rules:` key invisible to an agent parsing `--json`. The reader's own
|
|
198
|
+
// diagnostics come first — they explain the payload more than a rules typo
|
|
199
|
+
// does, and status[0] is what a terse caller reports.
|
|
200
|
+
const configWarnings = [...configDiagnostics];
|
|
169
201
|
if (projectConfig?.rules) {
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
202
|
+
configWarnings.push(...validateConfigRules(projectConfig.rules, collectAllArtifactIds(effectiveProjectRoot ?? undefined)).map((message) => ({ code: 'config_rules_unknown_artifact', message })));
|
|
203
|
+
}
|
|
204
|
+
// Printed once per session, but carried on the payload every call: a caller
|
|
205
|
+
// reading one document must not depend on what an earlier call did.
|
|
206
|
+
for (const warning of configWarnings) {
|
|
207
|
+
if (!shownWarnings.has(warning.message)) {
|
|
208
|
+
console.warn(warning.message);
|
|
209
|
+
shownWarnings.add(warning.message);
|
|
177
210
|
}
|
|
178
211
|
}
|
|
179
|
-
//
|
|
212
|
+
// Omitted rather than emitted empty when the schema declares nothing: an empty
|
|
213
|
+
// criteria block reads as "this artifact has none", a stronger claim.
|
|
214
|
+
const declared = artifact.validation;
|
|
215
|
+
const validation = declared &&
|
|
216
|
+
(declared.requiredSections.length > 0 ||
|
|
217
|
+
Object.keys(declared.minSectionLength).length > 0 ||
|
|
218
|
+
Object.keys(declared.maxSectionLength).length > 0)
|
|
219
|
+
? {
|
|
220
|
+
requiredSections: [...declared.requiredSections],
|
|
221
|
+
minSectionLength: { ...declared.minSectionLength },
|
|
222
|
+
maxSectionLength: { ...declared.maxSectionLength },
|
|
223
|
+
}
|
|
224
|
+
: undefined;
|
|
180
225
|
const configContext = projectConfig?.context?.trim() || undefined;
|
|
181
226
|
const rulesForArtifact = projectConfig?.rules?.[artifactId];
|
|
182
227
|
const configRules = rulesForArtifact && rulesForArtifact.length > 0 ? rulesForArtifact : undefined;
|
|
@@ -194,13 +239,13 @@ export function generateInstructions(context, artifactId, projectRoot, options =
|
|
|
194
239
|
context: configContext,
|
|
195
240
|
rules: configRules,
|
|
196
241
|
template: templateContent,
|
|
242
|
+
...(validation ? { validation } : {}),
|
|
197
243
|
dependencies,
|
|
198
244
|
unlocks,
|
|
245
|
+
changeMetadata: summarizeChangeMetadata(context.metadata),
|
|
246
|
+
...(configWarnings.length ? { configWarnings } : {}),
|
|
199
247
|
};
|
|
200
248
|
}
|
|
201
|
-
/**
|
|
202
|
-
* Gets dependency info including paths and descriptions.
|
|
203
|
-
*/
|
|
204
249
|
function getDependencyInfo(artifact, graph, completed) {
|
|
205
250
|
return artifact.requires.map(id => {
|
|
206
251
|
const depArtifact = graph.getArtifact(id);
|
|
@@ -213,30 +258,43 @@ function getDependencyInfo(artifact, graph, completed) {
|
|
|
213
258
|
});
|
|
214
259
|
}
|
|
215
260
|
/**
|
|
216
|
-
*
|
|
261
|
+
* Artifacts that become available once `artifactId` is written, in build order.
|
|
262
|
+
*
|
|
263
|
+
* Not the alphabet: `status` lists artifacts in build order (declaration order
|
|
264
|
+
* breaks ties, see commit a3a3c57), so an alphabetical `unlocks` had the same
|
|
265
|
+
* CLI giving two orders for one schema — `instructions proposal` said
|
|
266
|
+
* design-then-specs while `status` said specs-then-design.
|
|
217
267
|
*/
|
|
218
268
|
function getUnlockedArtifacts(graph, artifactId) {
|
|
219
|
-
const
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
return unlocks.sort();
|
|
269
|
+
const orderMap = new Map(graph.getBuildOrder().map((id, idx) => [id, idx]));
|
|
270
|
+
return graph
|
|
271
|
+
.getAllArtifacts()
|
|
272
|
+
.filter((artifact) => artifact.requires.includes(artifactId))
|
|
273
|
+
.map((artifact) => artifact.id)
|
|
274
|
+
.sort((a, b) => (orderMap.get(a) ?? 0) - (orderMap.get(b) ?? 0));
|
|
226
275
|
}
|
|
227
276
|
/**
|
|
228
|
-
*
|
|
229
|
-
*
|
|
230
|
-
*
|
|
231
|
-
* @returns Formatted change status
|
|
277
|
+
* `skipped` is checked before `optional`: a change that declared the artifact
|
|
278
|
+
* away has said something stronger than the schema's "you may omit this", and
|
|
279
|
+
* collapsing the two hides which artifacts could still be written.
|
|
232
280
|
*/
|
|
281
|
+
function deriveArtifactStatus(artifact, context, ready) {
|
|
282
|
+
if (context.completed.has(artifact.id))
|
|
283
|
+
return 'done';
|
|
284
|
+
if (context.stubs?.has(artifact.id))
|
|
285
|
+
return 'stub';
|
|
286
|
+
if (context.skippedArtifacts?.has(artifact.id))
|
|
287
|
+
return 'skipped';
|
|
288
|
+
if (artifact.optional)
|
|
289
|
+
return 'optional';
|
|
290
|
+
return ready.has(artifact.id) ? 'ready' : 'blocked';
|
|
291
|
+
}
|
|
233
292
|
export function formatChangeStatus(context) {
|
|
234
|
-
// Load schema to get apply phase configuration
|
|
235
293
|
const schema = resolveSchema(context.schemaName, context.projectRoot);
|
|
236
294
|
const applyRequires = schema.apply?.requires ?? schema.artifacts.map(a => a.id);
|
|
237
295
|
const artifacts = context.graph.getAllArtifacts();
|
|
238
|
-
const ready = new Set(context.graph.getNextArtifacts(context.completed));
|
|
239
|
-
const blocked = context.graph.getBlocked(context.completed);
|
|
296
|
+
const ready = new Set(context.graph.getNextArtifacts(context.completed, context.skippedArtifacts));
|
|
297
|
+
const blocked = context.graph.getBlocked(context.completed, context.skippedArtifacts);
|
|
240
298
|
const artifactPaths = {};
|
|
241
299
|
const artifactStatuses = artifacts.map(artifact => {
|
|
242
300
|
artifactPaths[artifact.id] = {
|
|
@@ -244,33 +302,30 @@ export function formatChangeStatus(context) {
|
|
|
244
302
|
resolvedOutputPath: path.join(context.changeDir, artifact.generates),
|
|
245
303
|
existingOutputPaths: resolveArtifactOutputs(context.changeDir, artifact.generates),
|
|
246
304
|
};
|
|
247
|
-
|
|
248
|
-
// field to ArtifactStatus used to mean editing five near-identical literals.
|
|
249
|
-
const status = context.completed.has(artifact.id)
|
|
250
|
-
? 'done'
|
|
251
|
-
: context.stubs?.has(artifact.id)
|
|
252
|
-
? 'stub'
|
|
253
|
-
: artifact.optional
|
|
254
|
-
? 'skipped'
|
|
255
|
-
: ready.has(artifact.id)
|
|
256
|
-
? 'ready'
|
|
257
|
-
: 'blocked';
|
|
305
|
+
const status = deriveArtifactStatus(artifact, context, ready);
|
|
258
306
|
return {
|
|
259
307
|
id: artifact.id,
|
|
260
308
|
outputPath: artifact.generates,
|
|
261
309
|
status,
|
|
262
310
|
optional: artifact.optional,
|
|
263
|
-
//
|
|
264
|
-
// only carries missingDeps on a blocked artifact.
|
|
311
|
+
// The JSON contract carries missingDeps only on a blocked artifact.
|
|
265
312
|
...(status === 'blocked' ? { missingDeps: blocked[artifact.id] ?? [] } : {}),
|
|
266
313
|
};
|
|
267
314
|
});
|
|
268
|
-
// Sort by build order for consistent output
|
|
269
315
|
const buildOrder = context.graph.getBuildOrder();
|
|
270
316
|
const orderMap = new Map(buildOrder.map((id, idx) => [id, idx]));
|
|
271
317
|
artifactStatuses.sort((a, b) => (orderMap.get(a.id) ?? 0) - (orderMap.get(b.id) ?? 0));
|
|
272
|
-
const isComplete = context.graph.isComplete(context.completed);
|
|
318
|
+
const isComplete = context.graph.isComplete(context.completed, context.skippedArtifacts);
|
|
273
319
|
const artifactIds = artifactStatuses.map((artifact) => artifact.id);
|
|
320
|
+
const statusDiagnostics = [];
|
|
321
|
+
if (context.skipSpecsInvalidReason) {
|
|
322
|
+
statusDiagnostics.push({
|
|
323
|
+
severity: 'warning',
|
|
324
|
+
code: 'skip_specs_invalid',
|
|
325
|
+
message: `Invalid ${METADATA_FILENAME}: ${context.skipSpecsInvalidReason}`,
|
|
326
|
+
fix: 'Set skip_specs to true or false, or remove the key.',
|
|
327
|
+
});
|
|
328
|
+
}
|
|
274
329
|
return {
|
|
275
330
|
changeName: context.changeName,
|
|
276
331
|
schemaName: context.schemaName,
|
|
@@ -289,6 +344,17 @@ export function formatChangeStatus(context) {
|
|
|
289
344
|
artifactIds,
|
|
290
345
|
}),
|
|
291
346
|
artifacts: artifactStatuses,
|
|
347
|
+
changeMetadata: summarizeChangeMetadata(context.metadata),
|
|
348
|
+
...(statusDiagnostics.length ? { status: statusDiagnostics } : {}),
|
|
349
|
+
};
|
|
350
|
+
}
|
|
351
|
+
/** The recorded intent, reduced to the fields an agent needs to honour it. */
|
|
352
|
+
export function summarizeChangeMetadata(metadata) {
|
|
353
|
+
return {
|
|
354
|
+
...(metadata?.goal ? { goal: metadata.goal } : {}),
|
|
355
|
+
...(metadata?.decisions && metadata.decisions.length > 0
|
|
356
|
+
? { decisions: [...metadata.decisions] }
|
|
357
|
+
: {}),
|
|
292
358
|
};
|
|
293
359
|
}
|
|
294
360
|
//# sourceMappingURL=instruction-loader.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instruction-loader.js","sourceRoot":"","sources":["../../../src/core/artifact-graph/instruction-loader.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"instruction-loader.js","sourceRoot":"","sources":["../../../src/core/artifact-graph/instruction-loader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EACL,qBAAqB,EACrB,SAAS,EACT,sBAAsB,EACtB,aAAa,GACd,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAC1D,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,qBAAqB,GAItB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,gCAAgC,EAChC,mBAAmB,GAGpB,MAAM,sBAAsB,CAAC;AAM9B,sEAAsE;AACtE,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAC;AAExC,MAAM,OAAO,iBAAkB,SAAQ,KAAK;IAUxB,YAAY;IAT9B;;;;OAIG;IACM,UAAU,CAAoB;IAEvC,YACE,OAAe,EACC,YAAoB,EACpC,GAAY;QAEZ,KAAK,CAAC,OAAO,CAAC,CAAC;4BAHC,YAAY;QAI5B,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;QAChC,IAAI,CAAC,UAAU,GAAG;YAChB,QAAQ,EAAE,OAAO;YACjB,oEAAoE;YACpE,wDAAwD;YACxD,IAAI,EAAE,uBAAuB;YAC7B,OAAO;YACP,MAAM,EAAE,YAAY;YACpB,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACxB,CAAC;IACJ,CAAC;CACF;AA4JD,yEAAyE;AACzE,MAAM,aAAa,GAAG,IAAI,GAAG,EAA8C,CAAC;AAE5E;;;;;;GAMG;AACH,SAAS,kBAAkB,CAAC,UAAkB,EAAE,MAAsC;IACpF,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO,WAAW,UAAU,2IAA2I,CAAC;IAC1K,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,YAAY,CAAC;IACpE,OAAO,2BAA2B,KAAK,KAAK,UAAU,mQAAmQ,UAAU,uDAAuD,CAAC;AAC7X,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAC1B,UAAkB,EAClB,YAAoB,EACpB,WAAoB;IAEpB,MAAM,QAAQ,GAAG,sBAAsB,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IACjE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,iBAAiB,CACzB,WAAW,UAAU,aAAa,EAClC,YAAY,CACb,CAAC;IACJ,CAAC;IACD,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAC;IAE5C,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAE3E,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,kBAAkB,CAAC,EAAE,CAAC;QACvC,MAAM,IAAI,iBAAiB,CACzB,uBAAuB,kBAAkB,EAAE,EAC3C,kBAAkB,EAClB,kBAAkB,CAAC,UAAU,EAAE,MAAM,CAAC,CACvC,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,eAAe,CAAC,wBAAwB,CAAC,kBAAkB,CAAC,CAAC;IAE9E,+EAA+E;IAC/E,wCAAwC;IACxC,MAAM,KAAK,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;IAClC,MAAM,MAAM,GAAG,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACxE,IAAI,MAAM,IAAI,MAAM,CAAC,KAAK,KAAK,KAAK,EAAE,CAAC;QACrC,OAAO,MAAM,CAAC,OAAO,CAAC;IACxB,CAAC;IAED,IAAI,CAAC;QACH,yEAAyE;QACzE,yEAAyE;QACzE,oEAAoE;QACpE,MAAM,OAAO,GAAG,QAAQ,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;QAC7D,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACnB,aAAa,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;QAClD,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QACpE,MAAM,IAAI,iBAAiB,CACzB,4BAA4B,OAAO,CAAC,OAAO,EAAE,EAC7C,QAAQ,CACT,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAC/B,WAAmB,EACnB,UAAkB,EAClB,UAAmB,EACnB,OAAO,GAA6B,EAAE;IAEtC,MAAM,SAAS,GAAG,eAAe,CAAC,wBAAwB,CACxD,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,CAAC,CAC7E,CAAC;IAEF,yEAAyE;IACzE,0EAA0E;IAC1E,gDAAgD;IAChD,MAAM,eAAe,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAC;IAEvD,IAAI,QAAoC,CAAC;IACzC,IAAI,CAAC;QACH,QAAQ,GAAG,kBAAkB,CAAC,SAAS,EAAE,WAAW,CAAC,IAAI,SAAS,CAAC;IACrE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,qEAAqE;QACrE,oEAAoE;QACpE,yEAAyE;QACzE,0DAA0D;QAC1D,IAAI,CAAC,eAAe,CAAC,aAAa;YAAE,MAAM,KAAK,CAAC;QAChD,QAAQ,GAAG,SAAS,CAAC;IACvB,CAAC;IAED,MAAM,kBAAkB,GAAG,sBAAsB,CAAC,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE;QACpF,QAAQ,EAAE,QAAQ,IAAI,IAAI;KAC3B,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,aAAa,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAC;IAC9D,MAAM,KAAK,GAAG,aAAa,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IAC/C,MAAM,SAAS,GAAG,eAAe,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IAEpD,yEAAyE;IACzE,aAAa;IACb,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,EAAE,SAAS,EAAE,kBAAkB,EAAE,WAAW,CAAC,CAAC;IAC7E,KAAK,MAAM,EAAE,IAAI,KAAK,EAAE,CAAC;QACvB,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACvB,CAAC;IAED,4EAA4E;IAC5E,4EAA4E;IAC5E,yCAAyC;IACzC,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAU,CAAC;IAC3C,IAAI,eAAe,CAAC,QAAQ,IAAI,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3D,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAChC,CAAC;IAED,OAAO;QACL,KAAK;QACL,SAAS;QACT,KAAK;QACL,UAAU,EAAE,kBAAkB;QAC9B,gBAAgB;QAChB,GAAG,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,sBAAsB,EAAE,eAAe,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnG,UAAU;QACV,SAAS;QACT,WAAW;QACX,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAClC,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAS,WAAW,CAClB,KAAoB,EACpB,SAAiB,EACjB,UAAkB,EAClB,WAAmB;IAEnB,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,eAAe,EAAE,EAAE,CAAC;QAC/C,MAAM,OAAO,GAAG,sBAAsB,CAAC,SAAS,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;QACtE,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QAEnC,4EAA4E;QAC5E,2EAA2E;QAC3E,iDAAiD;QACjD,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CACtC,kBAAkB,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,CACrE,CAAC;QACF,IAAI,QAAQ;YAAE,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACvC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAYD,kEAAkE;AAClE,MAAM,UAAU,oBAAoB,CAClC,OAAsB,EACtB,UAAkB,EAClB,WAAoB,EACpB,OAAO,GAAgC,EAAE;IAEzC,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IACvD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,aAAa,UAAU,0BAA0B,OAAO,CAAC,UAAU,GAAG,CAAC,CAAC;IAC1F,CAAC;IAED,MAAM,eAAe,GAAG,YAAY,CAAC,OAAO,CAAC,UAAU,EAAE,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IACjG,MAAM,YAAY,GAAG,iBAAiB,CAAC,QAAQ,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IACnF,MAAM,OAAO,GAAG,oBAAoB,CAAC,OAAO,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IAEhE,MAAM,oBAAoB,GAAG,WAAW,IAAI,OAAO,CAAC,WAAW,CAAC;IAEhE,IAAI,aAAa,GAAG,OAAO,CAAC,aAAa,IAAI,IAAI,CAAC;IAClD,IAAI,iBAAiB,GAA8B,OAAO,CAAC,iBAAiB,IAAI,EAAE,CAAC;IACnF,IAAI,OAAO,CAAC,aAAa,KAAK,SAAS,IAAI,oBAAoB,EAAE,CAAC;QAChE,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,gCAAgC,CAAC,oBAAoB,CAAC,CAAC;YACtE,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC;YAC9B,iBAAiB,GAAG,MAAM,CAAC,WAAW,CAAC;QACzC,CAAC;QAAC,MAAM,CAAC;YACP,2DAA2D;QAC7D,CAAC;IACH,CAAC;IAED,yEAAyE;IACzE,wEAAwE;IACxE,0CAA0C;IAC1C,EAAE;IACF,wEAAwE;IACxE,wEAAwE;IACxE,2EAA2E;IAC3E,sDAAsD;IACtD,MAAM,cAAc,GAA8B,CAAC,GAAG,iBAAiB,CAAC,CAAC;IACzE,IAAI,aAAa,EAAE,KAAK,EAAE,CAAC;QACzB,cAAc,CAAC,IAAI,CACjB,GAAG,mBAAmB,CACpB,aAAa,CAAC,KAAK,EACnB,qBAAqB,CAAC,oBAAoB,IAAI,SAAS,CAAC,CACzD,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,+BAA+B,EAAE,OAAO,EAAE,CAAC,CAAC,CACzE,CAAC;IACJ,CAAC;IAED,4EAA4E;IAC5E,oEAAoE;IACpE,KAAK,MAAM,OAAO,IAAI,cAAc,EAAE,CAAC;QACrC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACxC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAC9B,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;IAED,+EAA+E;IAC/E,sEAAsE;IACtE,MAAM,QAAQ,GAAG,QAAQ,CAAC,UAAU,CAAC;IACrC,MAAM,UAAU,GACd,QAAQ;QACR,CAAC,QAAQ,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC;YACnC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,MAAM,GAAG,CAAC;YACjD,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QAClD,CAAC,CAAC;YACE,gBAAgB,EAAE,CAAC,GAAG,QAAQ,CAAC,gBAAgB,CAAC;YAChD,gBAAgB,EAAE,EAAE,GAAG,QAAQ,CAAC,gBAAgB,EAAE;YAClD,gBAAgB,EAAE,EAAE,GAAG,QAAQ,CAAC,gBAAgB,EAAE;SACnD;QACH,CAAC,CAAC,SAAS,CAAC;IAEhB,MAAM,aAAa,GAAG,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,SAAS,CAAC;IAClE,MAAM,gBAAgB,GAAG,aAAa,EAAE,KAAK,EAAE,CAAC,UAAU,CAAC,CAAC;IAC5D,MAAM,WAAW,GAAG,gBAAgB,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC;IAEnG,OAAO;QACL,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,UAAU,EAAE,QAAQ,CAAC,EAAE;QACvB,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,YAAY,EAAE,qBAAqB,CAAC,OAAO,CAAC,YAAY,CAAC;QACzD,UAAU,EAAE,QAAQ,CAAC,SAAS;QAC9B,kBAAkB,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,SAAS,CAAC;QACpE,mBAAmB,EAAE,sBAAsB,CAAC,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,SAAS,CAAC;QAClF,WAAW,EAAE,QAAQ,CAAC,WAAW;QACjC,WAAW,EAAE,QAAQ,CAAC,WAAW;QACjC,OAAO,EAAE,aAAa;QACtB,KAAK,EAAE,WAAW;QAClB,QAAQ,EAAE,eAAe;QACzB,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrC,YAAY;QACZ,OAAO;QACP,cAAc,EAAE,uBAAuB,CAAC,OAAO,CAAC,QAAQ,CAAC;QACzD,GAAG,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACrD,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CACxB,QAAkB,EAClB,KAAoB,EACpB,SAAuB;IAEvB,OAAO,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;QAChC,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAC1C,OAAO;YACL,EAAE;YACF,IAAI,EAAE,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;YACvB,IAAI,EAAE,WAAW,EAAE,SAAS,IAAI,EAAE;YAClC,WAAW,EAAE,WAAW,EAAE,WAAW,IAAI,EAAE;SAC5C,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,oBAAoB,CAAC,KAAoB,EAAE,UAAkB;IACpE,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;IAC5E,OAAO,KAAK;SACT,eAAe,EAAE;SACjB,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;SAC5D,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;SAC9B,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACrE,CAAC;AAED;;;;GAIG;AACH,SAAS,oBAAoB,CAC3B,QAAkB,EAClB,OAAsB,EACtB,KAA0B;IAE1B,IAAI,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QAAE,OAAO,MAAM,CAAC;IACtD,IAAI,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QAAE,OAAO,MAAM,CAAC;IACnD,IAAI,OAAO,CAAC,gBAAgB,EAAE,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QAAE,OAAO,SAAS,CAAC;IACjE,IAAI,QAAQ,CAAC,QAAQ;QAAE,OAAO,UAAU,CAAC;IACzC,OAAO,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,OAAsB;IAEtB,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IACtE,MAAM,aAAa,GAAG,MAAM,CAAC,KAAK,EAAE,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAEhF,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC;IAClD,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC;IACnG,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAEtF,MAAM,aAAa,GAAwC,EAAE,CAAC;IAC9D,MAAM,gBAAgB,GAAqB,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;QAClE,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG;YAC3B,UAAU,EAAE,QAAQ,CAAC,SAAS;YAC9B,kBAAkB,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,SAAS,CAAC;YACpE,mBAAmB,EAAE,sBAAsB,CAAC,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,SAAS,CAAC;SACnF,CAAC;QAEF,MAAM,MAAM,GAAG,oBAAoB,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;QAE9D,OAAO;YACL,EAAE,EAAE,QAAQ,CAAC,EAAE;YACf,UAAU,EAAE,QAAQ,CAAC,SAAS;YAC9B,MAAM;YACN,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,oEAAoE;YACpE,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC7E,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;IACjD,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;IACjE,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACvF,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACzF,MAAM,WAAW,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAEpE,MAAM,iBAAiB,GAAwB,EAAE,CAAC;IAClD,IAAI,OAAO,CAAC,sBAAsB,EAAE,CAAC;QACnC,iBAAiB,CAAC,IAAI,CAAC;YACrB,QAAQ,EAAE,SAAS;YACnB,IAAI,EAAE,oBAAoB;YAC1B,OAAO,EAAE,WAAW,iBAAiB,KAAK,OAAO,CAAC,sBAAsB,EAAE;YAC1E,GAAG,EAAE,qDAAqD;SAC3D,CAAC,CAAC;IACL,CAAC;IAED,OAAO;QACL,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,YAAY,EAAE,qBAAqB,CAAC,OAAO,CAAC,YAAY,CAAC;QACzD,UAAU,EAAE,OAAO,CAAC,SAAS;QAC7B,aAAa;QACb,UAAU;QACV,aAAa;QACb,SAAS,EAAE,cAAc,CAAC;YACxB,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,gBAAgB;YAChB,oBAAoB,EAAE,UAAU;SACjC,CAAC;QACF,aAAa,EAAE,kBAAkB,CAAC;YAChC,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,WAAW;SACZ,CAAC;QACF,SAAS,EAAE,gBAAgB;QAC3B,cAAc,EAAE,uBAAuB,CAAC,OAAO,CAAC,QAAQ,CAAC;QACzD,GAAG,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACnE,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,MAAM,UAAU,uBAAuB,CAAC,QAAyB;IAC/D,OAAO;QACL,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAClD,GAAG,CAAC,QAAQ,EAAE,SAAS,IAAI,QAAQ,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;YACtD,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,GAAG,QAAQ,CAAC,SAAS,CAAC,EAAE;YACxC,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;AACJ,CAAC"}
|
|
@@ -1,14 +1,21 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Checks if a path contains glob pattern characters.
|
|
3
|
-
*/
|
|
4
1
|
export declare function isGlobPattern(pattern: string): boolean;
|
|
5
2
|
/**
|
|
6
|
-
*
|
|
7
|
-
*
|
|
3
|
+
* Absolute paths of the files an artifact's `generates` currently resolves to.
|
|
4
|
+
* Sorted, for deterministic output.
|
|
8
5
|
*/
|
|
9
6
|
export declare function resolveArtifactOutputs(changeDir: string, generates: string): string[];
|
|
10
7
|
/**
|
|
11
|
-
*
|
|
8
|
+
* Async twin of {@link resolveArtifactOutputs}, for `collectChangeDetail`: a
|
|
9
|
+
* detail pane is fetched while the overview may still be aggregating, so it has
|
|
10
|
+
* something to interleave with.
|
|
11
|
+
*
|
|
12
|
+
* It does **not** serve the save-triggered overview, which reaches this module
|
|
13
|
+
* only through synchronous paths — see the measurement in dashboard-data.ts.
|
|
14
|
+
*
|
|
15
|
+
* The duplicated branch structure is held to the sync version by the parity
|
|
16
|
+
* cases in test/core/artifact-graph/outputs.test.ts. Any behaviour added to one
|
|
17
|
+
* belongs in that list.
|
|
12
18
|
*/
|
|
19
|
+
export declare function resolveArtifactOutputsAsync(changeDir: string, generates: string): Promise<string[]>;
|
|
13
20
|
export declare function artifactOutputExists(changeDir: string, generates: string): boolean;
|
|
14
21
|
//# sourceMappingURL=outputs.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"outputs.d.ts","sourceRoot":"","sources":["../../../src/core/artifact-graph/outputs.ts"],"names":[],"mappings":"AAKA
|
|
1
|
+
{"version":3,"file":"outputs.d.ts","sourceRoot":"","sources":["../../../src/core/artifact-graph/outputs.ts"],"names":[],"mappings":"AAKA,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEtD;AA6DD;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,CA+CrF;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,2BAA2B,CAC/C,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,EAAE,CAAC,CA4CnB;AAED,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAElF"}
|