Files
project-work/worker-toolkit-stocks-in-the-future/repo/docs/map/_meta/schema.md

2.1 KiB

Schema — the rules of this map

The closed set of node types, the labels they carry, and the naming they follow. When practice and this file disagree, reconcile the same day — schema drift is how maps rot.

Node types

type: Lives at Carries
object objects/<cluster>/<slug>.md one noun: why / shape / connected to / hits
process processes/<slug>.md one movement: input → movement → output

That is the whole set. effects/CONTEXT.md is an index, not a node type — it holds no facts of its own, only pointers into the two types above.

Frontmatter

Object cards:

type: object
cluster: identity | org | gradebook | money | trading | content
universe: live | leftover | ghost
status: stub | verified | stale
entity: app/models/order.rb        # the file that owns the fact

Process cards add consumes: and produces: as relative links to object cards. Those links draw the graph on their own — do not maintain a separate edge list.

Label rules

  • universe: live is the default. leftover and ghost must say why in the card body.
  • status: verified requires a date, a commit, and citations in the card. A card with no path:line may not be verified.
  • status: stale is allowed and preferred over a confident wrong claim.
  • entity: is one path. If a noun is owned by several files, the card's Shape section lists them; entity: names the primary one.

Naming

  • Slugs: kebab-case, singular, matching the product word where it differs from the class name (grade-level.md owns Grade).
  • Clusters are the six above. Adding a seventh requires three nouns that genuinely do not fit — not one that is merely new.
  • _meta/ and _templates/ hold rules and blanks. Underscore = about the map, not of it.
  • AGENTS.md and routing.md are generated from CLAUDE.md by _meta/sync-twins.sh. Never hand-edited.

Citation rule

Code is the source of truth. Cite path:line. If a comment and the code disagree, the code wins and the card says so. Never paste behaviour into a card that the source already states — point at it.