Skip to main content

Crate speccoder_kiro

Crate speccoder_kiro 

Source
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.md line 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§

NotAProject
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 start holding a Kiro spec.
inspect
Inspects the Kiro project containing start, selecting spec feature if given, else the only spec. A bugfix spec and an unreadable task list are among the diagnostics.
load
Reads spec name of the project at root.
read_bugfix
Bugfix spec name’s bugfix.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.md read, a whole requirement (3) cited as its criteria.
unapproved
cc-sdd’s approval of spec name’s tasks (spec.json): Some with why it does not allow a run — the tasks are written not approved, or the file cannot be read. Kiro writes no spec.json: approved.