qmstrace status¶
TL;DR
qmstrace status answers where am I: what was read, what lies around the repo and whether
it could be verified, then one line per requirement. Run it first in any traced repo. It is
not a check — it exits 0 whatever it counts.
Synopsis¶
Usage: qmstrace status [OPTIONS]
What was scanned, what lies around the repo, and one line per requirement.
Includes governing baselines, change-request evidence and a suspect summary.
Check lists all suspects; they never fail the gate. Not a check: it exits 0
whatever it counts, or 2 when the evidence cannot be judged.
Options:
-C PATH Run as if qmstrace had been started in PATH, as with git -C. Before
or after the command.
--help Show this message and exit.
Run it anywhere inside a product repo: qmstrace walks up to the nearest qmstrace.toml. To run
it on another repo, give -C — before the command, as with git -C, or after it:
Output¶
With the ledger and the project's other repos checked out beside this one:
schema: the project's ../ledger/qmstrace.schema.toml, by path — plus this repo's qmstrace.toml
scanned (working tree, not pinned):
requirement 3 items in 1 file docs/req/*-srs.md
design_element 2 items in 1 file docs/design/*.md
component 2 items in 2 files src/**/*.py · 1 file ignored by **/__init__.py
automated_test 4 items in 2 files tests/**/test_*.py · test functions: a parametrised function is one automated test
links: 14
external AGR-*: verified against ../ledger/agreement.md (3 declared)
sibling client: 1 requirement — read from ../client's working tree, not pinned; cite its items by ID
controlled document items: 0 frozen · 0 changed · 0 new · 0 removed · 0 withdrawn
baselines: judged from reachable local tags — remote-tag completeness NOT VERIFIED; qmstrace never fetches
baselines: no matching reachable local tag — nothing frozen locally
change requests: NOT VERIFIED — ../ledger/change-requests is unavailable; fresh citations are verified at the ledger's import
REQ-SVC-01 security origin AGR-1 design elements 1 automated tests 1 (unit 1) — A call carries a key
REQ-SVC-02 reliability origin AGR-2, AGR-3 design elements 1 automated tests 2 (integration 2) — Records survive a restart
verified by inspection — no recorded basis yet, listed apart:
REQ-SVC-03 maintainability origin AGR-3 design elements 0 automated tests 0 — The record format is written down
categories with no requirement here: functional-suitability, performance-efficiency, compatibility, usability, portability, design-constraint, legal-regulatory
(a prompt, not a gap — not every product needs one under every category)
suspects: 0 — informational; this repo only
0 violations · 1 gap (G01 ×1) — qmstrace check lists them
In a pipeline, where only this repo is checked out:
schema: the project's, as a verified copy under [schema] — plus this repo's qmstrace.toml
scanned (working tree, not pinned):
requirement 1 item in 1 file docs/req/*-srs.md
design_element known to the project, not scanned here
component 1 item in 1 file src/**/*.py
automated_test 2 items in 1 file tests/**/test_*.py · test functions: a parametrised function is one automated test
links: 3
external AGR-*: NOT VERIFIED — ../ledger/agreement.md is not reachable; each cited AGR-N is judged at the ledger's import
sibling service: NOT REACHABLE at ../service
not verified here: 1 citation of another repo's items (REQ-SVC-01) — judged at the ledger's import
controlled document items: 0 frozen · 0 changed · 0 new · 0 removed · 0 withdrawn
baselines: judged from reachable local tags — remote-tag completeness NOT VERIFIED; qmstrace never fetches
baselines: no matching reachable local tag — nothing frozen locally
change requests: NOT VERIFIED — ../ledger/change-requests is unavailable; fresh citations are verified at the ledger's import
REQ-CLT-01 security origin AGR-1 design elements 0 automated tests 1 (unit 1) — The client sends its key on every call
categories with no requirement here: functional-suitability, performance-efficiency, compatibility, usability, reliability, maintainability, portability, design-constraint, legal-regulatory
(a prompt, not a gap — not every product needs one under every category)
suspects: 0 — informational; this repo only
0 violations · 2 gaps (G01 ×1, G06 ×1) — qmstrace check lists them
| Block | What it says |
|---|---|
schema: |
where the rules in force come from — the project's trace schema by path, a verified copy of it, or the repo's own |
scanned (…) |
per item type: items and files read, the file patterns, and files ignored; a type the project knows and this repo does not scan says so. The parenthesis says what was read — the working tree, never a pinned commit |
links: |
links that entered the graph — every one allowed by the trace schema |
external … |
whether IDs cited from outside any product repo, such as agreement clauses, were checked, and against which file |
sibling … |
each of the project's other repos: read from its working tree (not pinned), or not reachable |
not verified here: |
citations of another repo's items that this run could not check; they are judged when the ledger imports the project |
baseline … / baselines: |
governing local tags, annotation evidence and limits; see Baselines |
controlled document items: |
frozen, changed, new, removed and withdrawn counts; changed/removed are subsets of frozen |
change requests: |
the register's availability, readable requests and malformed files |
suspects: |
unique local items needing review; distance-one items listed, farther items counted by distance; check lists all reasons |
| one line per requirement | its category, what it points back at, what hangs off it — design elements, the test cases of a Test Specification, automated tests by level — and its title |
verified by … |
requirements verified by inspection or analysis, listed apart: nothing records their basis yet |
| last line | violations and gaps, each counted by code — see Findings. qmstrace check lists every one, with its next move |
Exit code¶
Frozen requirements carry their governing tag and comparison state; withdrawn requirements are labelled explicitly. Change a frozen item describes the authoring workflow.
0, whatever it counts — or 2 when it cannot judge at all, such as in a folder with no
qmstrace.toml above it. See Exit codes.