Skip to content

Automated ES/EN README parity gate for version, commands, and essential links #1

Description

@klssxx

Context

THEKEY ships normative docs in Spanish (README.md, THREAT_MODEL.md, CONTRIBUTING.md) and English (README.en.md, THREAT_MODEL.en.md, CONTRIBUTING.en.md). A divergence in version, commands, or essential links would be a publication blocker.

Requisito o riesgo al que responde

  • Requisito: THEKEY_CONTRACT §5 (Every run is auditable) — the docs a visitor reads must match the engine's actual behavior.
  • Riesgo cubierto: THREAT-T3 (weak/divergent policy) applied to documentation — a drifted README misleads contributors about commands and guarantees.

Impacto si no se resuelve

A contributor following the EN README could run a stale command or assume a guarantee the ES version dropped; the parity promise of the project breaks and triage starts with a doc bug.

Acceptance criteria

  • scripts/ci/parity_gate.py asserts: project version 0.2.0, Quick Start commands (git clone / cd THEKEY / demo.ps1), main demo command (python -m thekey demo), presence of "workflow isolation" claim and absence of any OS-sandbox claim, presence of "deterministic policy authorization" (not "auto-approval"), and essential doc cross-links.
  • A seeded divergence (temporarily drop the demo command from README.en.md) makes the gate exit non-zero (negative test proven in CI).
  • CI job docs-gates runs the gate on every PR.
  • CONTRIBUTING documents the parity requirement.

Cómo se verifica

python scripts/ci/parity_gate.py
# expected: exit 0, prints PASS for every invariant
python -m thekey demo
# expected: RELEASE_ELIGIBLE, gates_passed: 4/4

Evidencia en event store

This is a CI/docs gate, not a transactional change. On merge, the PR must record: Closes #1, green pytest -q + parity_gate.py output pasted in the PR body, and python -m thekey demo reaching RELEASE_ELIGIBLE with evidence_mismatches: [] (hash chain intact).

Docs afectados

  • README / README.en actualizado (if any command changed)
  • CHANGELOG entrada añadida
  • DECISIONS.md si hay decisión de diseño

Metadata

Metadata

Assignees

No one assigned

    Labels

    cibacklog labeldocumentationImprovements or additions to documentationgood first issueGood for newcomerswindowsbacklog label

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions