Skip to content

feat: add retry-safe weekly period lock contract - #29

Merged
Pigbibi merged 1 commit into
mainfrom
codex/pert-weekly-period-freeze-pr0
Jul 15, 2026
Merged

feat: add retry-safe weekly period lock contract#29
Pigbibi merged 1 commit into
mainfrom
codex/pert-weekly-period-freeze-pr0

Conversation

@Pigbibi

@Pigbibi Pigbibi commented Jul 15, 2026

Copy link
Copy Markdown
Contributor

Scope

Fresh clean-slate PR-0 from the latest origin/main; does not reuse PR #28 code or commits.

Pure pert.weekly.period_lock.v1 only:

  • immutable PoliticalEventWeeklyPeriodLockV1 and SourceSnapshotArtifact values;
  • exact UTC ISO Monday/Sunday period identity and original workflow/run evidence;
  • producer full SHA, source snapshot id/digest/counts/provenance;
  • canonical JSON serializer/parser with duplicate-key, unknown/missing, unsafe-int, path, tamper and period mismatch fail-closed behavior;
  • exact expected-lock comparison; generated_at is intentionally absent and remains mutable in later producer builds.

No workflow, lock acquisition/upload/download, fetch, artifact, QAR, Pages, publisher, monthly or permission changes.

Validation

  • focused period-lock/weekly contract/manifest tests: 57 passed
  • full pytest: 87 passed
  • python3 -m compileall -q src tests: passed
  • git diff --check: passed
  • ruff: unavailable locally

Next slice must separately implement original-run lock and immutable input-snapshot acquisition; missing evidence must fail closed rather than fall back to wall clock.

Co-Authored-By: Codex <noreply@openai.com>
@github-actions

Copy link
Copy Markdown
Contributor

🤖 Codex PR Review

Merge allowed: No issues found


Review by Codex PR Review bot • PR

@Pigbibi
Pigbibi merged commit d20719f into main Jul 15, 2026
4 checks passed
@Pigbibi
Pigbibi deleted the codex/pert-weekly-period-freeze-pr0 branch July 15, 2026 08:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant