mirror of
https://github.com/Fission-AI/OpenSpec.git
synced 2026-09-14 20:16:53 +08:00
8dcd1707ee
* proposal: add instruction loader and schema restructure (Slice 3) Adds two change proposals for implementing Slice 3 of the artifact POC: 1. restructure-schema-directories - Move schemas from embedded TS objects to self-contained directories - Each schema becomes a directory with schema.yaml + templates/ - Enables co-located templates for user extensibility - 2-level resolution: user override → package built-in 2. add-instruction-loader (depends on #1) - Load templates from schema directories - Enrich templates with change context (dependencies, next steps) - Format change status for CLI output - New instruction-loader capability These proposals complete Slice 3 from docs/artifact_poc.md. * fix: include full requirement block in MODIFIED spec Update the Schema Loading requirement to include all original scenarios (modified as needed) per the MODIFIED requirement guidelines. The archiver replaces the entire requirement with the provided content.
1.2 KiB
1.2 KiB
1. Template Loading
- 1.1 Create
src/core/artifact-graph/template.ts - 1.2 Implement
loadTemplate(schemaName, templatePath)using schema directory structure - 1.3 Add tests for template loading from schema directory
- 1.4 Add tests for error when template not found
2. Change Context
- 2.1 Create
src/core/artifact-graph/context.ts - 2.2 Define
ChangeContextinterface - 2.3 Implement
loadChangeContext()function - 2.4 Add tests for context loading with existing change
- 2.5 Add tests for context loading with missing change directory
3. Instruction Enrichment
- 3.1 Create
src/core/artifact-graph/instructions.ts - 3.2 Implement
getInstructions()with header injection - 3.3 Add dependency status formatting (done/missing)
- 3.4 Add next steps calculation
- 3.5 Add tests for enrichment output
4. Status Formatting
- 4.1 Implement
formatStatus()function in instructions.ts - 4.2 Format as markdown table with status and output path
- 4.3 Show blocked dependencies
- 4.4 Add tests for status formatting
5. Integration
- 5.1 Export new functions from
src/core/artifact-graph/index.ts - 5.2 Ensure all tests pass