Skip to content

Commit 8405d26

Browse files
authored
docs: sync Antigravity governance workflow
Synchronize the Antigravity project control documentation with the confirmation-gated workflow. - Update AGY_PROJECT.md to the current documented command/test state. - Add the Antigravity enforcement bridge. - Keep synthetic-only, human-review, and non-certified boundaries. - No cargo run was performed for this docs-only sync.
1 parent c9b9086 commit 8405d26

2 files changed

Lines changed: 141 additions & 103 deletions

File tree

AGY_PROJECT.md

Lines changed: 45 additions & 103 deletions
Original file line numberDiff line numberDiff line change
@@ -2,39 +2,40 @@
22

33
## 1. Zweck
44
- Diese Datei dient als lokale Steuerungsdatei für die Sparkctl-Entwicklungsarbeiten mit Antigravity.
5-
- Sie ist kein Ersatz für `AGENTS.md`.
6-
- `AGENTS.md` und die Skills unter `.agents/skills/**/SKILL.md` bleiben die vorrangig verbindlichen Arbeitsregeln.
5+
- Sie ist kein Ersatz für AGENTS.md.
6+
- AGENTS.md und die Skills unter .agents/skills/00_project_system/SKILL.md bleiben die vorrangig verbindlichen Arbeitsregeln.
77
- Diese Datei konkretisiert und priorisiert lediglich den aktuellen lokalen Backlog für diese Arbeitsumgebung.
88

99
---
1010

1111
## 2. Aktueller lokaler Stand
12-
- **Branch:** `docs/spark-hackathon-governance`
12+
- **Branch:** `docs/project-governance-sync`
1313
- **Letzte relevante Commits:**
14-
- `dcfbd02` docs: sync alignment after context render
15-
- `d00132b` feat: wire context render command
16-
- **Tests letzter Stand:** 69 PASS laut lokalem Audit/Teststand.
14+
- `c9b9086` docs: polish README presentation
15+
- `b9191af` feat: complete Sparkctl CLI command surface
16+
- **Tests letzter Stand:** 73 PASS dokumentiert laut lokalem Audit/Teststand in docs/SPARK_ALIGNMENT.md.
1717

1818
---
1919

2020
## 3. Wired Commands
21-
Folgende Befehle des CLI `agy-ct` sind vollständig verdrahtet:
22-
- `agy-ct package verify`
23-
- `agy-ct package replay`
24-
- `agy-ct package inspect`
25-
- `agy-ct schema check`
26-
- `agy-ct context validate`
27-
- `agy-ct context build`
28-
- `agy-ct context render`
21+
Folgende 11 Befehle des CLI `agy-ct` sind vollständig verdrahtet:
22+
- `agy-ct package verify` — wired to `verify_cmd::run`
23+
- `agy-ct package replay` — wired to `replay_cmd::run`
24+
- `agy-ct package inspect` — wired to `inspect::run`
25+
- `agy-ct package compress` — wired to `compress::run`
26+
- `agy-ct package adversarial` — wired to `adversarial::run`
27+
- `agy-ct report export` — wired to `report_export::run`
28+
- `agy-ct notebook bundle` — wired to `notebook_bundle::run`
29+
- `agy-ct schema check` — wired to `schema_check::run`
30+
- `agy-ct context validate` — wired to `context_validate::run`
31+
- `agy-ct context build` — wired to `context_build::run`
32+
- `agy-ct context render` — wired to `context_render::run`
2933

3034
---
3135

3236
## 4. Remaining Placeholders
3337
Folgende Befehle des CLI `agy-ct` sind noch als Platzhalter deklariert:
34-
- `agy-ct package compress`
35-
- `agy-ct package adversarial`
36-
- `agy-ct report export`
37-
- `agy-ct notebook bundle`
38+
- Keine bekannten CLI-Platzhalter mehr.
3839

3940
---
4041

