Execution
Detect artifact. Accept: diff, file path, brief text, or HEAD~1..HEAD.
If none provided, ask once: What should I audit? (diff, file, or paste text)
Detect auditors. Check PATH for codex and gemini.
Default: one OpenAI-family + one Google-family, excluding caller's family.
Cap at 4 auditors total.
Dispatch in parallel via background bash -- never hand off to user.
Prompt each: security findings, logic issues, reliability concerns, test gaps.
codex "Review for security, logic, reliability, test gaps: <artifact>" &
gemini "Review for security, logic, reliability, test gaps: <artifact>" &
wait
Reconcile. Deduplicate. Classify:
- CONSENSUS -- flagged by 2+ auditors
- CONTESTED -- flagged by 1 auditor only
- PASS -- no issues
Emit report using the format below.
Report format rule (all cross-audit outputs)
Any reconciliation report presenting multiple paths MUST use this structure:
VERDICT
<one-line converged recommendation>
OPTIONS
A -- <short-name>: <one-line what it is>
B -- <short-name>: <one-line what it is>
REVIEWER CONVERGENCE
<reviewer>: <letter> <score> "<their call>" => Option <letter> -- <name>
RECOMMENDATION
Option <X> -- <name> because <one-sentence why>.
NEXT ACTION
<exact command or step>
Never write "Option A" or "Option B" without "-- name" immediately after it on the same line.
Output contract
Emit a gate-result block as the LAST content of your output. Nothing
after it. Use gate="cross-audit". Statuses: PASS | CONDITIONAL | WARN | FLAG | FAIL.
Format:
{
"schema_version": "1.0",
"gate": "cross-audit",
"status": "<STATUS>",
"project_type": "<from project-type-detector>",
"lenses": [],
"affected_artifacts": [],
"accounting": {"duration_ms": 0, "lenses_invoked": 0, "cost_usd": null},
"remediation": [],
"receipts_ref": null,
"supersedes": null,
"gate_id": "<gate-with-colons-replaced-by-dashes>-<ts>-<rand4>",
"emitted_at": "<ISO-8601>"
}
1---2name: ijfw-cross-audit-43description: Generate a cross-platform AI audit (Trident) on a diff, brief, or artifact. Trigger: 'cross audit', 'Trident', 'second opinion', 'check with other AIs', 'cross-check this', 'get another perspective', /cross-audit4---56## Execution781. **Detect artifact.** Accept: diff, file path, brief text, or `HEAD~1..HEAD`.9 If none provided, ask once: `What should I audit? (diff, file, or paste text)`10112. **Detect auditors.** Check PATH for `codex` and `gemini`.12 Default: one OpenAI-family + one Google-family, excluding caller's family.13 Cap at 4 auditors total.14153. **Dispatch in parallel via background bash** -- never hand off to user.16 Prompt each: security findings, logic issues, reliability concerns, test gaps.17 ```bash18 codex "Review for security, logic, reliability, test gaps: <artifact>" &19 gemini "Review for security, logic, reliability, test gaps: <artifact>" &20 wait21 ```22234. **Reconcile.** Deduplicate. Classify:24 - CONSENSUS -- flagged by 2+ auditors25 - CONTESTED -- flagged by 1 auditor only26 - PASS -- no issues27285. **Emit report** using the format below.2930## Report format rule (all cross-audit outputs)3132Any reconciliation report presenting multiple paths MUST use this structure:3334```35VERDICT36 <one-line converged recommendation>3738OPTIONS39 A -- <short-name>: <one-line what it is>40 B -- <short-name>: <one-line what it is>4142REVIEWER CONVERGENCE43 <reviewer>: <letter> <score> "<their call>" => Option <letter> -- <name>4445RECOMMENDATION46 Option <X> -- <name> because <one-sentence why>.4748NEXT ACTION49 <exact command or step>50```5152Never write "Option A" or "Option B" without "-- name" immediately after it on the same line.5354## Output contract5556Emit a `gate-result` block as the **LAST** content of your output. Nothing57after it. Use `gate="cross-audit"`. Statuses: `PASS | CONDITIONAL | WARN | FLAG | FAIL`.5859Format:6061```gate-result62{63 "schema_version": "1.0",64 "gate": "cross-audit",65 "status": "<STATUS>",66 "project_type": "<from project-type-detector>",67 "lenses": [],68 "affected_artifacts": [],69 "accounting": {"duration_ms": 0, "lenses_invoked": 0, "cost_usd": null},70 "remediation": [],71 "receipts_ref": null,72 "supersedes": null,73 "gate_id": "<gate-with-colons-replaced-by-dashes>-<ts>-<rand4>",74 "emitted_at": "<ISO-8601>"75}76```