File format¶
Status: draft
Proposals by Claude – not binding until Daniel approves them.
.deciwa/
├── config.toml optional settings
└── annotations/
└── 20_facts/company/founder.md.json one file per annotated source
The path under |
{
"deciwa": "0.1",
"source": "20_facts/company/founder.md",
"annotations": [
{
"id": "k7q2m9xa",
"kind": "feedback",
"target": {
"selectors": [
{"type": "structural", "value": "md:paragraph:Career/Advisor#1"},
{"type": "TextQuoteSelector", "exact": "advisor since October 2026",
"prefix": "Daniel works as ", "suffix": "."},
{"type": "TextPositionSelector", "start": 1204, "end": 1230}
],
"fingerprint": "sha256:9c1e…",
"snapshot": "Daniel works as advisor since October 2026."
},
"author": "daniel",
"created": "2026-10-19T10:12:00Z",
"verdict": "rephrase",
"comment": "too stiff, say it like a person",
"status": "open",
"replies": []
}
]
}
Field |
Values |
Note |
|---|---|---|
|
|
the three ways of working stay separate in the data |
|
|
only for |
|
0–5 |
only for |
|
text, list of authors |
only for |
|
element text when the annotation was made |
needed for |
|
|
jobs start |
|
|
from |
|
8 characters, lowercase base32, random |
short enough to type in the CLI |
Proposal: While an element is unchanged, an author's latest verdict and latest rating replace the earlier ones PROP_LATEST_WINS
|
A misclick or a second thought must not pile up entries. As long as the
element’s fingerprint is the same, a new verdict of the same author replaces
the old verdict, and a new rating the old rating. Once the element changed,
earlier annotations stay as history (that is how |
Without it deciwa can tell that an approved or frozen text changed, but not
what it looked like – and the freeze alarm must show the old wording
(New verdict freeze (DEC_FREEZE)). The cost is some duplicate text in |
|
config.toml¶
author = "daniel" # overrides git config
[adapters]
"**/*.md" = "md"
"**/*.rst" = "rst"
"**/*.txt" = "text"
[needs]
directives = ["req", "spec", "dec", "prop", "question"]
[ignore]
paths = ["90_archive/**", "_build/**"]