Project Forge classifies every piece of information on two axes before deciding where it lives. The first axis is stability: is this information stable enough to persist across runs? The second axis is residence: where is it allowed to live? These axes are related but not identical, and the order in which you apply them is enforced by the system.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/XxYouDeaDPunKxX/GPT-PF-Chat-GPT-Project-Forge/llms.txt
Use this file to discover all available pages before exploring further.
Stability classes
Project Forge recognizes two stability classes, defined in01_RULES.md:
PERSISTENT — information that is stable enough to persist across runs and contexts without contradicting itself. Persistent information may govern downstream decisions, recur coherently, or represent confirmed stable choices. It is a candidate for canonical, artifact, or (in narrow cases) runtime residence.
VOLATILE — information that is session-local, transient, run-specific, or not yet confirmed stable. Volatile information may not enter canonical surfaces. It belongs in artifacts, runtime input, or the DO_NOT_STORE sink depending on its role.
Residence classes
Project Forge recognizes four residence classes: CANONICAL — the highest-durability residence. OnlyPERSISTENT information belongs here. Canonical surfaces define the frame, criteria, grammar, and procedure of the system. They must not hold case state or volatile material.
EXTERNAL_ARTIFACT — a durable but subordinate residence. Artifacts may carry persistent or volatile case state. They are external to the core, which is what makes the system auditable and resettable.
RUNTIME_OPERATOR_INPUT — information that is provided in the current session rather than pre-serialized. May hold persistent information only through a narrow explicit exception (see below). Commonly holds volatile material such as current-turn objectives, temporary constraints, and materials under active evaluation.
DO_NOT_STORE — a sink classification. Material classified here must not be serialized, promoted, or included in any output surface. This residence class prevents temporary reasoning, unsafe fragments, and session-only residue from leaking into durable surfaces.
The stability-to-residence rule
Stability and residence are decided in strict order:- Classify stability first.
- Assign residence second.
Allowed and forbidden combinations
| Stability | Residence | Status |
|---|---|---|
| PERSISTENT | CANONICAL | Allowed |
| PERSISTENT | EXTERNAL_ARTIFACT | Allowed |
| PERSISTENT | RUNTIME_OPERATOR_INPUT | Allowed (exception only) |
| VOLATILE | EXTERNAL_ARTIFACT | Allowed |
| VOLATILE | RUNTIME_OPERATOR_INPUT | Allowed |
| VOLATILE | DO_NOT_STORE | Allowed |
| VOLATILE | CANONICAL | Forbidden |
| PERSISTENT | DO_NOT_STORE | Forbidden |
BLOCKED.
DO_NOT_STORE
DO_NOT_STORE is not just a label. It is a sink. Material classified as DO_NOT_STORE must not be:
- serialized into any output
- promoted to a higher or more durable residence
- entered into SSOT or initial basis
- entered into a handoff artifact
- treated as stable project basis at any point
DO_NOT_STORE paired with minimum state BLOCKED, not a creative residence assignment.
Source validation
Before material can become official project basis, it must pass source validation. The validation criteria from01_RULES.md are:
- Authority — the source has the standing to govern the relevant decision
- Direct relevance — the material applies directly to the case at hand
- Explicit role — the source’s role in the opening package is explicitly defined
- Freshness — when the material is time-sensitive, recency is confirmed
- Contradiction status — the source does not contradict a higher-authority or already-validated surface