Work status model¶
This page defines how we track document maturity and how we mark evidence for individual claims. The goal is to make "where we are" explicit and to clarify what is backed by static analysis, runtime validation, or the Python reference implementation.
Page status ladder¶
Use these statuses in docs/index.md (and any doc header that includes a
status line).
| Status | Meaning | Exit criteria |
|---|---|---|
| Planned | Topic is scoped but not yet documented. | We have a starter doc or tracking notes. |
| Tracking | Raw notes + pointers to evidence; structure is loose. | Core sections exist and at least some claims are tagged. |
| Draft | Structured doc with sections; gaps and TODOs called out. | Major sections filled and evidence tags used for key claims. |
| In progress | Actively validating; most claims tagged and gaps shrinking. | Remaining gaps are small or isolated; runtime/static coverage is solid. |
| Completed | Stable and validated; changes are incremental. | Key claims are tagged; open questions are resolved or explicitly deferred. |
Zensical page tags¶
We mirror the status ladder into Zensical page tags (front matter tags:) so
status can be filtered in the site UI.
Tag names:
status-plannedstatus-trackingstatus-draftstatus-in-progressstatus-completed
Example front matter:
Evidence tags for claims¶
Use inline tags in bullets/paragraphs to mark the source of truth for each
claim. Combine tags when multiple kinds of evidence exist (e.g., [static+runtime]).
| Tag | Meaning | Typical sources |
|---|---|---|
[hypothesis] |
Hypothesis / inferred (no direct evidence yet). | Educated guess, pattern matching. |
[static] |
Static confirmed. | Decompiled code, data maps, string refs. |
[runtime] |
Runtime verified. | Frida/Windbg traces, live logs, capture artifacts. |
[python] |
Python reference implementation. | src/crimson/ builders, parsers, tables. |
Suggested lock-in rules¶
These are guidelines for when a claim feels "locked in":
- Behavior claims:
[static+runtime](static + runtime). - Data tables/ids:
[static+python](static + reference implementation). - End-to-end reimplementation:
[python+runtime](Python output matches runtime capture).
Usage pattern¶
Example claim list using tags:
[static]creature_spawn_templateassignstemplate_idtocreature_type_id.[runtime]Quest builder 5.2 emits 132 entries in runtime capture.[static+python]Spawn ids mapped to creature names insrc/crimson/spawn_templates.py.
Notes¶
- Keep tags short and visible. Prefer
[static],[runtime],[python]in-line over long prose. - If a claim changes status, update the tag rather than rewriting the claim.