@@ -43,16 +44,15 @@ Folgende Befehle des CLI `agy-ct` sind noch als Platzhalter deklariert:
4344
- Standardmäßiger Containment-Modus: `proceed-in-sandbox`.
4445
- Vor Feature-Änderungen wird eine Read-only/Explore- oder Plan-only-Phase durchgeführt, falls der genaue Task-Kontext unklar ist.
4546
- Bei klar definierten Backlog-Tasks darf lokal implementiert, validiert und lokal committet werden.
46-
- **Kein Push.**
47-
- **Keine PR.**
48-
- **Kein Release.**
47+
- **Push und PR-Erstellung:** Nur nach expliziter menschlicher Bestätigung / Auth-Abfrage erlaubt.
48+
- **Verboten:** Force-Push, destruktive Git-Aktionen (Reset/Rebase), Deploys, Releases, Auslesen von Secrets.
4949

5050
---
5151

5252
## 6. Erlaubte lokale Autonomie
5353
- Durchführung von Read-only Audits im Workspace.
5454
- Änderungen sind nur an Dateien erlaubt, die explizit im Scope der aktiven Backlog-Task aufgeführt sind.
55-
- Ausführung der Rust-Validierung im Verzeichnis `agy7rust/`:
55+
- Ausführung der Rust-Validierung im Verzeichnis `agy7rust/` (bei Bedarf):
5656
- `cargo fmt --all --check`
5757
- `cargo check`
5858
- `cargo test`
@@ -63,18 +63,18 @@ Folgende Befehle des CLI `agy-ct` sind noch als Platzhalter deklariert:
6363

6464
---
6565

66-
## 7. Verboten ohne explizite menschliche Freigabe
67-
- `git push`
68-
- PR (Pull Request) erstellen
66+
## 7. Verboten ohne explizite menschliche Freigabe und Bestätigung/Auth-Abfrage
67+
- `git push` (Erfordert Bestätigung/Auth)
68+
- PR (Pull Request) erstellen/ändern/mergen (Erfordert Bestätigung/Auth)
6969
- Release-Aktionen ausführen
7070
- Deploy-Vorgänge starten
71-
- Branch veröffentlichen (Branch publish)
72-
- Remote-Synchronisierung (Remote sync)
73-
- `git pull` / `git fetch`
74-
- Plugins modifizieren
71+
- Branch löschen (`git branch -d` / `-D`)
72+
- Destruktive Git-Verlauf-Operationen (`git reset`, `git rebase`, `git merge`)
73+
- Raw-API-Zugriffe (`gh api`)
74+
- Plugins modifizieren (außer im Rahmen eines genehmigten Entwurfs)
7575
- Hooks modifizieren
7676
- Skills modifizieren
77-
- `AGENTS.md` modifizieren
77+
- AGENTS.md modifizieren
7878
- Globale Systemeinstellungen oder User-Home-Konfigurationen ändern
7979
- Secrets oder Umgebungsvariablen exportieren/dumpen
8080
- Ordner `reports/` oder `artifacts/` committen (Ausnahme: genehmigte Dokumentenaktualisierungen)
@@ -86,103 +86,45 @@ Folgende Befehle des CLI `agy-ct` sind noch als Platzhalter deklariert:
8686
## 8. Commit-Regeln
8787
- Lokale Commits sind erlaubt, wenn:
8888
- Die Task vollständig abgeschlossen ist.
89-
- Alle Validierungsschritte (Formatierung, Check, Linter, Tests) fehlerfrei durchlaufen wurden.
89+
- Alle Validierungsschritte (Formatierung, Check, Linter, Tests) fehlerfrei durchlaufen wurden (falls anwendbar).
9090
- `git status --short` ausschließlich die erlaubten Scope-Dateien als verändert anzeigt.
9191
- Modifikationen an `reports/performance_baseline.json` zurückgesetzt wurden.
9292
- Keine Berichts- oder Artefaktdateien im Commit-Set enthalten sind.
9393
- Commit-Messages müssen task-spezifisch sein. Zulässige Formate:
9494
- `feat: wire package compress command`
95-
- `docs: sync alignment after package compress`
96-
- `feat: wire package adversarial command`
97-
- `docs: sync alignment after package adversarial`
98-
- **Kein Push, keine PR.**
95+
- `docs: sync Antigravity governance workflow`
96+
- **Push und PR-Erstellung erst nach Freigabe und Auth-Bestätigung.**
9997

10098
---
10199

102100
## 9. Backlog
103101

