Skip to content

Keep Orrery fixtures independent of current imagery - #128

Merged
Protonmatter merged 2 commits into
masterfrom
fix/orrery-fixture-baseline
Sep 29, 2026
Merged

Protonmatter merged 2 commits into
masterfrom
fix/orrery-fixture-baseline

Conversation

@Protonmatter

@Protonmatter Protonmatter commented Sep 29, 2026 •

Copy link
Copy Markdown
Owner

Outcome

The first daily data PR (#127) advances Earth imagery to 2026-09-28. The updater tests inherited that live date and the already-migrated raster path while their synthetic candidate stayed at 2026-09-27, causing normal staging and publisher fixture setup to fail the production rollback check.

Use a fixed historical synthetic weather baseline instead. Tests for existing daily imagery still stage once explicitly, and transition tests use the actual synthetic starting inventory. Add a regression with newer legacy and automated live records dated in 2030. Renderer tests also hard-coded the original September 12 observation date. They now assert the selected weather record's full observation label, including its unavailable state and absence under the historical composite. These two test files must be corrected before #127 can pass CI; no production validation is weakened.

Specification and traceability

  • Requirements: SOL-TEST-001, SOL-DATA-002.
  • RFC: Not required; restores the test isolation intended by RFC 0011 without changing behavior.
  • ADR: Not required; no architecture change.
  • Governing specification: docs/rfcs/0011-daily-orrery-refresh.md, docs/ORRERY_REFRESH.md.
  • Non-goals: Changing dates, imagery, source admission, publication policy, or rollback rejection.

Correctness and risk

  • Inputs, outputs, and failure behavior: Test fixtures no longer inherit the changing accepted Earth date/path. The new regression demonstrates the original failure for both legacy and automated source records.
  • Compatibility or migration: No production interfaces or application data change.
  • Scientific/accuracy/provenance impact: None; reused explicitly synthetic test references.
  • Privacy/security/dependency impact: None; no new dependency or network call.
  • Release risk, monitoring, and rollback: Low, test-only. Revert this commit to restore the prior fixture. Automated publication is paused while this correction and the data PR are validated.

UI and UX

Not applicable: no UI or rendering changes. Keyboard, focus, touch, responsive behavior, reduced motion and availability states are unaffected. No new manual usability/accessibility qualification is claimed.

Validation evidence

  • Unit tests cover positive, boundary and negative cases.
  • Contract/integration tests cover synthetic staging and actual Git publication boundaries.
  • Browser end-to-end/visual changes: not applicable to this test-only correction.
  • Existing rollback rejection remains tested; no numerical/accuracy change.
  • Complete hosted Rust/Python/Node/web coverage gates remain pending for this PR.
  • Local/hosted evidence boundaries are explicit.

Commands and results:

PYTHONPATH=tools;tests/python python -m unittest test_orrery_earth test_orrery_delivery -v
  37 passed with the current master inventory.
Same 37-test selection with ROOT inventory replaced in a temporary directory by the exact PR #127 inventory
  37 passed.
New future-live-inventory regression before the correction
  Both legacy and daily cases failed with 'Earth weather date rollback is forbidden'.
node --experimental-vm-modules --test build/orrery-hosted-replay-36611952095/tests/web/planetAppearanceRuntime.test.mjs
  24 passed against the refreshed September 28 manifest; previously 2 failed on the old hard-coded date.
npm test
  1,395 passed.
python -m compileall -q tests/python/test_orrery_earth.py
  Passed.
git diff --check
  Passed.

Independent review found no remaining actionable P0/P1/P2 issues and separately passed the new regression, both transition-admission tests, and the production rollback-rejection test. A targeted independent review also confirmed the browser label assertions preserve texture selection, gap disclosure, failure association and simulation-state checks.

Documentation

  • README/contributor instructions remain accurate; no new commands.
  • Existing requirements and RFC retain the same meaning; no specification or plan change needed.
  • Operations/readiness/status are unchanged; this restores the existing validation path.
  • User-visible claims/help are unchanged.

@Protonmatter
Protonmatter marked this pull request as ready for review September 29, 2026 19:05
@Protonmatter
Protonmatter merged commit 5b071e3 into master Sep 29, 2026
20 checks passed
@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-09-29T19:06:27.863668Z 869ef94 Draft marked ready
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

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