Skip to content

Unit 1B: immutable publication authority and full authored release carrier - #3029

Draft
benhook1013 wants to merge 14 commits into
codex/unit1b-authenticated-draft-handofffrom
codex/unit1b-world-selector-release-carrier
Draft

benhook1013 wants to merge 14 commits into
codex/unit1b-authenticated-draft-handofffrom
codex/unit1b-world-selector-release-carrier

Conversation

@benhook1013

@benhook1013 benhook1013 commented Oct 6, 2026 •

Copy link
Copy Markdown
Owner

Boundary and dependency

Latest published correction 2961b4887 has 93 unique files against the unchanged base. The owning V45 fixture adds one previously unchanged source path; the 90-file warning remains in force. Executed CI37536502118 on prior df35da130 exposed one V45-to-current-schema fixture mismatch: the current table adds revision, so comparing current SELECT * maps to historical maps was invalid. The correction compares all fourteen original columns exactly and separately proves revision initialization, retained coordinator state, exact digest/retry, and no invented terminal/publication operations. Local affected Game Design fullCheck, formatting/static checks and boot JAR passed in 58s; PostgreSQL remains skipped locally. Corrected runner execution is required, and passing earlier scopes does not establish aggregate success or completed delivery.

Published candidate df35da130e46db892cf745d45bb9e69c0b83ea6d: 92 unique files, based on #3021 9f83e6dc24e23d99e8f9d20e6ea0dc87e505f5c7. The 90-file warning has been raised; the six additional files correct existing Account source-writer fixtures for this front's V79 dependency and preserve their original migration/history proof. They are not independently mergeable before that dependency. Normal commits preserve the earlier carrier and focused proof. #3035 owns the downstream authenticated World terminal delivery, lifecycle and Account settlement work. This draft is outside the configured queue pending Gameplay's actual receiving-base/insertion coordination; publication is not review admission or merge readiness.

The four actual Gameplay handoffs remain OPEN: original Account-authorized World APPLIED; genuine immutable Game Design release; canonical World materialization → ACTIVE with Game Session association/placement; exact two-owner Account settlement. Broader Unit 1B/control UI stays parked.

Implemented unique boundary

  • Immutable full-Version bundle/v2, separate complete release attestation/v2 and V49 retain World selector, original Account/APPLIED bytes and mandatory five-owner/artifact evidence. Launch reads the committed local release without a World RPC inside its transaction. Historical v1 evidence is not backfilled.
  • World V42 joins actual frozen and application journals and exact authored RoomTemplateRef before allocation/replay, retaining a distinct runtime-room mapping. MATERIALIZED_UNVERIFIED and stored PREPARING are not authenticated ACTIVE proof.
  • Closed lifecycle carrier/proto, unregistered World read adapter, file-backed workload-mTLS client and unwired Game Session verifier preserve complete echoes, canonical associations, actual ROOM/region ownership and exact long counters. World reads an independent read-only REPEATABLE READ snapshot.
  • Complete publish selection preserves the existing eight-input bytes/digest; publicationDigestRequest/v1 remains a distinct owner-read binding.
  • Account V79 retains distinct publication authorization and ordered source participation. Earlier Draft COMMIT_ORDER cannot authorize or settle publication; unavailable terminal evidence stays fenced.
  • Game Design V50 retains the original publication operation and atomically serializes PUBLISHED/NO_PUBLICATION with Version, release, artifact and attempt-revision consequences. Every finalizer/reconciliation and candidate admission honors that owner serialization; in-flight private object puts remain non-authoritative quarantine/cleanup.
  • Exact NO_PUBLICATION receipt framing now matches V50's zero-length absent-evidence byte frame. A unit regression covers absent evidence and unchanged Unicode published bytes.
  • CI explicitly selects all four publication-operation PostgreSQL methods and all twelve Account publication methods, requires execution without skips, and preserves raw XML before later selectors overwrite it. Earlier strict cases remain intact.

Latest executed CI and corrected checkpoint

CI37513419875 is attributable to prior head c51596a42bd42d03cc29c2d58442bfb79d4fdfc6: synthetic merge 7bb6d00cc0bd0f1809356880dbe9214e859af49b has the exact ordered base/head parents and tree 8861f7eb92a224f91a68f79773bb8f2b00edd0f8, matching the pinned local tree. Metadata-only workflows are not test execution evidence.

