Skip to main content

Module new_project

Module new_project 

Source
Expand description

A new project from one line of intent: the plan — the stack’s own scaffold, the spec format’s own init, speccoder init --yes and one commit as the person — computed read-only, shown, confirmed, and then run exactly as shown. speccoder writes none of the stack’s or the format’s files itself (constitution VII); speccoder.toml is written only by init.

The plan is bound to a digest over its commands and the folder as it was seen; perform recomputes it and refuses a plan that changed. A run that stopped resumes: each step’s effect is detected, never repeated. Undo (undo()) moves a folder speccoder created to the Trash, or reverts speccoder’s commit in an existing repository — only while nothing else happened there.

Re-exports§

pub use undo::undo;
pub use undo::undo_offer;

Modules§

undo
Undo a project speccoder created — only while nothing but speccoder’s commit exists there. A new folder goes to the system Trash (never deleted); in an existing repository speccoder’s commit is reverted as the person, history kept.

Structs§

Before
The folder before speccoder’s first step.
Creation
The creation record: what Undo, the recent projects and the new project’s first view read. In speccoder’s state, never the project.
Snapshot
The folder at one moment.

Functions§

creation
The creation record of the project at target, if speccoder created it.
digest
SHA-256 over what the confirmation binds: everything the plan runs and the folder as seen — not the informational options beside it.
dry_run
speccoder new --dry-run: the plan and its digest; nothing changes.
first_feature
The idea of a project speccoder created, offered once while it has no unit: the New Feature sheet opens prefilled with it. Marks it offered.
path_digest
SHA-256 of the canonical path: what an event names instead of the path.
perform
Creates the project: the plan recomputed and compared with the one the person confirmed (plan_digest), each step run in order (a step whose effect is already there is skipped), init in process, one commit as the person, the creation record, project.created.
plan
The plan for path with choices (read-only; the sheet’s and --dry-run’s).