-
Notifications
You must be signed in to change notification settings - Fork 0
AI Start Here
XCSV-AI-CONTRACT: 1.0.0
This is the canonical operating contract for AI-assisted work across the XCSV Arma 3 Exile estate.
Core rule: Never begin from what the roadmap says needs building. Begin by proving what remains to be built.
The desktop C:\Users\Architect\Desktop\ARMA3_EXILE_CODEX\ROADMAP.md remains the authoritative full roadmap for priority, decisions, sequencing, refuted hypotheses and live operating memory. This GitHub document defines how an AI must interpret and reconcile that roadmap before acting.
When Architect says any equivalent of:
- read the GitHub
- read GitHub
- read the roadmap
- get caught up
- resume XCSV
- see what is next
enter READ_ONLY_BOOTSTRAP first.
Do not implement, repair, deploy, commit, pull over dirty work, repack PBOs, change the database, change BattlEye, or mutate the live server during bootstrap unless Architect explicitly combines the request with authority to proceed.
- Read this contract completely.
- Read the local authoritative desktop
ROADMAP.mdif available. - Run
D:\XCSV\tools\ai-reconcile.ps1and inspect every repo it reports. - Use
D:\XCSV\tools\search-rag.ps1 -Query "<target terms>"before broad filesystem archaeology. - Inspect the relevant local working tree before trusting GitHub: current branch,
git status, current commit, uncommitted changes and relevant target files. - Compare the local commit to the remote branch without assuming GitHub is newer or authoritative for live state.
- Inspect recent relevant commits and existing implementation before proposing new code.
- Inspect relevant open GitHub issues/project items before creating a new execution record.
- If the claim is operational, inspect the relevant live evidence: deployed artifact, RPT/HC RPT, database query, process state, GUARD state, BattlEye/infiSTAR logs or other source of truth.
- Classify the requested/next roadmap item using the reconciliation states below.
- Identify only the remaining delta.
- Select the Gauntlet risk level.
- Report a concise XCSV BOOTSTRAP REPORT before implementation.
Different sources answer different questions. Do not flatten them into one truth source.
| source | authority |
|---|---|
Desktop ROADMAP.md
|
priority, intent, decisions, sequence, rejected/refuted paths |
| Local working tree | what code/files actually exist on this machine now |
| Local git history | what has been committed locally |
| GitHub remote | what has been published/pushed |
| GitHub Issues / Project | active execution record, ownership, current workflow state |
| Hub submodule pointers | which member-repo commits the hub currently references |
| Live server/deployed artifacts | what is actually deployed/running |
| Runtime evidence | whether the deployed behavior actually worked |
| Wiki/README/site | durable explanation and navigation; not proof by itself |
If these disagree, the disagreement is the finding. Do not silently choose the most convenient source.
Before implementation, assign exactly one state to the target:
Equivalent functionality exists and the required verification evidence exists.
Action: do not rebuild. Correct stale roadmap/wiki/issues if needed.
Implementation appears to exist, but required test/runtime/deployment proof is missing.
Action: do not rebuild. Verify the existing implementation.
Some required behavior exists.
Action: identify and implement only the missing delta. Do not create a parallel subsystem.
Roadmap/design exists but implementation does not.
Action: implementation may proceed after Target Lock and the appropriate Gauntlet.
Roadmap, local source, GitHub, submodules, docs or runtime evidence disagree materially.
Action: stop implementation, record the conflict and resolve authority/state first.
A required dependency, permission, environment, evidence source or decision is unavailable.
Action: preserve what is known and report the blocker without fabricating progress.
After reconciliation ask:
What is the smallest remaining delta between the target behavior and what already exists?
Do not restart from a blank-sheet design when 70-90% of the target already exists. Extend, repair, verify or document the existing path unless Architect explicitly authorizes replacement.
This is especially important for Exile because duplicate CfgExileCustomCode registrations, duplicate schedulers, duplicate network handlers and parallel mission systems can actively break production.
Keep it short and factual:
XCSV BOOTSTRAP REPORT
Contract: XCSV-AI-CONTRACT 1.0.0
Mode: READ_ONLY_BOOTSTRAP
Target: <roadmap item or requested area>
Roadmap: <what it says>
RAG/history: <relevant prior result/refuted hypotheses>
Local repo: <branch / clean-dirty / commit>
GitHub: <same commit / mismatch / unknown>
Issue/Project: <existing execution record / none / conflict>
Live evidence: <verified / unavailable / not required>
Classification: VERIFIED_DONE | PRESENT_UNVERIFIED | PARTIAL | PLANNED_ONLY | STALE_OR_CONFLICTED | BLOCKED
Remaining delta: <smallest actual missing work>
Gauntlet: G0 | G1 | G2 | G3 | G4
Conflicts/UNKNOWN: <only material items>
If Architect only said read the GitHub, stop after the bootstrap report and wait for the next instruction.
Reconciliation happens before the Gauntlet.
READ -> RECONCILE -> CLASSIFY -> DELTA -> TARGET LOCK -> GAUNTLET -> VERIFY -> DURABLE SYNC
Canonical Gauntlet flow:
TARGET LOCK -> RECON -> DECOMPOSE -> WORKERS -> ADVERSARIAL CRITICS -> INTEGRATION -> MEASUREMENT -> EVIDENCE -> VERDICT
Risk levels:
- G0 documentation/trivial local work
- G1 isolated implementation; worker + critic
- G2 cross-component work; specialists + critic + integration review
- G3 production-affecting Arma/Exile work; recon + specialists + security/performance review + rollback + runtime evidence
- G4 architecture, persistence, DB mutation, BattlEye/security or deployment infrastructure; full Gauntlet + independent verification
Worker may not self-certify. Keep EVIDENCED / INFERRED / UNKNOWN distinct. Record refuted hypotheses.
To avoid double work, XCSV uses GitHub Issues + GitHub Projects as the execution tracker. The roadmap remains the priority/decision memory; an issue is the active execution record.
Do not introduce Trello, Jira, Asana, Monday, Wrike, Kanban Tool, Linear or another board as a second task authority unless Architect explicitly changes this rule.
For material roadmap work:
- Give the item a stable ID when it becomes active, e.g.
GUARD-REL-002. - Search existing issues before creating one.
- Use one GitHub issue as the execution record.
- Use sub-issues for genuinely separable work, not every tiny code edit.
- Link commits/PRs to the issue or stable ID.
- Do not mark Done until verification and durable-sync requirements are satisfied.
Recommended GitHub Project workflow:
BACKLOG -> RECONCILE -> READY -> IN PROGRESS -> VERIFY -> DONE
Use BLOCKED as an explicit state, not a hidden comment.
Useful fields:
- Roadmap ID
- Owning repo
- Priority
- Reconciliation state
- Gauntlet level
- Verification state
- Target date only when real
Keep the same GitHub issue as the underlying work item rather than duplicating cards in another tracker.
Completed 2026-08-07 (
XCSV-AI-001). The live execution project is XCSV Development (PVT_kwHOAVMLy84Bfp03, project number 1), and hub Issue #1 is in it and pinned. Do not run the creation step below again. The procedure is retained as the reproducible reference for reconciling fields and adding future items.Auth trap - read before concluding Projects access is missing.
gh auth statuscan list more than one credential. On SOVRAN-1 a fine-grained PAT in theGH_TOKENenvironment variable is the active account and has no Projects capability, while an inactive keyring OAuth token already carriesgist, project, read:org, repo.gh auth refreshcannot refresh an env-supplied token, so refreshing looks impossible. ClearingGH_TOKENfor the process falls through to the keyring token and Projects works. Check for a shadowed credential before requesting a scope grant, and never treatgh api repos/... --jq .permissionsas proof of token write capability - that reports the user's repo role, not the token's grant. The only proof of a write is the write.
This setup is authorized as part of XCSV's GitHub-native execution workflow, but it must happen only after local repository reconciliation so no dirty local work is overwritten.
On the first real SOVRAN-1 bootstrap:
- Confirm GitHub CLI authentication:
gh auth status- Ensure the token has GitHub Projects scope:
gh auth refresh -s project- List existing projects before creating anything:
gh project list --owner x-cessive- If an equivalent XCSV execution project already exists, use it. Do not create a duplicate. If none exists, create one:
gh project create --owner x-cessive --title "XCSV Development"- Record the returned project number. Add fields only if equivalent fields do not already exist:
gh project field-create <PROJECT_NUMBER> --owner x-cessive --name "Roadmap ID" --data-type TEXT
gh project field-create <PROJECT_NUMBER> --owner x-cessive --name "Owning Repo" --data-type SINGLE_SELECT --single-select-options "XCSV,XCSV_GUARD,XCSV_ADDONS,Exile,Cross-repo"
gh project field-create <PROJECT_NUMBER> --owner x-cessive --name "Reconciliation" --data-type SINGLE_SELECT --single-select-options "VERIFIED_DONE,PRESENT_UNVERIFIED,PARTIAL,PLANNED_ONLY,STALE_OR_CONFLICTED,BLOCKED"
gh project field-create <PROJECT_NUMBER> --owner x-cessive --name "Gauntlet" --data-type SINGLE_SELECT --single-select-options "G0,G1,G2,G3,G4"
gh project field-create <PROJECT_NUMBER> --owner x-cessive --name "Verification" --data-type SINGLE_SELECT --single-select-options "NOT_REQUIRED,NOT_STARTED,IN_PROGRESS,PASS,BLOCKED"- Add the bootstrap issue to the project:
gh project item-add <PROJECT_NUMBER> --owner x-cessive --url https://github.com/x-cessive/XCSV/issues/1- Pin the bootstrap issue in the hub repo:
gh issue pin 1 --repo x-cessive/XCSV-
Configure useful project views in the GitHub UI if needed: table for reconciliation/detail, board for workflow, roadmap only for items with real dates. Do not invent deadlines merely to populate a roadmap view.
-
Before creating any future issue, search first:
gh issue list --repo x-cessive/XCSV --state all --search "<roadmap id or target terms>"The normal XCSV workflow does not require MCP: local git, GitHub CLI, the canonical contract and ai-reconcile.ps1 are sufficient.
However, the official GitHub MCP Server is a useful optional enhancement for Claude/other MCP-capable development agents because it can expose remote repository, issue, PR and workflow context directly to the agent.
Rules:
- use GitHub's official MCP server only
- prefer OAuth where supported
- never commit PATs/tokens into
.mcp.json,CLAUDE.md, repo config or shell scripts - scope credentials to the minimum needed
- MCP remote state does not outrank the local working tree or live server
- if MCP is unavailable, the workflow must still work through
git/gh
If Claude Code on SOVRAN-1 supports the official remote GitHub MCP flow and Architect wants it enabled, Claude should first inspect existing MCP configuration with /mcp / Claude's MCP commands and avoid adding a duplicate server. Authentication remains local/user-scoped rather than committed with a secret.
Implementation is not complete merely because code exists or was pushed.
For applicable work, close the loop in this order:
- verify the implementation and print/read back changed regions
- run required tests/checks
- collect runtime evidence where the claim is operational
- commit the owning repository
- update authoritative desktop roadmap and owning area note
- update Git-tracked wiki/source documentation
- run
D:\XCSV\tools\build-memory-index.ps1 - run
D:\XCSV\tools\build-docs.ps1 - run
D:\XCSV\tools\build-rag-index.ps1 - update the GitHub issue/project state
- commit/push the hub docs and member-repo/submodule pointer changes as appropriate
- verify local vs remote state and report exact commits plus remaining UNKNOWNs
If the desktop roadmap cannot be updated in the current environment, say so explicitly and leave a visible GitHub planning-state divergence marker rather than pretending synchronization happened.
The XCSV hub contains CLAUDE.md, which imports this contract automatically. Member repositories route Claude back to this contract. Claude Code project instructions are Git-tracked; do not rewrite global %USERPROFILE%\.claude settings unless Architect explicitly asks.
The hub AGENTS.md points here and opencode.json includes this file as project instructions. Member repos also contain AGENTS.md routers.
The repos include .agents/rules/00-xcsv-ai-entrypoint.md. Workspace rules should be Always On. If Antigravity has not activated the committed workspace rule, set it to Always On once; do not create a competing copy of this contract.
Give them this contract plus the specific target evidence they need. Runtime GUARD local models are excluded: they remain tool-less, untrusted, non-load-bearing classifier/explainer components.
When Architect returns to SOVRAN-1/XCSV and starts Claude Code:
- Start Claude from the relevant XCSV repo.
- Say "read the GitHub".
- Claude should discover its repo-local adapter, read this contract, locate the desktop roadmap and run
D:\XCSV\tools\ai-reconcile.ps1. - Claude should inspect Issue
XCSV-AI-001/ hub Issue #1 and existing GitHub Projects state. - If the GitHub Project is not yet configured, follow First-run GitHub Projects setup above rather than inventing another tracker.
- If a member repo adapter or local checkout is missing, Claude should report exactly what is missing and repair only the Git-tracked project setup after checking for local uncommitted work.
- Do not run
/initblindly over existing instruction files. Existing XCSV instruction files are deliberate and should be extended, not replaced. - Return the
XCSV BOOTSTRAP REPORTbefore implementation.
No additional global Claude configuration is required for the normal XCSV workflow.
Roadmap status is intent, not implementation proof.
GitHub absence is not proof that local/live work does not exist.
Source presence is not proof of runtime success.
Do not duplicate substantially equivalent functionality. Find the delta.
If sources disagree, reconcile before implementation.
A completed change leaves code, evidence and durable memory aligned.