104-
- [ ] **Task 01: agy-ct package compress verdrahten und testen**
105-
- **Scope:**
106-
- `agy7rust/src/bin/agy_ct.rs`
107-
- `agy7rust/tests/spark_roundtrip.rs`
108-
- **Akzeptanzkriterien:**
109-
- `PackageCommands::Compress` routet auf `compress::run`.
110-
- Ein Success-Test läuft vollständig im Temp-Verzeichnis ab.
111-
- Die Ausgabedatei `.spkg` existiert und ist nicht leer.
112-
- Fehlverhalten bei fehlenden oder beschädigten Eingaben wird abgefangen und liefert einen Fehler-Exit-Code.
113-
- Keine Erzeugung von Berichten oder dauerhaften Artefakten.
114-
- Keine echten Daten.
115-
- Rust-Güteprüfungen (`cargo fmt/check/test/clippy`) laufen fehlerfrei durch.
116-
- Lokaler Commit wird erstellt.
117-
118-
- [ ] **Task 02: docs/SPARK_ALIGNMENT.md nach package compress synchronisieren**
119-
- **Scope:**
120-
- `docs/SPARK_ALIGNMENT.md`
121-
- **Akzeptanzkriterien:**
122-
- `package compress` wird als "wired and functional" gelistet.
123-
- Die verbleibenden Platzhalter werden aktualisiert.
124-
- Der Teststatus wird auf den neuesten PASS-Wert aktualisiert.
125-
- Keine neuen Claims.
126-
- Lokaler Commit wird erstellt.
127-
128-
- [ ] **Task 03: agy-ct package adversarial verdrahten und testen**
129-
- **Scope:**
130-
- `agy7rust/src/bin/agy_ct.rs`
131-
- `agy7rust/tests/spark_roundtrip.rs`
132-
- **Akzeptanzkriterien:**
133-
- `PackageCommands::Adversarial` routet auf `adversarial::run`.
134-
- CLI-Integrationstest läuft isoliert im Temp-Verzeichnis.
135-
- Führt 5 simulierte Manipulationsprüfungen auf manipulierten `.spkg` Paketen aus und verifiziert den fehlerhaften Zustand.
136-
- Keine Erzeugung von Berichten oder dauerhaften Artefakten.
137-
- Keine echten Daten.
138-
- Rust-Güteprüfungen laufen fehlerfrei durch.
139-
- Lokaler Commit wird erstellt.
140-
141-
- [ ] **Task 04: docs/SPARK_ALIGNMENT.md nach package adversarial synchronisieren**
142-
- **Scope:**
143-
- `docs/SPARK_ALIGNMENT.md`
144-
- **Akzeptanzkriterien:**
145-
- `package adversarial` wird als "wired and functional" gelistet.
146-
- Die verbleibenden Platzhalter werden aktualisiert.
147-
- Keine neuen Claims.
148-
- Lokaler Commit wird erstellt.
149-
150-
- [ ] **Task 05: report export read-only analysieren**
151-
- **Scope:** Read-Only
152-
- **Akzeptanzkriterien:**
153-
- Realer CLI-Status geklärt.
154-
- Vorhandene Backend-Logik unter `agy7rust` ermittelt.
155-
- Für die Verdrahtung benötigte Dateien gelistet.
156-
- Keine Code- oder Dokumentationsänderungen vorgenommen.
157-
158-
- [ ] **Task 06: notebook bundle read-only analysieren**
159-
- **Scope:** Read-Only
160-
- **Akzeptanzkriterien:**
161-
- Realer CLI-Status geklärt.
162-
- Vorhandene Backend-Logik unter `agy7rust` ermittelt.
163-
- Für die Verdrahtung benötigte Dateien gelistet.
164-
- Keine Code- oder Dokumentationsänderungen vorgenommen.
102+
- [x] **Task 01: agy-ct package compress verdrahten und testen** (Erledigt / Obsolet laut README.md)
103+
- [x] **Task 02: docs/SPARK_ALIGNMENT.md nach package compress synchronisieren** (Erledigt / Obsolet laut README.md)
104+
- [x] **Task 03: agy-ct package adversarial verdrahten und testen** (Erledigt / Obsolet laut README.md)
105+
- [x] **Task 04: docs/SPARK_ALIGNMENT.md nach package adversarial synchronisieren** (Erledigt / Obsolet laut README.md)
106+
- [x] **Task 05: report export read-only analysieren** (Erledigt / Obsolet laut README.md)
107+
- [x] **Task 06: notebook bundle read-only analysieren** (Erledigt / Obsolet laut README.md)
165108

