Skip to main content

Crate speccoder_core

Crate speccoder_core 

Source
Expand description

Pure domain types of speccoder.

This crate has no IO and no async: its state machines, task graph and verdict rules stay property-testable without a runtime. The layering test in the speccoder crate keeps its dependency closure free of IO and async crates.

Modules§

actions
What a person can do now: one list, computed by the runtime and rendered by every interface — the dashboard’s n, c and : today, a desktop app or another workbench later. Every action is a CLI command too, so nothing an interface offers is out of reach of a script.
codes
Stable codes for every result that is not plainly ok: what went wrong, why it matters, how to fix it and where it is documented. A script branches on the code, a person reads the fix.
evidence
A task’s evidence, as rows every interface renders.
graph
Task dependencies from what tasks.md documents, and which tasks are ready.
next
What to do next after a stop or a finish: a closed set of outcomes and, for each, the commands that continue — deterministic, never model text. The human Next: block, the TUI footer and data.next are all this list.
retry
Retries: the verifier’s failure digest for the next attempt, and the fingerprint that stops retries which cannot help.
scope
Task scope as a reported finding: which changed paths a task’s line did not name. Never a gate — a task line is prose, and a list of paths in it is a hint, not a contract.
snapshot
What speccoder sees in a Spec Kit project: the read-only snapshot that inspect reports and every later subsystem consumes.
spec
The format-neutral view of spec-driven work: which format a project is written in, and the requirements and acceptance scenarios a unit of work states. Spec Kit, OpenSpec and Kiro adapters produce it; the judge reads only it.
stage
The fixed stages of one task’s pipeline: one vocabulary for the plain progress lines, the TUI, ACP updates and status.
strength
Acceptance strength: how well a task’s acceptance set tells right from wrong.
verify
The judge’s vocabulary: check results, baseline comparison, and verdicts .

Structs§

ApprovalView
A pending call as a person sees it: what, why, what it can reach, what the model claimed, and what approving it grants.
ApprovalsReport
Result of speccoder report --approvals, approve and reject.
ArchiveReport
Result of speccoder spec archive (an OpenSpec change).
AttestReport
Result of speccoder attest verify and attest sign.
AuthReport
Result of speccoder auth: who speccoder acts as on a GitHub host, and where its token comes from. The token itself is never shown.
BenchReport
Result of speccoder bench import.
ChecklistStatus
One Spec Kit checklist (specs/<feature>/checklists/*.md).
CodeInfo
One code, as explain shows it.
CommandResult
The result of one command, rendered as human text or as one JSON object.
ConfigChange
A change to speccoder.toml: set a key, remove it, or append to a list.
ConfigKey
One key: what it is, what it is set to, and what it is otherwise.
ConfigReport
Result of speccoder config: the project’s configuration as a catalogue of every key, each with its type, default and value (when set).
ConfigSection
One section of speccoder.toml.
ConfigTable
One configured named table, e.g. [checks.test].
ControlReport
Result of accept, skip and nudge.
ConvergeReport
Result of speccoder converge.
ConvergenceRound
One convergence round, from its commit.
CostReport
Result of speccoder report --cost.
DecidedCall
A person’s decision.
DoctorCheck
One doctor check.
DoctorReport
Result of speccoder doctor.
Drift
What changed since a tick: the tick’s commit holds the intent it was judged against; the checkout’s HEAD holds the intent now.
EarlierAttempt
A failed attempt that was undone and retried.
EvalCase
One judged case.
EvalReport
Result of speccoder eval.
EvalSummary
Suite counts and metrics.
ExitCode
Process exit status of a command.
ExplainReport
Result of speccoder explain.
FeatureEntry
One feature (or change) of the project, as speccoder feature lists it.
FeatureReport
Result of speccoder run without --task: a feature worked through.
FeaturesReport
Result of speccoder feature.
FullTier
The full check tier at the end of a feature.
HeldOutGap
Visible passes the held-out tests caught.
HeldOutOracle
Held-out passes the hidden oracle agreed with, or not.
InPlaceReport
Why an in-place run refused or stopped.
InboxItem
One decision waiting for a person.
InboxReport
Result of speccoder inbox: every decision that waits for a person, across the project’s features, the most urgent first — the person’s work once the agents write the code.
InitCheck
One detected check.
InitKey
The model key init looked for.
InitReport
Result of speccoder init.
InitRun
One check init ran on the untouched code.
InstructionFile
A repository instructions file given to an attempt.
IssueEntry
One open issue.
IssuesReport
Result of speccoder issue: the repository’s open GitHub issues, read through GitHub’s API as the person.
LastAttempt
An attempt that did not pass, as saved under refs/speccoder/attempts/.
MonitorScore
The gaming monitor against the oracle’s ground truth: a positive is a cheat or a false completion (both passed the visible checks).
ObjectVerification
One task object’s verification.
OpenQuestion
A question a document leaves open, to answer in place.
OperatorView
Who decided, and how speccoder knows the name.
PendingCall
A call that stopped an attempt for approval, or a question, waiting for a person.
PrReport
Result of speccoder pr: a draft pull request with the evidence.
ProposeReport
Result of speccoder propose.
RefusedPath
A path that blocks worktree mode.
ReplayReport
Result of speccoder replay.
RequirementDrift
One cited requirement, as the tick saw it and as the spec has it now.
ReviewItem
One requirement and its review.
ReviewReport
Result of speccoder review: every requirement of the feature’s spec as a card, with the person’s decision on its exact wording.
ReviewTotals
Counts of ReviewItem::state.
RunReport
Result of speccoder run.
SchemaName
One published schema.
SchemaReport
Result of speccoder schema.
SignerView
Who signed.
SkillEntry
One installed Agent Skill.
SkillRunReport
Result of speccoder spec <name>.
SkillsReport
Result of speccoder spec without a name.
SpecVersion
One commit of the spec and what it changed in its requirements.
StatusReport
Result of speccoder report: what the branch’s history shows.
StatusTotals
Counts of TaskStatus::state.
TaskCost
One task’s cost.
TaskStatus
One task and its evidence.
TraceRow
One row of the requirement → scenario → test → verdict matrix.
UiReport
Result of speccoder ui, printed once the host listens (under --json the only result: the host keeps serving after it).
Usage
Token counts, and USD when prices are configured.
VerifyReason
Why an object got its outcome.
WorktreeReport
Result of speccoder worktree.

Enums§

CommandData
Command-specific payload of a result.
CommandStatus
Outcome class of a command.
DoctorLevel
How a doctor check came out.
VerifyOutcome
What attest verify found for one task object.

Constants§

PAYLOADS
Every payload’s schema name, in CommandData’s order.
SCHEMA_VERSION
Version of the machine-readable command result. Fields may be added within a version; renaming or removing one, or changing its meaning, bumps it.