Raw XML proves 12/12 Account publication, 8/8 Game Design release, 25/25 World graph, 2/2 canonical preparation, 4/4 legacy preparation, 12/12 authored snapshot, and 2/2 synchronized topology executed cleanly, with no skips. All four Game Design publication-operation cases executed: two passed and two failed, both at the fixture's missing asset candidate evidence, before the intended publication/rollback assertion. Dev Tool also rejected the misplaced XML-copy step between the immediate owner/fresh-source checks. The aggregate run completed failure at 2026-10-06 19:16:50 UTC; passing scoped suites are not an aggregate pass.

This corrected head stages real owner asset bytes, the exact frozen export snapshot and candidate evidence through existing services. Release fields derive from the committed candidate's independent exact readback, satisfying the PostgreSQL guard without bypassing it. The rollback and immutable-owner assertions are preserved. XML preservation now follows the immediate fresh-tenant/authored-source checks and capture, still before any later test selector. Corrected PostgreSQL execution remains required.

The 25 broad Account failures were separately traced to earlier commit 741c65d34 within this PR: the current source-fence writer now consults V79 publication participation, but six fixture families cap their schemas below V79. Historical raw reports for unchanged Account source name the missing table; the exact c515 log repeats the same failing cases. Current-runtime fixtures now apply V79. Named V74 setup, V58→V59 and V66→V67 retained-data stages/assertions remain preserved, followed by the required current-schema upgrade. No runtime old-schema fallback or weakened authority guard is introduced. Corrected PostgreSQL execution of those assertions remains pending.

Corrected-state CI37519508908 tested head 6a588f446f2290de19462480585adba04448597d through synthetic merge 2732fc8306605cffcbcee2fc2c50efa3c230a5c8; ordered parents are the exact base/head and tree 8fc1381aee2179ae84399e671013cf5a83afcf98 equals the head tree. Metadata-only runs are excluded. Raw XML proves 4/4 Game Design publication, 8/8 release, 15/15 authored-world-state, 12/12 Account publication, 19/19 Account Draft authorization, 12/12 World graph, 2/2 canonical preparation and 2/2 synchronized topology executed cleanly without skips. The Account job passed; the prior 25 failures are not evidenced in this run. The aggregate still failed in Game Design and TCP.

The remaining Game Design failure was the historical v39MigrationPreservesRetainedPublicationEvidenceAndStoresLongDiagnostics fixture: after migrating through V50, it attempted to mutate a terminal FAILED publication, correctly rejected by the immutable-terminal trigger. This candidate proves long diagnostic storage at V39 first, snapshots those rows, then proves latest-schema preservation and rejection of a terminal rewrite with exact no-mutation readback. It preserves revision, selector absence, original status/epoch and zero invented publication operations; no production guard is weakened. The local full Game Design/style/static/boot-JAR gate passes; all 161 integration cases still skip without Docker. Corrected PostgreSQL execution remains required. The earlier visibility/terminal/coordinator/selection suites have missing execution evidence after the failed Game Design job; passing publication cases do not fill those gaps.

TCP's exact raw reports now establish 13 failures among 17 executions, returning ERROR PLAY_IDENTITY_UNAVAILABLE after LOGIN where PLAY success was expected. The underlying receiving cause is not inferred. This remains the OPEN Major Gameplay final PLAY/runtime-composition route 30b0152eaf1b237b9835add5aab196843b76b1eae8b9353a0b93bc7dc852ca67 and blocks #2898's genuine playable proof. Its receiving PR is intentionally unassigned until the actual consumer is published; #3041's STARTING/read support is not that closure. No publication-owned fix or discarded failure is claimed.

Local validation and limits

Affected Game Design check -PfullCheck, formatting, Checkstyle, SpotBugs, coverage, jOOQ generation, boot JAR, links and Markdown pass. Matching XML records 570 clean unit executions plus one separate unit skip, with cached matching outputs reused, and 161 integration cases skipped without Docker, including all four publication-operation cases. Actionlint, diff hygiene and all 230 architecture contract tests pass. PostgreSQL guard/race execution of the repaired fixture is still unavailable locally.

The subsequent six-file Account correction passes check -PfullCheck, formatting/static checks, jOOQ generation and boot JAR. Matching XML has 1,090 clean unit executions, with matching outputs reused, and all 500 integration cases skipped without Docker. Compilation and skipped discovery do not prove corrected migration, source-order or concurrency behavior.

