Files changed: - CHANGES.md - VERSION - instructions/gtd-weekly-review/SKILL.md - instructions/link-taxonomy.md - kb/entities/COLLECTION.md - kb/gtd/COLLECTION.md - types/project.md Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01SnAJ7Z3CpVD3PRbN73QtU2
4.6 KiB
profile, outbound, required_by_stack
| profile | outbound | required_by_stack | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| none |
|
true |
kb/gtd/ - Collection Contract
One page per committed initiative (a project in the GTD sense): the goal, the participants, the
durable status, the open loops. This is the half of Muster 4 that kb/ owns - the other half,
the moment-to-moment task list, lives in the task tracker and is joined to a page here only by
name (AGENTS.md invariant 8, § "Two truths about status are forbidden").
Quality goal: a page here should still make sense once the initiative is over. A reader should come away knowing what was attempted, who was in it, what was decided, and what was learned - not a snapshot of what was still open at some point in time.
Inherits kb/CONTRACT.md for the rules the stack enforces - linking mechanics, provenance, citation, the confidence machinery - and kb/CONVENTIONS.md for what this instance decided: language, naming forms, tone, relationship labels, the hedging rule. Neither is restated here.
This collection is required_by_stack. A type-spec declaring name: project whose schema
requires state: must exist (types/type-spec.md § "What the stack still requires of the type
layer"), and kb/gtd/ is whichever collection that type writes into - derived, not hardcoded, so
renaming it stays consistent instead of tripping a stale name.
Types offered
project (tools/wikitool types describe project). The responsibility: field selects the
area:
| Area | Holds |
|---|---|
haus/ |
Household initiatives |
finanzen/ |
Financial initiatives |
technik/ |
Technical initiatives outside any tracked codebase's own scope |
These are areas, not collections: they inherit this contract and carry no COLLECTION.md of
their own. The initial three values are this instance's own starting vocabulary
(types/project.md § Frontmatter) - not a stack requirement, and free to extend.
Two rules unique to this collection
## Statusis durable, never a momentary state (D7). The page never summarizes the task list. "Pilotbetrieb seit 2026-03, zwei Abteilungen angebunden" is a status; "warte auf Freigabe" is a tracker state and does not belong here. The join between a page and its tracker project happens at read time, over the normalized title, and is never stored.## Beteiligtecarries mentions, not links (D28). One to two lines per person, in prose, with no[[wikilink]]and no page of their own. This is a deliberate, named exception tokb/CONTRACT.md§ "Every page should" - a project page with unlinked people in its## Beteiligtesection is conforming, not incomplete. A person earns their own page only once they matter for the knowledge independent of this one initiative. From then on the exception no longer covers them: the mention stays, gains a[[wikilink]], and the project page - this one, not the person's - carries the edge (see Authorised labels).
Authorised labels
Participation is written on the project page, pointing at the person or organization:
[Projekt] involves [Person]. The page is where "who is involved?" gets asked, and a page's own
links block shows only the edges it carries. Two labels are authorised for it, drawn from
instructions/link-taxonomy.md § Operational:
involves- takes part, role not stated. The default for a household initiative.owned-by- the one who answers for the initiative's existence and decisions; the inverse ofowns, which a person page may still carry independently.
The catalogue also holds the RACI labels staffed-by, consults and informs. This instance
does not authorise them - its initiatives are too small for the distinction to earn its upkeep -
but an instance tracking client work adds them here, a deliberate contract change like any other.
Every other direction is see-also only for now. Adding a label is a collection-contract change,
not a way around a refusal.
Outbound linking
A project page links to the entities and concepts its initiative actually touches - the codebase it ships, the system it changes, the concept it applies - and to other project pages it depends on or was split from.
What does not belong here
- A summary of the tracker's current task list. The tracker owns tasks; this page owns the initiative's durable memory.
- A person's own page reached from
## Beteiligte- see above. - An initiative's artifact - the codebase, system or tool it is about. That is
entity(kb/entities/COLLECTION.md), a different page under a different type.