Assumptions Audit
Identify consequential assumptions, test them against available evidence, and expose uncertainty before work begins. Do not implement the proposal.
Codex Runtime
Operate directly in the main Codex agent. Keep the audit read-only and use repository inspection and non-mutating verification commands as evidence. No special credentials or external services are required. Never print, log, or expose secret values.
Inputs and Preflight
- Obtain the proposal, plan, or design; its intended outcome; and the repository or artifacts it concerns.
- Identify explicit constraints, accepted facts, and decisions so they are not mislabeled as assumptions.
- Confirm that evidence can be inspected without changing implementation files.
- If the proposal is missing or too ambiguous to extract testable assumptions, stop and name the missing context.
Workflow
- Extract statements whose truth is necessary for the proposal to work. Include technical, product, operational, dependency, sequencing, and user-behavior assumptions.
- Rewrite each assumption as a falsifiable statement. Merge duplicates, but do not hide distinct consequences.
- Gather evidence for every assumption from code, configuration, tests, documentation, history, or command output. Absence of evidence is evidence of uncertainty, not confirmation.
- Assign one confidence level:
- Confident: direct, current evidence supports the assumption.
- Likely: indirect or incomplete evidence supports it and no contradiction was found.
- Unclear: evidence is absent, conflicting, stale, or inaccessible.
- State the concrete consequence if wrong: rework, broken behavior, schedule risk, data loss, security exposure, or invalidated scope.
- Separate gaps answerable inside the repository from gaps requiring external research, stakeholder input, live-system access, or experiments.
- Prioritize assumptions by consequence and uncertainty. Surface high-consequence Unclear items first.
Evidence Rules
- Cite repository evidence as
path:line; cite command evidence with the exact command and decisive output. - Label an Observed fact only when directly supported by inspected evidence.
- Label an Inference when evidence supports a conclusion but does not prove it; state the reasoning.
- Label Unverifiable when required evidence is unavailable; state what evidence would resolve it.
- Never use the proposal itself as evidence that its assumptions are true.
Stop and Error Conditions
- Stop rather than guessing when referenced artifacts cannot be found, evidence access fails, or scope conflicts cannot be reconciled.
- Do not implement, edit code, rewrite the plan, or resolve assumptions on the user's behalf.
- Report partial progress and identify every assumption that could not be evaluated.
Output Contract
Return:
- A short scope and evidence summary.
- A table with
ID,Assumption,Evidence,Confidence,Consequence if wrong, andResearch gap. - A prioritized list of high-consequence Unclear assumptions.
- External-research and stakeholder questions, separated from repository-answerable gaps.
- The overall readiness conclusion and a statement that no implementation was performed.