Compare commits

..

20 commits

Author SHA1 Message Date
root
51c03f7ade phase13.5: formally close runner trustgate remediation 2026-08-31 23:00:47 +00:00
root
738af54c93 phase13.5: verify recreate post-gates against target class 2026-08-31 18:54:03 +00:00
root
35bbdd89e7 phase13.5: add bounded recreate startup readiness gate 2026-08-31 17:29:06 +00:00
root
b61acd3f08 phase13.5: fix remediation recreate Gate O runner allowance 2026-08-31 16:13:40 +00:00
root
d6394ef327 RAIN: Phase 13.5 Emergency Rollback CP Repair - target-image-based rollback pre-gates (current/recovery gold). SoT local, no push. 2026-08-31 12:54:03 +00:00
root
a7336c2585 RAIN: Phase 13.5 Remediation Recreate Gate Decoupling + fixed-ID rollback-to-current-gold-anchor (SoT) 2026-08-31 11:38:41 +00:00
root
41c82f14d3 RAIN Hotfix: Partial Archive Cleanup Semantics (PARTIAL statt UNKNOWN fuer image.tar+fehlende Metadaten, fail-closed) 2026-08-31 07:51:49 +00:00
root
561133f39b RAIN Hotfix: Remediation Archive Build-Input-Semantik (branch-spezifisch, recovery unveraendert) 2026-08-31 07:02:48 +00:00
root
75b594f225 Phase 13.5: verify-runner-remediation-image session-binding hotfix (load_remediation_source_state) 2026-08-31 05:57:34 +00:00
root
ce58a067ee Phase 13.5: Deploy verified partial-archive control-plane patch (cleanup-partial-remediation-archive + active remediation image state validation) 2026-08-30 20:39:13 +00:00
root
3e65c36cce Phase 13.5: Orphan Remediation Staging Cleanup Control-Plane Hotfix (cleanup-partial-remediation-staging) 2026-08-30 17:31:47 +00:00
root
f69774e34b Phase 13.5 Remediation Staging Consistency + Active Image ID Hotfix: remediation_staging_matches_expected entfernt fehlerhaftes | sort (SHA-sortiert) das gegen Pfad-sortiertes Staging-Manifest verglich -> Staging-Check FAIL CLOSED trotz identischem Inhalt. Fix: exp ohne | sort (remediation_expected_manifest erzeugt bereits Pfad-sortiert). Active-ID bereits state-basiert (remediation_session/full_image_id), 41e357a1 nur noch dokumentarisch. Verdict A. 2026-08-30 16:58:10 +00:00
root
c95fbe6b3c Phase 13.5 Remediation Build-Context Control-Plane Rotation: build-runner-remediation von /opt/historical-v2 auf immutable Gold-Source-Session 20260830_104127 + autorisierter Runner-Overlay 6cca3c55; Guards A/B/C/D/N auf Gold+Overlay; Guard I diagnostisch (No-op-Tag-Loss NON-BLOCKING); verify_runner_remediation_image 62+1 + repository.py Hard Gate; verify_archive/pin/archive aktive Build-Session-Identity; deterministischer REMEDIATION_BUILD_INPUT_SHA 2026-08-30 16:36:42 +00:00
root
8161208f1c Phase 13.5 Archive Metadata Variable Hotfix: gen_archive_meta nach write_runtime_config/write_app_manifest + SHA-Validierung (unbound variable Fix) 2026-08-30 14:22:14 +00:00
root
9685b616cf Phase 13.5 Recovery Archive Hotfix: Fix A (Reihenfolge-Bug nach docker image save) + cleanup-partial-recovery-archive Command 2026-08-30 11:34:11 +00:00
root
a9d7da14f5 Phase 13.5 Recovery Rebuild Guard Source Rotation: rebuild_guards Guard A/B/C auf Gold-Source-Session (verify-recovered-gold-build-source + verify_recovery_build_input), Host-SoT-Drift non-blocking Diagnostic, kein /opt/historical-v2 als Recovery-Build-Blocker 2026-08-30 11:10:07 +00:00
Rain Ocampo
d7db920116 Phase 13.5 Nested Verify Exit Hotfix: verify_deployed_gold_source + verify_recovered_gold_build_source exit 0 -> return 0 (nested-call Guard-Defekt) 2026-08-30 10:28:46 +00:00
Rain Ocampo
8f29924ec6 Phase 13.5 Recovery Control-Plane Rotation: real recover freigegeben, Build-Context-Rotation (kein /opt/historical-v2), Recovery-Identity-Rotation (CURRENT_RECOVERY_ID statt d2db), READY-Gate, wrapper-sha 2026-08-30 09:26:59 +00:00
root
563ed111b9 Phase 13.5: Deployed Gold Source Recovery Control Plane - feste Subcommands verify-deployed-gold-source / dry-run recover-gold-build-source / recover-gold-build-source (real blockiert) / verify-recovered-gold-build-source; Gold-Source fest an Container+Image+63-File-Manifest gebunden, kein latest, kein full_sot_backup, immutable Target, FAIL CLOSED 2026-08-30 08:46:32 +00:00
root
65c1d57fa7 Phase 13.5: Image Retention & Archive Control Plane - feste Subcommands archive/pin/verify-archive/verify-pin/verify-ready/dry-run restore (FAIL CLOSED, kein Overwrite, kein Coolify-Cleanup-Disable, kein coolify.managed-Spoof); Restore nur dry-run (real blockiert) 2026-08-30 06:05:56 +00:00
2 changed files with 2144 additions and 100 deletions

