Skip to main content

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.

Every piece of information that passes through Project Forge is evaluated on two axes before it is allowed to settle anywhere: stability and residence. These are related but distinct properties. Getting them right — in the right order — is what keeps case state out of the canonical core, prevents temporary reasoning from leaking into durable surfaces, and ensures that material earns its place before becoming project basis.
Stability and residence are kept as separate axes because stable information does not automatically become canonical, and volatile information does not automatically become runtime-only. Residence depends on stability, authority, role, and operational consequence — not on stability alone. Conflating the two is a common source of premature promotion.

The Two Axes

Stability

Stability answers: is this information stable enough to persist across runs or contexts? Project Forge defines exactly two stability classes:
  • PERSISTENT — the information is confirmed stable by the operator, or it recurs coherently across at least two cycles without contradiction and without depending on a single run
  • VOLATILE — the information is session-local, run-specific, or transient

Residence

Residence answers: where is this information allowed to live? Project Forge defines four residence classes:
  • CANONICAL — inside the governing canonical files; permanent, normative, non-case-specific
  • EXTERNAL_ARTIFACT — in a defined artifact outside the canonical core; may carry state
  • RUNTIME_OPERATOR_INPUT — provided explicitly by the operator at each run; not stored
  • DO_NOT_STORE — must not be serialized, promoted, or carried forward

The Stability-to-Residence Rule

Stability is decided first. Residence is assigned second. This order matters because assigning residence before stability is closed creates false structure — it gives information a home before knowing whether it deserves one. The allowed and forbidden combinations are exhaustive and fixed:
StabilityResidenceAllowed?
PERSISTENTCANONICAL✅ Allowed
PERSISTENTEXTERNAL_ARTIFACT✅ Allowed
PERSISTENTRUNTIME_OPERATOR_INPUT✅ Only through the explicit exception
VOLATILEEXTERNAL_ARTIFACT✅ Allowed
VOLATILERUNTIME_OPERATOR_INPUT✅ Allowed
VOLATILEDO_NOT_STORE✅ Allowed
VOLATILECANONICAL❌ Forbidden
PERSISTENTDO_NOT_STORE❌ Forbidden
When stability and residence pull in different directions, the most conservative residence that still respects authority must be chosen.

The Forbidden Combinations

The two forbidden combinations are not edge cases — they represent the system’s two main failure modes: VOLATILE → CANONICAL would allow transient or session-specific content to contaminate the governing files of the system. Even if it looks useful in the moment, volatile material in canonicals destroys recoverability and authority clarity. PERSISTENT → DO_NOT_STORE would erase stable, normative information that should be available for future use. DO_NOT_STORE is for temporary residue — not for information that governs downstream decisions.

The PERSISTENT → RUNTIME_OPERATOR_INPUT Exception

This exception exists for a narrow class of cases where information is stable in nature but must still be reaffirmed explicitly by the operator at each run. It is allowed only when all required positive conditions are true and no disqualifier is active. Required positive conditions:
  • operator_confirmation_required — the information must be explicitly reaffirmed each run because of operational risk, explicit human responsibility, or a non-delegable local choice
Disqualifiers (either one blocks the exception):
  • operator_preference_only — repetition by habit or preference is not sufficient to keep material at runtime-only residence
  • canonical_or_artifact_mandatory — if the information stably governs downstream decisions, runtime-only residence is insufficient regardless of operator preference
This exception is intentionally hard to trigger. It is not a convenience feature. Operator preference alone does not block promotion to CANONICAL or EXTERNAL_ARTIFACT.

DO_NOT_STORE

DO_NOT_STORE is a sink, not a label. Material classified this way must not be serialized, must not be promoted, must not enter handoff, must not enter SSOT, and must not become stable project basis. This is how the system prevents temporary reasoning, unsafe fragments, and session-only residue from leaking into durable surfaces.
DO_NOT_STORE material leaves no authorized trace in the system’s persistent surfaces. It is consumed in the current run and goes no further. If material ends up here, there is no path back from it to official basis.

Source Validation Criteria

Before material can become official project basis — regardless of where it will eventually reside — it must pass source validation. Project Forge defines five validation criteria from 01_RULES.md:
  • Authority — does the source carry legitimate authority for this question?
  • Direct relevance — is the source directly relevant to the current objective?
  • Explicit role — is the source’s role explicitly defined, not assumed?
  • Freshness — when the question is time-sensitive, is the source current?
  • Contradiction status — does the source contradict other validated material?
No unvalidated source may become official project basis. “It sounds plausible” and “we discussed it earlier” are not validation.

Promotion Eligibility

Promotion moves material into a more durable or authoritative residence. It is intentionally conservative. Material is eligible for promotion only when all three of the following conditions are true:
1

Stabilized

The content is confirmed stable by the operator, or it recurs coherently across at least two cycles without contradiction and without depending on a single run. One useful result from one session is not stabilized.
2

Normative

The content authorizes, constrains, or governs downstream decisions. Descriptive or contextual material that does not govern anything does not qualify.
3

Non-Case-Specific

The content does not depend on a single machine, anomaly, run, or temporary state. Material tied to one specific case or session cannot be promoted to a general governing surface.
If any one of these three tests fails, promotion does not occur. There is no partial promotion.

Why Promotion Is Conservative

Without a conservative promotion model, information drifts upward in authority — notes become rules, examples become policy, and one useful case pattern hardens into fake general law. The three-condition gate exists to prevent local convenience from becoming system structure. Material should remain external longer rather than being promoted prematurely.

Build docs developers (and LLMs) love