Welcome! We welcome contributions to Safe Start for Codex (Unofficial Windows startup gate for Codex Desktop automations and catch-up pacing from dev-bricks). To preserve local-first process safety, non-destructive configuration gating, unprivileged execution, single-writer filesystem safety, and compliance across multi-host environments, all contributions must adhere to the quality standards and operational invariants defined below.
- 100% Local-First & Zero-Egress (
INV-LOCAL-01): Core startup gating, configuration inspection, and scheduling operate strictly offline using standard libraries. Zero outbound network sockets, zero telemetry, and zero phone-home tracking. All state is host-local. - Non-Elevation & Unprivileged User-Mode (
INV-SEC-02/RunAsInvoker): All CLI commands, background daemons, system tray monitors, and test runners operate strictly within standard unprivileged user space. Administrative elevation (UAC/root/sudo) is strictly prohibited. - Snapshot-Before-Mutation (
INV-FILE-03): Before modifying anyautomation.toml, an atomic snapshot is preserved in~/.codex/automation-safe-start/backups/. - Selective Restoration Guard (
INV-RESTORE-04): Only automations paused by Safe Start in that active session are re-enabled upon release. Pre-existing disabled or paused automations remain untouched. - Conservative Catch-Up Policy (
INV-CATCH-05): Catch-up planning is strictly read-only and diagnostic; it never triggers manual "Run now" actions or forces immediate execution. - Targeted Process Supervision (
INV-PROC-06): Process supervision and termination are constrained to recognized Codex executable names (ChatGPT.exe,codex.exe) with conservative idle age thresholds. - Atomic TOML Serialization (
INV-INTEG-07): Configuration modifications use temporary staging files and atomic renames to prevent partial or corrupted file states on unexpected termination. - Fail-Closed Diagnostics (
INV-FAIL-08): Corrupted configurations or unhandled filesystem states log descriptive diagnostics and halt cleanly without mutating active configurations. - Cross-Platform Operating Parity (
INV-PLAT-09): Windows-targeted production execution accompanied by multi-OS source parsing smoke test suites across Linux and macOS. - Dual Security Response SLA (
INV-SLA-10): Strict commitment to 48-hour initial response and 5-business-day triage via canonical security channels (SECURITY.md). - Version Freeze Discipline (
T-20260920-167562623): Package version1.1.6is strictly frozen acrosspyproject.toml, source code, and all manifests. Do not bump the version string. Document all advancements under## UnreleasedinCHANGELOG.md. - Clean Code & Regression Testing: Every feature or fix must include regression tests in
tests/. Keep test coverage at a 100% pass rate. - Bilingual Parity: Maintain synchronized structural and navigational parity across
README.mdandREADME_de.md(18-point dual anchorssec-01throughsec-18).
# Clone the repository (canonical Plan D location)
git clone https://github.com/dev-bricks/safe-start-for-codex.git "C:\_Local_DEV\repos\safe-start-for-codex"
cd "C:\_Local_DEV\repos\safe-start-for-codex"
# Create virtual environment and install editable dev dependencies
python -m venv .venv
.venv\Scripts\python -m pip install -e ".[dev,tray]"
# Run comprehensive test suite
pytest -ra -v
# Run fast static code analysis
ruff check .
# Check bytecode compilation
python -m compileall -q src tests
# Check whitespace and git diff cleanliness
git diff --check
# Verify version freeze compliance (must return 0 matches)
git diff -G"version = "- Open an issue for architectural discussions before large refactoring.
- Keep provider API keys, tokens, and private credentials strictly outside the repository. Never commit real personal data,
.envfiles, private documents, or absolute host paths. - Ensure all 10 governance invariants (
INV-LOCAL-01toINV-SLA-10) remain VERIFIED. - Pull requests must target the
mainbranch.
By contributing to Safe Start for Codex, you agree that your contributions will be licensed under the MIT License.
- 100% Local-First & Zero-Egress (
INV-LOCAL-01): Das Kern-Startup-Gate, die Konfigurationsprüfung und die Zeitplanung arbeiten standardmäßig vollständig offline mit der Python-Standardbibliothek. Keine ausgehenden Netzwerk-Sockets, keine Telemetrie, kein Phone-Home. Der gesamte Status verbleibt host-lokal. - Unprivilegierte Benutzer-Ausführung (
INV-SEC-02/RunAsInvoker): Sämtliche CLI-Befehle, Hintergrund-Daemons, System-Tray-Monitore und Test-Runner laufen strikt im unprivilegierten Standard-Benutzerkontext. Administrative Rechte oder UAC-Elevationen sind verboten. - Snapshot-Vor-Modifikation (
INV-FILE-03): Vor jeder Änderung an einerautomation.tomlwird ein atomarer Snapshot unter~/.codex/automation-safe-start/backups/gesichert. - Selektiver Wiederherstellungs-Schutz (
INV-RESTORE-04): Nur Automatisierungen, die von Safe Start in dieser aktiven Sitzung pausiert wurden, werden bei der Freigabe reaktiviert. Zuvor deaktivierte oder pausierte Automatisierungen bleiben unberührt. - Konservative Aufhol-Politik (
INV-CATCH-05): Die Analyse verpasster Ausführungen ist rein lesend und diagnostisch; sie triggert niemals manuelle Sofortausführungen. - Gezielte Prozessüberwachung (
INV-PROC-06): Prozessüberwachung und Beendigung verwaister Instanzen sind strikt auf bekannte Codex-Prozessnamen (ChatGPT.exe,codex.exe) mit konservativen Altersgrenzen beschränkt. - Atomare TOML-Serialisierung (
INV-INTEG-07): Konfigurationsänderungen nutzen temporäre Staging-Dateien und atomare Umbenennungen, um korrupte Zustände bei plötzlichem Programmabbruch zu verhindern. - Fail-Closed Diagnostik (
INV-FAIL-08): Fehlerhafte Konfigurationen oder unerwartete Dateisystemzustände protokollieren aussagekräftige Fehlermeldungen und brechen sauber ab, ohne aktive Dateien zu verändern. - Plattformübergreifende Betriebs-Parität (
INV-PLAT-09): Primäre Windows-Produktionsausführung flankiert von Multi-OS Quelltext-Parsing Smoke-Tests unter Linux und macOS. - Duale Sicherheits-SLA (
INV-SLA-10): Verbindliche Zusage von 48h Reaktionszeit und 5 Werktagen Triage-Bewertung über kanonische Sicherheitskanäle (SECURITY.md). - Version-Freeze-Disziplin (
T-20260920-167562623): Paketversion1.1.6ist über alle Manifeste, Quelltexte und Badges hinweg strikt eingefroren. Kein Versions-Bump. Alle Weiterentwicklungen werden unter## UnreleasedinCHANGELOG.mddokumentiert. - Sauberer Code & Regressionstests: Jede Änderung erfordert begleitende Tests in
tests/. Die Testsuite muss zu 100% grün bleiben. - Bilinguale Parität: Strukturelle und navigatorische Parität zwischen
README.mdundREADME_de.md(18-Punkte Dual-Ankersec-01bissec-18) ist zwingend einzuhalten.
# Klonen des Repositories (kanonischer Plan D Pfad)
git clone https://github.com/dev-bricks/safe-start-for-codex.git "C:\_Local_DEV\repos\safe-start-for-codex"
cd "C:\_Local_DEV\repos\safe-start-for-codex"
# Virtuelle Umgebung erstellen und Entwicklungsabhängigkeiten installieren
python -m venv .venv
.venv\Scripts\python -m pip install -e ".[dev,tray]"
# Testsuite ausführen
pytest -ra -v
# Schnelle statische Code-Prüfung ausführen
ruff check .
# Bytecode-Kompilierung validieren
python -m compileall -q src tests
# Whitespace und Git-Diff-Sauberkeit prüfen
git diff --check
# Einhaltung des Versions-Freezes validieren (muss 0 Treffer liefern)
git diff -G"version = "- Bei größeren Refactorings bitte zuerst ein Issue für Architekturabstimmungen eröffnen.
- API-Schlüssel, Tokens und Zugangsdaten niemals im Repository ablegen. Keine echten persönlichen Daten,
.env-Dateien oder absolute Host-Pfade committen. - Sicherstellen, dass alle 10 Invarianten (
INV-LOCAL-01bisINV-SLA-10) intakt bleiben. - Pull-Requests müssen gegen den
main-Branch gerichtet sein.
Mit Ihrer Mitwirkung an Safe Start for Codex erklären Sie sich damit einverstanden, dass Ihre Beiträge unter der MIT-Lizenz bereitgestellt werden.