@seanmars/tospec 0.19.0-beta.7 → 0.20.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 +60 -231
- package/README.md +69 -82
- package/assets/dashboard/app.js +14 -3
- package/assets/dashboard/style.css +7 -0
- package/assets/rules/tospec/decision.md +3 -0
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +227 -86
- 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 +366 -107
- package/dist/commands/config.js.map +1 -1
- package/dist/commands/dashboard.d.ts +57 -99
- package/dist/commands/dashboard.d.ts.map +1 -1
- package/dist/commands/dashboard.js +224 -282
- 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 +385 -79
- package/dist/commands/decision.js.map +1 -1
- package/dist/commands/metrics.d.ts +28 -51
- package/dist/commands/metrics.d.ts.map +1 -1
- package/dist/commands/metrics.js +62 -93
- package/dist/commands/metrics.js.map +1 -1
- package/dist/commands/shared-output.d.ts +18 -21
- package/dist/commands/shared-output.d.ts.map +1 -1
- package/dist/commands/shared-output.js +49 -23
- 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 +29 -7
- package/dist/commands/show.js.map +1 -1
- package/dist/commands/validate.d.ts +43 -45
- package/dist/commands/validate.d.ts.map +1 -1
- package/dist/commands/validate.js +262 -129
- 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 +81 -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 +378 -235
- package/dist/core/archive.js.map +1 -1
- package/dist/core/artifact-graph/graph.d.ts +25 -42
- package/dist/core/artifact-graph/graph.d.ts.map +1 -1
- package/dist/core/artifact-graph/graph.js +45 -63
- package/dist/core/artifact-graph/graph.js.map +1 -1
- package/dist/core/artifact-graph/index.d.ts +1 -1
- package/dist/core/artifact-graph/index.d.ts.map +1 -1
- package/dist/core/artifact-graph/index.js +1 -1
- package/dist/core/artifact-graph/index.js.map +1 -1
- package/dist/core/artifact-graph/instruction-loader.d.ts +97 -103
- package/dist/core/artifact-graph/instruction-loader.d.ts.map +1 -1
- package/dist/core/artifact-graph/instruction-loader.js +146 -119
- package/dist/core/artifact-graph/instruction-loader.js.map +1 -1
- package/dist/core/artifact-graph/outputs.d.ts +9 -23
- package/dist/core/artifact-graph/outputs.d.ts.map +1 -1
- package/dist/core/artifact-graph/outputs.js +45 -38
- 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 +14 -15
- package/dist/core/codex-residue.d.ts.map +1 -1
- package/dist/core/codex-residue.js +18 -22
- package/dist/core/codex-residue.js.map +1 -1
- 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 +39 -26
- package/dist/core/config.d.ts.map +1 -1
- package/dist/core/config.js +36 -22
- package/dist/core/config.js.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 +62 -70
- 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 +38 -67
- package/dist/core/global-config.js.map +1 -1
- package/dist/core/init.d.ts +25 -19
- package/dist/core/init.d.ts.map +1 -1
- package/dist/core/init.js +168 -181
- 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 +41 -83
- package/dist/core/local-server.d.ts.map +1 -1
- package/dist/core/local-server.js +53 -98
- 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 +29 -14
- package/dist/core/migrate.d.ts.map +1 -1
- package/dist/core/migrate.js +184 -122
- 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 +43 -15
- package/dist/core/parsers/requirement-blocks.d.ts.map +1 -1
- package/dist/core/parsers/requirement-blocks.js +142 -70
- 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.map +1 -1
- package/dist/core/parsers/spec-structure.js +10 -6
- package/dist/core/parsers/spec-structure.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 +9 -17
- 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 +6 -1
- package/dist/core/rules.d.ts.map +1 -1
- package/dist/core/rules.js +23 -2
- package/dist/core/rules.js.map +1 -1
- 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 +19 -8
- package/dist/core/shared/rules-generation.d.ts.map +1 -1
- package/dist/core/shared/rules-generation.js +117 -50
- package/dist/core/shared/rules-generation.js.map +1 -1
- package/dist/core/shared/skill-generation.d.ts +28 -43
- 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 +39 -61
- 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.js +6 -6
- package/dist/core/spec-presenter.js.map +1 -1
- package/dist/core/specs-apply.d.ts +22 -23
- package/dist/core/specs-apply.d.ts.map +1 -1
- package/dist/core/specs-apply.js +166 -193
- 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/validate.d.ts +13 -0
- package/dist/core/templates/fragments/validate.d.ts.map +1 -0
- package/dist/core/templates/fragments/validate.js +13 -0
- package/dist/core/templates/fragments/validate.js.map +1 -0
- 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 +11 -13
- 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 +19 -6
- 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 -2
- 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 +2 -2
- 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 +4 -3
- 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 +9 -2
- package/dist/core/templates/workflows/update.js.map +1 -1
- package/dist/core/update.d.ts +23 -23
- package/dist/core/update.d.ts.map +1 -1
- package/dist/core/update.js +139 -118
- 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 +4 -10
- 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 +43 -63
- package/dist/core/validation/validator.d.ts.map +1 -1
- package/dist/core/validation/validator.js +500 -267
- 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 +30 -54
- package/dist/utils/change-utils.d.ts.map +1 -1
- package/dist/utils/change-utils.js +133 -91
- 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 +9 -18
- package/dist/utils/link.d.ts.map +1 -1
- package/dist/utils/link.js +9 -18
- package/dist/utils/link.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 +7 -20
- package/dist/utils/spec-files.d.ts.map +1 -1
- package/dist/utils/spec-files.js +26 -51
- 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 +2 -3
- package/schemas/decision/templates/decision.md +3 -1
- package/schemas/decision/templates/index.md +2 -2
- package/schemas/issue/schema.yaml +8 -1
- package/schemas/issue/templates/spec.md +27 -2
- package/schemas/sdd/schema.yaml +20 -1
- package/schemas/sdd/templates/spec.md +27 -2
- /package/assets/rules/tospec/{single-sourc-of-truth.md → single-source-of-truth.md} +0 -0
|
@@ -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 { isStubArtifactFile } from './stub-detection.js';
|
|
7
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.
|
|
42
|
+
*
|
|
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".
|
|
28
56
|
*
|
|
29
|
-
* @
|
|
30
|
-
* @param templatePath - Relative path within the templates directory (e.g., "proposal.md")
|
|
31
|
-
* @param projectRoot - Optional project root for project-local schema resolution
|
|
32
|
-
* @returns The template content
|
|
33
|
-
* @throws TemplateLoadError if the template cannot be loaded
|
|
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,37 +90,26 @@ 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
|
-
// Read independently of readChangeMetadata below
|
|
81
|
-
// malformed value
|
|
82
|
-
//
|
|
83
|
-
// that same field.
|
|
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.
|
|
84
103
|
const skipSpecsMarker = readSkipSpecsMarker(changeDir);
|
|
85
104
|
let metadata;
|
|
86
105
|
try {
|
|
87
106
|
metadata = readChangeMetadata(changeDir, projectRoot) ?? undefined;
|
|
88
107
|
}
|
|
89
108
|
catch (error) {
|
|
90
|
-
// readChangeMetadata validates the
|
|
91
|
-
//
|
|
92
|
-
//
|
|
93
|
-
//
|
|
94
|
-
// independently confirms skip_specs is the field at fault; any other
|
|
95
|
-
// cause still throws, since there is no way to tell what the rest of the
|
|
96
|
-
// metadata should have been.
|
|
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.
|
|
97
113
|
if (!skipSpecsMarker.invalidReason)
|
|
98
114
|
throw error;
|
|
99
115
|
metadata = undefined;
|
|
@@ -104,15 +120,15 @@ export function loadChangeContext(projectRoot, changeName, schemaName, options =
|
|
|
104
120
|
const schema = resolveSchema(resolvedSchemaName, projectRoot);
|
|
105
121
|
const graph = ArtifactGraph.fromSchema(schema);
|
|
106
122
|
const completed = detectCompleted(graph, changeDir);
|
|
107
|
-
// A stub
|
|
108
|
-
//
|
|
123
|
+
// A stub must not count as done, or it optimistically unlocks downstream
|
|
124
|
+
// artifacts.
|
|
109
125
|
const stubs = detectStubs(graph, changeDir, resolvedSchemaName, projectRoot);
|
|
110
126
|
for (const id of stubs) {
|
|
111
127
|
completed.delete(id);
|
|
112
128
|
}
|
|
113
|
-
// skip_specs is the per-change escape hatch from a schema's default
|
|
114
|
-
//
|
|
115
|
-
// validate.ts
|
|
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.
|
|
116
132
|
const skippedArtifacts = new Set();
|
|
117
133
|
if (skipSpecsMarker.declared && graph.getArtifact('specs')) {
|
|
118
134
|
skippedArtifacts.add('specs');
|
|
@@ -132,11 +148,9 @@ export function loadChangeContext(projectRoot, changeName, schemaName, options =
|
|
|
132
148
|
};
|
|
133
149
|
}
|
|
134
150
|
/**
|
|
135
|
-
*
|
|
136
|
-
*
|
|
137
|
-
*
|
|
138
|
-
* ponytail: cheap checks only (empty + template compare); deep "required
|
|
139
|
-
* 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.
|
|
140
154
|
*/
|
|
141
155
|
function detectStubs(graph, changeDir, schemaName, projectRoot) {
|
|
142
156
|
const stubs = new Set();
|
|
@@ -144,32 +158,16 @@ function detectStubs(graph, changeDir, schemaName, projectRoot) {
|
|
|
144
158
|
const outputs = resolveArtifactOutputs(changeDir, artifact.generates);
|
|
145
159
|
if (outputs.length === 0)
|
|
146
160
|
continue;
|
|
147
|
-
//
|
|
148
|
-
//
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
template = loadTemplate(schemaName, artifact.template, projectRoot);
|
|
152
|
-
}
|
|
153
|
-
catch {
|
|
154
|
-
template = null;
|
|
155
|
-
}
|
|
156
|
-
const allStubs = outputs.every((file) => {
|
|
157
|
-
let content;
|
|
158
|
-
try {
|
|
159
|
-
content = fs.readFileSync(file, 'utf-8');
|
|
160
|
-
}
|
|
161
|
-
catch {
|
|
162
|
-
return false;
|
|
163
|
-
}
|
|
164
|
-
if (content.trim().length === 0)
|
|
165
|
-
return true;
|
|
166
|
-
return template !== null && content === template;
|
|
167
|
-
});
|
|
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));
|
|
168
165
|
if (allStubs)
|
|
169
166
|
stubs.add(artifact.id);
|
|
170
167
|
}
|
|
171
168
|
return stubs;
|
|
172
169
|
}
|
|
170
|
+
/** @throws Error when the schema has no artifact with that id. */
|
|
173
171
|
export function generateInstructions(context, artifactId, projectRoot, options = {}) {
|
|
174
172
|
const artifact = context.graph.getArtifact(artifactId);
|
|
175
173
|
if (!artifact) {
|
|
@@ -178,34 +176,52 @@ export function generateInstructions(context, artifactId, projectRoot, options =
|
|
|
178
176
|
const templateContent = loadTemplate(context.schemaName, artifact.template, context.projectRoot);
|
|
179
177
|
const dependencies = getDependencyInfo(artifact, context.graph, context.completed);
|
|
180
178
|
const unlocks = getUnlockedArtifacts(context.graph, artifactId);
|
|
181
|
-
// Use projectRoot from context if not explicitly provided
|
|
182
179
|
const effectiveProjectRoot = projectRoot ?? context.projectRoot;
|
|
183
|
-
// Use the pre-read config when provided; otherwise read it here.
|
|
184
180
|
let projectConfig = options.projectConfig ?? null;
|
|
181
|
+
let configDiagnostics = options.configDiagnostics ?? [];
|
|
185
182
|
if (options.projectConfig === undefined && effectiveProjectRoot) {
|
|
186
183
|
try {
|
|
187
|
-
|
|
184
|
+
const result = readProjectConfigWithDiagnostics(effectiveProjectRoot);
|
|
185
|
+
projectConfig = result.config;
|
|
186
|
+
configDiagnostics = result.diagnostics;
|
|
188
187
|
}
|
|
189
188
|
catch {
|
|
190
|
-
//
|
|
189
|
+
// An unreadable config is not fatal: continue without one.
|
|
191
190
|
}
|
|
192
191
|
}
|
|
193
|
-
//
|
|
194
|
-
//
|
|
195
|
-
//
|
|
196
|
-
//
|
|
197
|
-
// 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];
|
|
198
201
|
if (projectConfig?.rules) {
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
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);
|
|
206
210
|
}
|
|
207
211
|
}
|
|
208
|
-
//
|
|
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;
|
|
209
225
|
const configContext = projectConfig?.context?.trim() || undefined;
|
|
210
226
|
const rulesForArtifact = projectConfig?.rules?.[artifactId];
|
|
211
227
|
const configRules = rulesForArtifact && rulesForArtifact.length > 0 ? rulesForArtifact : undefined;
|
|
@@ -223,13 +239,13 @@ export function generateInstructions(context, artifactId, projectRoot, options =
|
|
|
223
239
|
context: configContext,
|
|
224
240
|
rules: configRules,
|
|
225
241
|
template: templateContent,
|
|
242
|
+
...(validation ? { validation } : {}),
|
|
226
243
|
dependencies,
|
|
227
244
|
unlocks,
|
|
245
|
+
changeMetadata: summarizeChangeMetadata(context.metadata),
|
|
246
|
+
...(configWarnings.length ? { configWarnings } : {}),
|
|
228
247
|
};
|
|
229
248
|
}
|
|
230
|
-
/**
|
|
231
|
-
* Gets dependency info including paths and descriptions.
|
|
232
|
-
*/
|
|
233
249
|
function getDependencyInfo(artifact, graph, completed) {
|
|
234
250
|
return artifact.requires.map(id => {
|
|
235
251
|
const depArtifact = graph.getArtifact(id);
|
|
@@ -242,25 +258,38 @@ function getDependencyInfo(artifact, graph, completed) {
|
|
|
242
258
|
});
|
|
243
259
|
}
|
|
244
260
|
/**
|
|
245
|
-
*
|
|
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.
|
|
246
267
|
*/
|
|
247
268
|
function getUnlockedArtifacts(graph, artifactId) {
|
|
248
|
-
const
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
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));
|
|
255
275
|
}
|
|
256
276
|
/**
|
|
257
|
-
*
|
|
258
|
-
*
|
|
259
|
-
*
|
|
260
|
-
* @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.
|
|
261
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
|
+
}
|
|
262
292
|
export function formatChangeStatus(context) {
|
|
263
|
-
// Load schema to get apply phase configuration
|
|
264
293
|
const schema = resolveSchema(context.schemaName, context.projectRoot);
|
|
265
294
|
const applyRequires = schema.apply?.requires ?? schema.artifacts.map(a => a.id);
|
|
266
295
|
const artifacts = context.graph.getAllArtifacts();
|
|
@@ -273,28 +302,16 @@ export function formatChangeStatus(context) {
|
|
|
273
302
|
resolvedOutputPath: path.join(context.changeDir, artifact.generates),
|
|
274
303
|
existingOutputPaths: resolveArtifactOutputs(context.changeDir, artifact.generates),
|
|
275
304
|
};
|
|
276
|
-
|
|
277
|
-
// field to ArtifactStatus used to mean editing five near-identical literals.
|
|
278
|
-
const status = context.completed.has(artifact.id)
|
|
279
|
-
? 'done'
|
|
280
|
-
: context.stubs?.has(artifact.id)
|
|
281
|
-
? 'stub'
|
|
282
|
-
: artifact.optional || context.skippedArtifacts?.has(artifact.id)
|
|
283
|
-
? 'skipped'
|
|
284
|
-
: ready.has(artifact.id)
|
|
285
|
-
? 'ready'
|
|
286
|
-
: 'blocked';
|
|
305
|
+
const status = deriveArtifactStatus(artifact, context, ready);
|
|
287
306
|
return {
|
|
288
307
|
id: artifact.id,
|
|
289
308
|
outputPath: artifact.generates,
|
|
290
309
|
status,
|
|
291
310
|
optional: artifact.optional,
|
|
292
|
-
//
|
|
293
|
-
// only carries missingDeps on a blocked artifact.
|
|
311
|
+
// The JSON contract carries missingDeps only on a blocked artifact.
|
|
294
312
|
...(status === 'blocked' ? { missingDeps: blocked[artifact.id] ?? [] } : {}),
|
|
295
313
|
};
|
|
296
314
|
});
|
|
297
|
-
// Sort by build order for consistent output
|
|
298
315
|
const buildOrder = context.graph.getBuildOrder();
|
|
299
316
|
const orderMap = new Map(buildOrder.map((id, idx) => [id, idx]));
|
|
300
317
|
artifactStatuses.sort((a, b) => (orderMap.get(a.id) ?? 0) - (orderMap.get(b.id) ?? 0));
|
|
@@ -327,7 +344,17 @@ export function formatChangeStatus(context) {
|
|
|
327
344
|
artifactIds,
|
|
328
345
|
}),
|
|
329
346
|
artifacts: artifactStatuses,
|
|
347
|
+
changeMetadata: summarizeChangeMetadata(context.metadata),
|
|
330
348
|
...(statusDiagnostics.length ? { status: statusDiagnostics } : {}),
|
|
331
349
|
};
|
|
332
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
|
+
: {}),
|
|
358
|
+
};
|
|
359
|
+
}
|
|
333
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":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,qBAAqB,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9F,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,EACL,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,qBAAqB,GAGtB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAsB,MAAM,sBAAsB,CAAC;AAMlG,8EAA8E;AAC9E,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAC;AAExC;;GAEG;AACH,MAAM,OAAO,iBAAkB,SAAQ,KAAK;IAGxB,YAAY;IAF9B,YACE,OAAe,EACC,YAAoB;QAEpC,KAAK,CAAC,OAAO,CAAC,CAAC;4BAFC,YAAY;QAG5B,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;IAClC,CAAC;CACF;AA4ID,yEAAyE;AACzE,MAAM,aAAa,GAAG,IAAI,GAAG,EAA8C,CAAC;AAE5E;;;;;;;;GAQG;AACH,MAAM,UAAU,YAAY,CAC1B,UAAkB,EAClB,YAAoB,EACpB,WAAoB;IAEpB,MAAM,SAAS,GAAG,YAAY,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IACxD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,iBAAiB,CACzB,WAAW,UAAU,aAAa,EAClC,YAAY,CACb,CAAC;IACJ,CAAC;IAED,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,CACnB,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,eAAe,CAAC,wBAAwB,CAAC,kBAAkB,CAAC,CAAC;IAE9E,sEAAsE;IACtE,4EAA4E;IAC5E,2EAA2E;IAC3E,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,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACnD,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;;;;;;;;;;;;GAYG;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,qEAAqE;IACrE,0EAA0E;IAC1E,0EAA0E;IAC1E,mBAAmB;IACnB,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,mEAAmE;QACnE,uEAAuE;QACvE,0EAA0E;QAC1E,mEAAmE;QACnE,qEAAqE;QACrE,yEAAyE;QACzE,6BAA6B;QAC7B,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,qEAAqE;IACrE,yEAAyE;IACzE,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,oEAAoE;IACpE,wEAAwE;IACxE,kEAAkE;IAClE,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;;;;;;GAMG;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,yEAAyE;QACzE,mEAAmE;QACnE,IAAI,QAAQ,GAAkB,IAAI,CAAC;QACnC,IAAI,CAAC;YACH,QAAQ,GAAG,YAAY,CAAC,UAAU,EAAE,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QACtE,CAAC;QAAC,MAAM,CAAC;YACP,QAAQ,GAAG,IAAI,CAAC;QAClB,CAAC;QAED,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE;YACtC,IAAI,OAAe,CAAC;YACpB,IAAI,CAAC;gBACH,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAC3C,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,KAAK,CAAC;YACf,CAAC;YACD,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAC;YAC7C,OAAO,QAAQ,KAAK,IAAI,IAAI,OAAO,KAAK,QAAQ,CAAC;QACnD,CAAC,CAAC,CAAC;QACH,IAAI,QAAQ;YAAE,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACvC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAqBD,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,0DAA0D;IAC1D,MAAM,oBAAoB,GAAG,WAAW,IAAI,OAAO,CAAC,WAAW,CAAC;IAEhE,iEAAiE;IACjE,IAAI,aAAa,GAAG,OAAO,CAAC,aAAa,IAAI,IAAI,CAAC;IAClD,IAAI,OAAO,CAAC,aAAa,KAAK,SAAS,IAAI,oBAAoB,EAAE,CAAC;QAChE,IAAI,CAAC;YACH,aAAa,GAAG,iBAAiB,CAAC,oBAAoB,CAAC,CAAC;QAC1D,CAAC;QAAC,MAAM,CAAC;YACP,gDAAgD;QAClD,CAAC;IACH,CAAC;IAED,2EAA2E;IAC3E,yEAAyE;IACzE,2EAA2E;IAC3E,2EAA2E;IAC3E,qDAAqD;IACrD,IAAI,aAAa,EAAE,KAAK,EAAE,CAAC;QACzB,MAAM,QAAQ,GAAG,mBAAmB,CAClC,aAAa,CAAC,KAAK,EACnB,qBAAqB,CAAC,oBAAoB,IAAI,SAAS,CAAC,CACzD,CAAC;QAEF,iDAAiD;QACjD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;gBAChC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACtB,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC;IACH,CAAC;IAED,2EAA2E;IAC3E,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,YAAY;QACZ,OAAO;KACR,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,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;;GAEG;AACH,SAAS,oBAAoB,CAAC,KAAoB,EAAE,UAAkB;IACpE,MAAM,OAAO,GAAa,EAAE,CAAC;IAE7B,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,eAAe,EAAE,EAAE,CAAC;QAC/C,IAAI,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YAC3C,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC,IAAI,EAAE,CAAC;AACxB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAChC,OAAsB;IAEtB,+CAA+C;IAC/C,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,yEAAyE;QACzE,6EAA6E;QAC7E,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC/C,CAAC,CAAE,MAAgB;YACnB,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC/B,CAAC,CAAE,MAAgB;gBACnB,CAAC,CAAC,QAAQ,CAAC,QAAQ,IAAI,OAAO,CAAC,gBAAgB,EAAE,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC/D,CAAC,CAAE,SAAmB;oBACtB,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;wBACtB,CAAC,CAAE,OAAiB;wBACpB,CAAC,CAAE,SAAmB,CAAC;QAE/B,OAAO;YACL,EAAE,EAAE,QAAQ,CAAC,EAAE;YACf,UAAU,EAAE,QAAQ,CAAC,SAAS;YAC9B,MAAM;YACN,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,sEAAsE;YACtE,kDAAkD;YAClD,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,4CAA4C;IAC5C,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,GAAG,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACnE,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"instruction-loader.js","sourceRoot":"","sources":["../../../src/core/artifact-graph/instruction-loader.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,35 +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
|
-
* Async twin of {@link resolveArtifactOutputs}, for `collectChangeDetail
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
* per-artifact resolution is the one that has something to interleave with.
|
|
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.
|
|
15
11
|
*
|
|
16
|
-
* It does **not** serve the save-triggered overview,
|
|
17
|
-
*
|
|
18
|
-
* through `artifactSummaryFor` → `formatChangeStatus` → `artifactOutputExists`
|
|
19
|
-
* and through `listTasksForChange`, both synchronous — deliberately, and
|
|
20
|
-
* measured: dashboard-data.ts records 2.1 ms as the longest stall across 30
|
|
21
|
-
* changes with the sync resolver in place, because the awaits already sitting in
|
|
22
|
-
* that loop break the work across iterations. What removed the cost there was
|
|
23
|
-
* the single-wildcard `readdir` fast path above, not asynchrony.
|
|
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.
|
|
24
14
|
*
|
|
25
15
|
* The duplicated branch structure is held to the sync version by the parity
|
|
26
|
-
* cases in test/core/artifact-graph/outputs.test.ts
|
|
27
|
-
*
|
|
28
|
-
* and assert identical results. Any behaviour added to one belongs in that list.
|
|
16
|
+
* cases in test/core/artifact-graph/outputs.test.ts. Any behaviour added to one
|
|
17
|
+
* belongs in that list.
|
|
29
18
|
*/
|
|
30
19
|
export declare function resolveArtifactOutputsAsync(changeDir: string, generates: string): Promise<string[]>;
|
|
31
|
-
/**
|
|
32
|
-
* Checks if an artifact has at least one resolved output file.
|
|
33
|
-
*/
|
|
34
20
|
export declare function artifactOutputExists(changeDir: string, generates: string): boolean;
|
|
35
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"}
|