Earlier source-bound parent CI37474590468 proves 119 scoped PostgreSQL cases executed cleanly; it does not prove this child's migrations or delivery. Earlier front CI37505750548 omitted the publication-operation suite; that omission was corrected at c515, not counted as a pass. Preserved cumulative local checks and physical mTLS tests remain component proof, not deployed workload/fresh-image or live owner delivery.

Remaining authority and delivery gates

Authenticated freeze/terminal delivery, terminal-PUBLISHED-bound preparation, complete source/currentness and actual lifecycle/Game Session/Account composition remain open. A read adapter does not supply a prepare producer. #3035 retains default denial and the owner-local terminal/lifecycle transitions rather than dropping proof or manufacturing outcomes.

Unchanged published-content derivation does not renew creator permission. Activation still requires separate current exact-tenant tenantAdmin, entitlement/billing/quota/capacity and lifecycle authority; missing production producers remain tracked and denied. Explicitly isolated upstream policy fixtures and run-owned environments may exercise genuine SHARED owner transitions; they do not relabel playable scope or replace owner commits with snapshots.

Creator/admin canonical writers, membership RPC, credential release, ring mount and public activation stay denied. No provider review, corpus taper or merge readiness is claimed. FireController owns findings, routes and checkpoints.

FireMUD LOC impact

Compared 9f83e6dc24e2 → 2961b4887507 (PR merge-base → head).
PR scope: 93 changed files · 12,554 added textual lines / 523 deleted textual lines.

Section Base LOC Head LOC Δ LOC Change
Overall 983,659 994,898 +11,239 +1.1%
 Source 891,091 902,241 +11,150 +1.3%
  ↳ Code 370,846 375,743 +4,897 +1.3%
  ↳ Tests 520,245 526,498 +6,253 +1.2%
 Markdown 60,125 60,145 +20 +<0.1%
 Design 62,813 62,833 +20 +<0.1%
  ↳ Architecture 45,518 45,529 +11 +<0.1%
  ↳ Project management 6,018 6,027 +9 +0.1%
  ↳ Observability 2,147 2,147 0 0.0%
  ↳ Operator runbooks 579 579 0 0.0%
  ↳ gRPC API documentation 7,086 7,086 0 0.0%
  ↳ Product requirements and user journeys 926 926 0 0.0%
  ↳ Developer workflows 460 460 0 0.0%
  ↳ Other design 79 79 0 0.0%

Rows are hierarchical and overlapping views; do not add them together.
LOC means cloc code lines; blank and comment-only lines are excluded.

…it1b-world-selector-release-carrier

# Conflicts:
#	services/world-management-service/src/test/java/integration/net/firedevops/firemud/worldmanagement/tenant/WorldDraftGraphApplicationPostgresIntegrationTest.java
@coderabbitai

coderabbitai Bot commented Oct 6, 2026 •

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration
  • Configuration used: Repository YAML (base), Organization UI (inherited)
  • Review profile: ASSERTIVE
  • Plan: Advanced
  • Run ID: 11fd8897-f570-4d8e-89ef-b2e55da2cd3f

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions

github-actions Bot commented Oct 6, 2026 •

Copy link
Copy Markdown
Contributor

Validation Summary

❌ One or more validation checks failed

  • ❌ Validation gate: failure
  • ✅ Buf generation: success
  • ✅ Dockerfile lint: success
  • ✅ ShellCheck: success
  • ✅ Python script validation: success
  • ✅ Dev tool contract checks: success
  • ⏭️ Dev Tools README contract: skipped
  • ✅ YAML lint: success
  • ✅ Metrics cardinality policy check: success
  • ✅ Flyway migration sanity checks: success
  • ✅ gRPC transport configuration sanity checks: success
  • ✅ GitHub workflow lint: success
  • ✅ Helm chart lint: success
  • ✅ Helm render validation: success
  • ✅ Helm transaction proof: success
  • ✅ Validate Documentation: success
  • ✅ Frontend checks: success
  • ❌ Service build/test matrix: failure

Coverage reports and failure logs are available in the workflow artifacts.

@benhook1013 benhook1013 changed the title Game Design and World: immutable published selector carrier and exact room materialization Game Design and World: immutable selector release and exact lifecycle readback Oct 6, 2026
@benhook1013 benhook1013 changed the title Game Design and World: immutable selector release and exact lifecycle readback Unit 1B: immutable publication authority and full authored release carrier Oct 6, 2026

This branch has not been deployed

No deployments
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