Dateiformat¶
Status: Entwurf
Vorschläge von Claude – nicht verbindlich, bis Daniel sie freigibt.
.deciwa/
├── config.toml optional settings
└── annotations/
├── 20_facts/company/founder.md.json one file per annotated source
└── _web/danwos.dev/services.json web pages without a mapped source
.deciwa/web-pages.json elements of the imported web pages
Der Pfad unter |
{
"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": []
}
]
}
Feld |
Werte |
Hinweis |
|---|---|---|
|
|
die drei Arbeitsweisen bleiben auch in den Daten getrennt |
|
|
nur für |
|
0–5 |
nur für |
|
Text, Liste von Autoren |
nur für |
|
Text des Elements, als die Annotation erstellt wurde |
nötig für |
|
|
Aufgaben starten |
|
|
aus |
|
8 Zeichen, Base32 in Kleinbuchstaben, zufällig |
kurz genug, um es in der CLI zu tippen |
Vorschlag: Solange ein Element unverändert ist, ersetzen das neueste Urteil und die neueste Bewertung einer Person die früheren PROP_LATEST_WINS
|
Ein Fehlklick oder ein zweiter Gedanke darf keine Einträge anhäufen. Solange der Fingerprint des Elements gleich ist, ersetzt ein neues Urteil derselben Person das alte Urteil und eine neue Bewertung die alte Bewertung. Hat sich das Element geändert, bleiben frühere Annotationen als Verlauf erhalten (so funktioniert |
Ohne ihn kann deciwa sagen, dass sich ein freigegebener oder eingefrorener Text geändert hat, aber nicht, wie er aussah – und der Einfrier-Alarm muss die alte Formulierung zeigen (Neues Urteil: einfrieren (DEC_FREEZE)). Der Preis ist etwas doppelter 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/**"]
Web-Quellen¶
Eine mit dem Web-Skript reviewte Seite, deren Quelle der Fallback Ein Export aus dem Web-Skript trägt die Elemente seiner Seiten mit (Selektor, Art, Label, Text, Fingerprint). Der Import legt sie nach Adresse in |
[web]
site = "danwos.dev" # optional, the host of the pages
sources = [ # optional, first match wins
{ url = "/", file = "src/content/pages/index.md" },
{ url = "/blog/*", file = "src/content/blog/*.md" },
{ url = "/*", file = "src/content/pages/*.md" },
]
Ohne [web] – oder ganz ohne .deciwa/, wenn nur der Browser genutzt wird – behält jede Seite ihre Adresse. site beschränkt die Regeln auf Seiten dieses Hosts; ohne gelten sie für jeden Host, auch localhost beim Entwickeln. Ein Stern in url steht für einen oder mehrere Teile der Adresse und ersetzt die Sterne in file in derselben Reihenfolge.