@cr8rcho/alkahest 0.1.73 → 0.1.75

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cr8rcho/alkahest",
3
- "version": "0.1.73",
3
+ "version": "0.1.75",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -10,3 +10,15 @@ Quick rules:
10
10
  - Append-only: a changed decision gets a NEW ADR with `Supersedes:`; the old one keeps its
11
11
  body and gets `Status: Superseded by …`.
12
12
  - Start the practice with **ADR-001 — architecture snapshot** of the current code.
13
+
14
+ ## Tag vocabulary
15
+
16
+ Every ADR opens with `tags:` frontmatter, and **this table is the vocabulary** — pick from
17
+ it; extend it deliberately (add the row in the same commit as the ADR that needs it). On the
18
+ hosted `adr` note map each tag becomes a hub node, so the vocabulary's shape IS the map's
19
+ shape: one **surface** tag per ADR (the product/code area it touches) plus at most two
20
+ **arc** tags (a storyline several ADRs share), and keep each tag attached to roughly 3–12
21
+ ADRs. The first documentation pass seeds the surface rows from the codebase's actual areas.
22
+
23
+ | Tag | Kind | Meaning |
24
+ |---|---|---|
@@ -38,6 +38,13 @@ one **surface** tag (the area of the product it touches) plus at most two **arc*
38
38
  node — keep every tag attached to roughly 3–12 ADRs so the map stays legible, and prefer
39
39
  reusing an existing tag over inventing a new one.
40
40
 
41
+ **The vocabulary lives in `docs/decisions/README.md`'s tag table, and the repo owns it.**
42
+ On the bootstrap pass, seed it: derive 3–7 surface tags from the codebase's *actual* areas
43
+ (the folders/verticals you just documented), record them in the table, and tag ADR-001 from
44
+ that set. Afterwards, every ADR picks from the table; a genuinely new tag means adding its
45
+ row in the same commit. Arc tags are not invented up front — they emerge when several ADRs
46
+ turn out to share a storyline.
47
+
41
48
  ## Template
42
49
 
43
50
  ```markdown
@@ -20,6 +20,13 @@ Placement rule of thumb: what the user *sees* → `components/`; what *happens o
20
20
  When a topic straddles two layers, pick one as the **main** document and leave a short
21
21
  summary + link in the other.
22
22
 
23
+ ## Document shape
24
+
25
+ Title each document with a **classed H1**: `# System — <name>`, `# Component — <name>`,
26
+ `# Feature — <name>`, `# Module — <name>`. The note-map mirror strips the class prefix,
27
+ so the hosted note is titled just `<name>` while the file stays unambiguous in the repo.
28
+ (ADRs have their own H1 shape — see the `adr` skill.)
29
+
23
30
  ## Bootstrap — when the repo has no docs yet
24
31
 
25
32
  Do NOT try to document everything in one session. The first pass is deliberately small so
@@ -33,6 +40,10 @@ the user sees a map fast:
33
40
  4. Add each document to the index in `docs/README.md`, then **mirror to the note maps and
34
41
  hand the user the map link** (the mirroring rule lives in this repo's CLAUDE.md).
35
42
 
43
+ In the first pass, **prefer `modules/`** (plus the one `system/` map) when a topic could
44
+ fit several layers — grow `features/` and `components/` in later sessions, and leave their
45
+ index tables empty until they have documents.
46
+
36
47
  Grow the rest incrementally: each later work session adds or updates only the documents its
37
48
  code changes touch.
38
49
 
@@ -46,6 +57,10 @@ code changes touch.
46
57
  Remove limitations you fixed; add the ones you introduced.
47
58
  - **Overwrite freely** — these documents always describe the present. (ADRs are the
48
59
  append-only record; never blend the two.)
60
+ - **Trust the code over connected tools** — an MCP server configured in your session
61
+ (a database MCP, for instance) may be bound to a *different* project than the repo you
62
+ are documenting. Verify the binding before citing anything from it, or read the schema
63
+ from the code instead.
49
64
 
50
65
  ## After every code change (checklist)
51
66