View file

@ -0,0 +1,90 @@
# Phase 13.5 — Runner Remediation + Control Plane + TrustGate Canonical Path (FORMAL CLOSURE)
**Status:** FORMALLY CLOSED (Dokumentation/SoT abgeschlossen, Runtime unverändert)
**Datum:** 31.08.2026
**Autor:** Red Queen (Rain Ocampo / Hermes)
**Freigabe:** Christian List (Owner)
---
## 1. Finales Verdict
> **PHASE 13.5 CLOSED — RUNNER REMEDIATION + CONTROL PLANE + TRUSTGATE CANONICAL PATH VERIFIED**
Phase 13.5 ist formal geschlossen. Die autoritative Closure-Evidence wurde in Red Queens Ausführungs-/Workspace-Kontext erzeugt und dort verifiziert:
- **Closure Record:** `/opt/data/rq_phase135_FORMAL_CLOSURE.md` (Red-Queen-Workspace-Kontext)
- **Authoritative Runner/TrustGate Evidence:** `/opt/data/rq_phase135_runner_trustgate_final/final-evidence.md` (SHA `5538ecf57ce602afaddab58534ccda05ffcdf311ed6f840532d9bad8283ef097`, Red-Queen-Workspace-Kontext)
---
## 2. Runtime (unverändert, verifiziert 31.08.2026)
| Feld | Wert |
|---|---|
| Container | `513b5b814d8d245db3f4db57d169d24cc9a69def655a2d66de7ffe4460452c7f` |
| Image | `sha256:f72b27e72fc6418edde5810090dad62538f2f85903424992691d79cfc69b8884` |
| Running / RestartCount | `true` / `0` |
| health / ready | `200` / `200` |
| Wrapper SHA | `109a5258bc306084f6909b3903294870b356eb3a6b244ad02b3599d4d02e8e1d` |
| Commit | `738af54` (NO PUSH) |
| Runner SHA (deployt) | `6cca3c55bb559d75be2f58e59c231003902f124a54ada25582970524599f0752` |
| repository.py SHA | `8fff892f52a612f464b5be21c66ef7787a47f2d7d049f815ef87837553c2a228` |
---
## 3. Kernbefunde (verifiziert)
- **Runner → BackfillOrchestrator:** bewiesen (Thin CLI Facade, kein direkter insert_*).
- **TrustGate:** mandatory im produktiven Pfad.
- **UNKNOWN / UNTRUSTED / CONDITIONAL / MISSING / EXCEPTION:** FAIL CLOSED.
- **Legacy Direct-Write Bypass:** über produktiven Wrapper/Runner unerreichbar.
- **TrustGate Harness:** PASS (36/36 + 27/27 + 17/17).
- **Service:** healthy.
- **Keine produktive Backfill-Ausführung** während Abschlussvalidation.
---
## 4. Wichtige Limitation — DB E2E
**Es wurde KEIN mutierender DB-E2E-Test erzwungen.** Über den verfügbaren Red-Queen-Control-Plane-Zugang war kein sicherer isolierter/read-only DB-Verifikationspfad vorhanden. Gemäß Fail-Closed-Prinzip wurde **§7D** angewendet. Persistence-Invariants wurden statisch + Harness verifiziert.
**Korrekte Aussage:** *"Canonical Runner/TrustGate path and persistence gating verified statically and via isolated harness; production DB mutation was intentionally not performed."*
---
## 5. Deferred Risks (offen, NICHT jetzt ändern)
- **#1 Legacy Scripts:** `run_backfill.py` / `run_phase11_pilot.py` existieren im Container, rufen `orch.run()` ohne TrustGate — über produktiven Wrapper unerreichbar, aber Code-Präsenz vergrößert Attack-Surface. → spätere Hardening-Mission.
- **#2 Dataset-Version TOCTOU:** `get_or_create_dataset_version` ohne UNIQUE auf Hash → potenzielle doppelte Dataset-Version-Metadaten bei parallelen identischen Requests. → spätere Repair-/Hardening-Mission.
- **Deferred Validation:** Vor echtem produktivem Backfill erforderlich: vertrauenswürdige Data Source, ausreichende Provenance, TrustGate TRUSTED, kontrollierter kleiner Pilot, DB Before/After, Qualitätsprüfung. **Der frühere Dukascopy-Pilot ist NICHT als trusted Dataset freigegeben.**
---
## 6. Closure Scope
- CONTROL-PLANE / RUNNER REMEDIATION: **CLOSED**
- TRUSTGATE CANONICAL PATH: **VERIFIED**
- PRODUCTION HISTORICAL DATA QUALITY: **NICHT automatisch freigegeben**
- PRODUCTION BACKFILL: **NICHT freigegeben**
- PHASE 14: **NICHT automatisch gestartet**
---
## 7. Offene Punkte (nach Closure)
- **A.** Trusted Historical Data Source / Provenance
- **B.** Controlled Trusted Provider Pilot
- **C.** Dataset-Version TOCTOU Hardening
- **D.** Legacy Entry-Point Hardening
- **E.** Production Backfill
- **F.** Phase 14
---
## 8. Verweis auf autoritative Evidence
Vollständige Details (Evidence-SHAs, Mutation Accounting, Grenzen) siehe (Red-Queen-Workspace-Kontext):
- `/opt/data/rq_phase135_FORMAL_CLOSURE.md`
- `/opt/data/rq_phase135_runner_trustgate_final/final-evidence.md`

File diff suppressed because it is too large Load diff