Expand description
Kiro adapter for speccoder.
Finds a Kiro (or cc-sdd) project and its specs in .kiro/specs/<name>/,
reads a spec’s requirements.md (each ### Requirement N with its
numbered EARS criteria N.M) or a bugfix spec’s bugfix.md
(bugfix), its tasks.md line by line ([ ]* is not a Markdown
task), cc-sdd’s approvals and the steering as Kiro includes it.
Read-only except write::tick, write::close_all and
write::append_convergence.
Modules§
- bugfix
- A bugfix spec’s
bugfix.md: its Current, Expected and Unchanged statements, numbered as the file numbers them (2.1 WHEN … SHALL …). - parse
- Kiro’s files, read as written:
requirements.md(numbered EARS criteria under### Requirement N),tasks.mdline by line ([ ]*is not a Markdown task) and the steering with when it applies. - write
- The engine’s writes to a spec’s
tasks.md: a tick (with its parent when it was the last required sub-task) and the convergence append. Both re-read the file and refuse when it changed since speccoder read it.
Structs§
- NotA
Project - No Kiro spec was found from the start path upward.
- Spec
- A spec’s files, read.
Constants§
- SPECS
- Where Kiro keeps its specs, relative to the project root.
Functions§
- find_
root - The nearest directory at or above
startholding a Kiro spec. - inspect
- Inspects the Kiro project containing
start, selecting specfeatureif given, else the only spec. A bugfix spec and an unreadable task list are among the diagnostics. - load
- Reads spec
nameof the project atroot. - read_
bugfix - Bugfix spec
name’sbugfix.md, read. - sha256_
hex - Lowercase hex SHA-256 of
bytes. - specs
- The specs under
root, by name. - steering_
read - The steering an attempt reads, as one text — each file under a heading that says when it applies — and what inspect says about it.
- steering_
text - The steering every task reads, as one text.
- tasks_
of - The spec’s
tasks.mdread, a whole requirement (3) cited as its criteria. - unapproved
- cc-sdd’s approval of spec
name’s tasks (spec.json):Somewith why it does not allow a run — the tasks are written not approved, or the file cannot be read. Kiro writes nospec.json: approved.