v0.3.0
This release replaces the MSRS/MSDD artifact model with first-class Requirement and Design artifacts, following the
accepted ADRs SPECFUL-ADR-0002 through SPECFUL-ADR-0004. It is a direct, pre-1.0 break: there is no compatibility layer
and no automated migration. It also delivers the documentation site at https://unkos-dev.github.io/specful/ and an
opt-in agent plugin, installed from this repository's own marketplace, carrying skills for authoring, reviewing, and
adopting the convention.
Breaking changes
schemas/msrs/andschemas/msdd/are removed.schemas/requirement/v1(type: REQ) andschemas/design/v1
(type: DESIGN) replace them.- The ADR schema's discriminator moves from
kind: adrtotype: ADR, in place atprofile-version: 1. Existing ADRs
must update their frontmatter. - ADR section headings move to sentence case:
Context and problem statement,Decision drivers,Considered options,
Decision outcome(and, where present,Pros and cons of the options,More information). .specful/config.yamlcounters change fromnext-adr-sequence/next-msrs-sequence/
next-requirement-sequence/next-msdd-sequencetonext-adr-sequence/next-requirement-sequence/
next-design-sequence.config-versionstays1.specful new msrsandspecful new msddare removed. Usespecful new requirementandspecful new design, each
taking--scopeas before. Requirements and Designs live underdocs/specs/<scope>/requirements/and
docs/specs/<scope>/design/respectively (previouslymsrs/andmsdd/).- A Requirement is one normative obligation per file (
Statement,Rationale,Acceptance criteria,
More information); the old per-module bundled requirements with source citations are gone. A Design describes one
subject across eight canonical sections (Purpose and boundaries,Structure,Interfaces and dependencies,
Data and state,Runtime behaviour,Failure and recovery,Security and operations,More information) and
declares the Requirements itsatisfies.
Manual conversion steps for an existing repository
- Edit
.specful/config.yaml: replacenext-msrs-sequenceandnext-msdd-sequencewithnext-design-sequence, and
rename any existing Requirement counter tonext-requirement-sequenceif it is not already named that. - For every ADR, change
kind: adrtotype: ADRand update its##headings to sentence case. - For every MSRS module, split its bundled requirements into individual
type: REQfiles under arequirements/
directory, one obligation per file, followingtemplates/requirement.md. - For every MSDD module, convert it to a
type: DESIGNfile under adesign/directory, following
templates/design.md, and setsatisfiesto the Requirement identifiers it satisfies. - Run
specful indexto regenerate the catalog and navigation views, thenspecful validateto confirm the result.
Added
- (plugin) publish the first marketplace pin (#58)
- (plugin) add the Specful agent plugin with an empty marketplace root
(#57) - deliver the documentation site (#50)
- [breaking] implement the Requirement and Design artifact model (#49)
Fixed
- (templates) stop stamping scaffolded artifacts with an SPDX licence tag (#56)
- (deps) update rust crate jsonschema to 0.52.0 (#47)