166-
- [ ] **Task 07: Final Local Audit**
167-
- **Scope:** Read-Only
109+
- [ ] **Task 07: Final Local Audit and PR Handoff Review**
110+
- **Scope:** Read-Only / Documentation
168111
- **Akzeptanzkriterien:**
169112
- Workspace ist sauber.
170-
- Alle wired/placeholder Befehle stimmen mit Code und Dokumenten überein.
171-
- `README.md` und `docs/SPARK_ALIGNMENT.md` sind synchron.
113+
- Alle wired Befehle stimmen mit Code und Dokumenten überein.
114+
- README.md und docs/SPARK_ALIGNMENT.md sind synchron.
172115
- Berichte und Artefakte sind unverändert.
173116
- Eventuelle verbleibende Remote/PR-Risiken sind erfasst.
174117

175118
- [ ] **Task 08: Remote/PR-Strategie abstimmen**
176119
- **Scope:** Read-Only bis zur Freigabe.
177120
- **Akzeptanzkriterien:**
178121
- Offene PRs berücksichtigt.
179-
- Kein Push oder PR ohne explizite Freigabe.
122+
- Push/PR wird nach Bestätigung / Auth-Freigabe ausgeführt.
180123

181124
---
182125

183126
## 10. Nächster Task
184-
- **Next:** `Task 01 — agy-ct package compress verdrahten und testen`.
185-
- **Vor Start von Task 01:** Read-only Prüfung, ob die Signatur von `compress::run` und der Input/Output-Kontrakt stabil sind.
127+
- **Next:** `Task 07 — Final Local Audit and PR Handoff Review`.
186128

