Not every strong idea is a decision. Not every convincing line is a decision.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/xxyoudeadpunkxx/signal-rail/llms.txt
Use this file to discover all available pages before exploring further.
04_decision_log.txt is not a brainstorming file, an elegant backlog, or a record of what seems likely to be true. It collects only the choices that have already won against a real alternative and that the project is already treating as real. If you cannot write what it won against, you probably are not in 04 yet.
What it is
04_decision_log.txt keeps the record of decisions already taken. It collects choices the project is already treating as real — lines that have beaten a real alternative, that are already in effect, and for which you can state what they touch, why they won, and what risk opens if they are wrong.
It is not for promising hypotheses. It is not for preferences. It is not for lines the project might adopt. It is for what the project has already chosen.
The test: is it really a decision?
Before recording an entry in04_decision_log.txt, apply all three tests:
- Has it already won against a real alternative? A decision without a
won againstis usually not a decision — it is a preference or an intention. If you cannot name what it beat, do not write it here. - Is the project already treating it as true? The project’s current work, live state, or structure should already reflect this choice. If it is only a future intention, it belongs in
05_latent_ideas.txt. - Can you state what it touches, why it won, and what risk opens if it’s wrong? A decision is only strong if you can read its consequences. If one of these cannot be closed without invention, the entry is probably not ready yet.
D-xx entry structure
Each decision entry uses the following fields. If a field cannot be closed without invention, the entry is not ready.| Field | Purpose |
|---|---|
id | Stable identifier. Never reused, even if a decision is removed or archived. |
date | When the decision was taken or formally recorded. |
state | How closed or reopened the decision currently is. |
decision | The live sentence of the choice — not the long story. |
won against | The real alternative it beat. The absence of this field is a warning sign. |
touches | Which parts of the project this decision moves or constrains. |
links to | Sources or nodes that help explain it. Cross-file IDs stay as references here; they do not become new local IDs. |
external reference | Useful files or references outside the canonical set. Provide context but carry no canonical authority by default. |
impact | What truly changes because of this decision. |
why | Why it won — not just what it is. |
risk if wrong | The cost or distortion if the decision was premature. |
reopening trigger | What would have to happen to reopen it seriously. |
Possible states
| State | Meaning |
|---|---|
freeze | Very difficult to reopen — the closest a decision gets to a constant |
strong but open | It has won, but can still be refined |
in rework | It exists, but its shape is not yet closed |
reopened | It used to be live, but is now under revision |
Entries zone
Add new blocks while keeping numbering stable. Never reuse an ID even if one decision is removed or archived.What does NOT go here
- Preferences — a preference is not enough to make a decision; it does not belong here
- Promising hypotheses →
05_latent_ideas.txt— they matter but have not won yet - Strong ideas that have not yet won →
05_latent_ideas.txt— not decisions yet - Lines not yet truly in the work — a decision should already be influencing the project
- Premature anticipation — using
04to showcase future directions is an error
Key rule
If you cannot writeThis is the single most important routing test for this file. Thewon against, you are usually not in04yet.
won against field forces the question: what real alternative did this beat? If no real alternative exists, there was no choice — only a preference, a hypothesis, or an intention.
Typical errors
- Using
04as an elegant backlog — recording strong-looking ideas that have not actually won - Recording something as a decision when it is only convincing latent material — that belongs in
05_latent_ideas.txt - Skipping
won against— this field is what makes a decision traceable; losing it loses the true perimeter of the choice - Treating an AI suggestion or strong preference as if it were already a decision — AI recommendations are not decisions; neither are preferences, even deeply held ones
- Using
04to anticipate a line that has not really entered the work yet — recording premature intentions corrupts the log