187129
---
188130

Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
# SPARKctl Antigravity Enforcement Bridge
2+
3+
> [!IMPORTANT]
4+
> **Status**: Active Project Reference. This document maps the synchronized autonomous-but-confirmation-gated governance workflow for Antigravity, distinguishing it from legacy Codex hooks and inert workspace configurations.
5+
6+
This enforcement bridge documents the active security boundaries, Antigravity permissions, local Git settings, and legacy Codex hook layers for the `comptext-sparkctl` workspace.
7+
8+
## 1. Antigravity Permission Model
9+
10+
Antigravity operates under a synchronized workflow allowing local autonomy combined with confirmation-gated remote publishing gates:
11+
12+
* **ALLOWED (Autonomous Local Work)**:
13+
* Local read-only git inspection (`git status`, `git diff`, `git branch`, etc.)
14+
* Local staging (`git add`, `git restore --staged`)
15+
* Local commits (`git commit`)
16+
* Read-only GitHub commands (`gh pr list`, etc.)
17+
* **ASK / CONFIRMATION REQUIRED (Auth Boundaries)**:
18+
* Remote publishing/push (`git push`)
19+
* Pull Request write operations (`gh pr create`, `gh pr edit`, `gh pr ready`, `gh pr merge`)
20+
* *Note: Push and PR creation are allowed only after a visible human confirmation or Auth prompt.*
21+
* **DENIED (Strictly Forbidden)**:
22+
* Force-push (`git push --force`, `git push -f`)
23+
* Destructive history manipulation (`git reset`, `git rebase`, `git merge`)
24+
* Tagging and branch deletions (`git tag`, `git branch -d`, `git branch -D`)
25+
* Direct raw GitHub API writes (`gh api`) or release modifications (`gh release`)
26+
* Remote deploys or publications (`vercel`, `netlify`, etc.)
27+
* Environment dumps (`env`, `printenv`, `Get-ChildItem Env:`)
28+
* Credential or secret file reads (`.env`, SSH keys, etc.)
29+
* Direct modifications to `.git/` internal metadata
30+
* Execution of `agy-ct run` and `agy-ct benchmark` (which generate unreviewed outputs)
31+
32+
### Superseded Initial Permission Tests (Historical Reference)
33+
34+
For context, the following baseline test results demonstrate the execution boundaries observed under initial strict read-only testing before the current autonomous-but-confirmation-gated workflow was synchronized:
35+
36+
1. **`git status --short`** -> **ALLOWED** (Executed successfully, returning untracked files).
37+
2. **`git diff --stat`** -> **ALLOWED** (Executed successfully).
38+
3. **`git branch --show-current`** -> **ALLOWED** (Returned `docs/project-governance-sync`).
39+
4. **`git push --dry-run origin HEAD:docs/project-governance-sync`** -> **DENIED** (Blocked by initial client rule prior to push confirmation authorization).
40+
5. **`git commit --dry-run`** -> **DENIED** (Blocked by initial client rule prior to local autonomy authorization).
41+
6. **`gh pr list`** -> **DENIED** (Blocked by initial client rule prior to configuration sync).
42+
43+
## 2. Existing Codex Hook Layer
44+
45+
The repository maintains an existing local hook layer designed specifically for Codex workspaces.
46+
47+
* **Hook Enablement**: Configured in `.codex/config.toml` with `hooks = true`.
48+
* **Hook Matchers**: Configured in `.codex/hooks.json` to intercept command-line execution and invoke Python scripts.
49+
* **Tool Policy Checks**: Mapped to `.codex/hooks/pre_tool_use_policy.py`, which blocks:
50+
* `git` write commands (`commit`, `push`, `pull`, `merge`, `rebase`, `tag`, `fetch`)
51+
* `gh` CLI integrations (`pr`, `issue`, `release`)
52+
* Deployments and environments (`vercel`, `netlify`, etc.)
53+
* Credential, `.env`, and SSH key file reads.
54+
55+
### Runtime Boundary
56+
57+
> [!IMPORTANT]
58+
> **Codex hooks are active only for Codex runtimes.** They do not intercept or govern the Antigravity agent execution.
59+
>
60+
> The local `.antigravity` configurations (such as `.antigravity/settings.comptext-sparkctl.json`) and adapted hooks/plugins are mock templates and remain **completely inert** unless explicitly activated in a separately reviewed phase.
61+
>
62+
> Antigravity's active runtime enforcement is managed strictly via global client-side permissions combined with human confirmation/Auth prompts. The push/PR confirmation step is enabled because the human explicitly requested this workflow for cooperative delivery.
63+
64+
## 3. Remote Sync Configuration (Git Push Target)
65+
66+
Under the synchronized workflow, Git remote configurations and push targets are managed as follows:
67+
68+
* **Fetch and Push Target**: The origin push URL points to the GitHub remote repository (`https://github.com/ProfRandom92/comptext-sparkctl.git`).
69+
* **Publishing Gate**: `git push` is not hard-blocked, but is confirmation/Auth-gated.
70+
* **History Integrity**: Force-push (`git push --force` or `-f`) remains strictly denied to protect the remote history.
71+
* **Handoff Approval**: Human confirmation remains the absolute publication boundary before any remote branch update or PR change is merged.
72+
73+
## 4. Safe Workflow Execution
74+
75+
To respect the boundaries defined in `AGENTS.md` and `.agent/skills/06_git_handoff.md`:
76+
77+
1. **Local Inspection**: Running local read-only commands (`git status`, `git diff`, etc.) is fully supported.
78+
2. **Scoped Edits**: File modifications must be limited strictly to the assigned workspace directories (e.g., `docs/context/` or `agy7rust/` within task scope).
79+
3. **Local Commits**: Commits may be created autonomously by the agent once local formatting and testing validation passes.
80+
4. **Remote Publication**: Any push or PR creation must explicitly prompt the user for validation and Auth confirmation.
81+
82+
## 5. Claim Hygiene
83+
84+
This documentation adheres to the rules set forth in `.agents/skills/09_codex_desktop_governance/SKILL.md` and `docs/context/ANTIGRAVITY_MIGRATION_LEDGER.md`:
85+
* No claims of production readiness or enterprise deployment.
86+
* No assertions of legal certification, judicial admissibility, or forensic compliance.
87+
* No declarations of EU AI Act compliance.
88+
* No claims of official SPARK or BMDS status.
89+
* All artifacts, test environments, and ledgers remain synthetic evidence supports subject to human review.
90+
91+
---
92+
**References**:
93+
* `AGENTS.md`
94+
* `.agent/skills/06_git_handoff.md`
95+
* `.agents/skills/09_codex_desktop_governance/SKILL.md`
96+
* `docs/PHASE8B_CODEX_APP_PLUGIN_SCAFFOLD_DESIGN.md`

0 commit comments

Comments
 (0)