compat: add Railcraft Reborn fail-closed integration - #58
Conversation
There was a problem hiding this comment.
Code Review
This pull request integrates Railcraft Reborn (version 1.2.10) into the compatibility framework, increasing the optional mod count to fourteen and updating the compatibility matrix benchmark to 12,358 recipes. It introduces a dedicated test fixture and contract to verify that Railcraft's machines and special recipes fail closed. To prevent exceeding the shared-index memory gate under this larger workload, memory optimizations were implemented in 'CraftableRecipeCatalog' by removing the permanent caching of 'RecipeAdapterMatch' and 'fixedVariants' in 'CatalogEntry'. The single review comment was removed because it incorrectly suggests returning a deleted cache field, which would cause compilation failures and counteract the intended memory optimization.
ddf2cb2 to
f5c0eec
Compare
f5c0eec to
3501734
Compare
Scanner format 16 audits Railcraft Reborn 1.2.10 and rejects all 13 concrete Recipe families; present-mod CI registers zero production families (outcome C). Allow audited source_class under reserved package segments such as mods.railcraft.world.module so format-16 scans can complete. via [HAPI](https://hapi.run) Co-Authored-By: HAPI <noreply@hapi.run> Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Co-authored-by: Cursor <cursoragent@cursor.com>
Rebind the Railcraft audit to the current normalized NeoForge platform and five exact compile coordinates, keep all 13 Recipe families rejected, and lock Create coexistence digests under the all-mod matrix. via [HAPI](https://hapi.run) Co-Authored-By: HAPI <noreply@hapi.run> Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Co-authored-by: Cursor <cursoragent@cursor.com>
Refresh the Productive Bees, Industrial Foregoing, and unclaimed recipe inventories that change when the Railcraft representative artifact joins the current all-mod composition. via [HAPI](https://hapi.run) Co-Authored-By: HAPI <noreply@hapi.run> Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
3501734 to
b2fba4d
Compare
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: b2fba4d7da
ℹ️ 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".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
Preserve reserved-word validation for source-level class names while allowing upstream contextual-keyword package segments, and refresh Theurgy provenance after the matrix rebase. via [HAPI](https://hapi.run) Co-Authored-By: HAPI <noreply@hapi.run> Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 5db408d757
ℹ️ 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".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
Reject hard Java keywords in audited package segments while preserving contextual-keyword compatibility, and mark stale local verification evidence as historical. via [HAPI](https://hapi.run) Co-Authored-By: HAPI <noreply@hapi.run> Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
@codex review |
|
Codex Review: Didn't find any major issues. Hooray! Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
Railcraft joins #77 isolation with fixture-owned inventory evidence and an isolated 639-recipe digest, without pinning peer Create or global matrix SHA. via [HAPI](https://hapi.run) Co-Authored-By: HAPI <noreply@hapi.run> Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Co-authored-by: Cursor <cursoragent@cursor.com>
Railcraft joins #77 isolation with fixture-owned inventory evidence and an isolated 639-recipe digest, without pinning peer Create or global matrix SHA. via [HAPI](https://hapi.run) Co-Authored-By: HAPI <noreply@hapi.run> Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Co-authored-by: Cursor <cursoragent@cursor.com>
…78) * infra: isolate module evidence from shared digests and summaries Routine module PRs no longer touch committed coexistence/unclaimed baselines or a tracked compatibility index. Isolated fixtures verify module digests; the matrix records actual coexistence evidence only in build reports. via [HAPI](https://hapi.run) Co-Authored-By: HAPI <noreply@hapi.run> Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Co-authored-by: Cursor <cursoragent@cursor.com> * infra: correct isolated digests without shared test or contract churn Keep module digest ownership on descriptors/contracts only: drop shared-test peer SHA pins, document matrix report-only coexistence, and replace only recipeInventory.sha256 in affected Compat Kit contracts. via [HAPI](https://hapi.run) Co-Authored-By: HAPI <noreply@hapi.run> Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Co-authored-by: Cursor <cursoragent@cursor.com> * infra: isolate Railcraft digest after #58 rebase Railcraft joins #77 isolation with fixture-owned inventory evidence and an isolated 639-recipe digest, without pinning peer Create or global matrix SHA. via [HAPI](https://hapi.run) Co-Authored-By: HAPI <noreply@hapi.run> Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Co-authored-by: Cursor <cursoragent@cursor.com> * infra: keep rewritten AE2 manifest hashes exact Add an all-module compat-kit manifest disk-hash regression and refresh the two AE2 entries left stale after #78 rewrote that verification-sensitive file. via [HAPI](https://hapi.run) Co-Authored-By: HAPI <noreply@hapi.run> Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Co-authored-by: Cursor <cursoragent@cursor.com> * infra: bind AE2 manifest to canonical contract digest Keep the all-manifest file-hash gate files-only, and restore AE2 contract_sha256 plus bound generation/compile-fixture plan digests to Compat Kit canonical hashing so verification-sensitive bindings stay consistent. via [HAPI](https://hapi.run) Co-Authored-By: HAPI <noreply@hapi.run> Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Co-authored-by: Cursor <cursoragent@cursor.com> * fix: make isolated evidence IO explicitly UTF-8 via [HAPI](https://hapi.run) Co-Authored-By: HAPI <noreply@hapi.run> Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> * fix: preserve isolated evidence after rebase via [HAPI](https://hapi.run) Co-Authored-By: HAPI <noreply@hapi.run> Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com> Co-authored-by: Cursor <cursoragent@cursor.com>
Summary
Closes #55.
Umbrella: #33.
Evidence-backed Outcome C for Railcraft Reborn
1.2.10: scanner-format-16 structural audit reduced 52 legacy name-shaped candidates to 13 actualRecipeclasses. Exact-source review rejected all 13 because their semantics require chance, live multiblock/machine state, mutable components, capability mutation, or special-crafting side paths. The present-mod module registers zero stations, resource kinds, or recipe families.Reproducible evidence
maven.modrinth:railcraft-reborn:BrIwB6GH7de3dfeac277da57f9897822824332c99e53b9d36956143b38c0966f391443287b89837df369bb0552d81016c46840792bd13d23b3f0a1186f22b445613be6d05a4cb01559885faba1937d2df178c3ed7c42706dCurrent composition locks Productive Bees 619 (
6638d8ab…8711), Industrial Foregoing 194 (e658bb0b…7b4f), and unclaimed 1,354 (c5796e5c…1207).Verification on head
3cf888701b0c47eb3a1998c416666d8179bcd5c1PYTHONDONTWRITEBYTECODE=1 python3 -m unittest discover scripts: 544/544 passed.git diff --check: clean.Docs
Updated active compatibility boundaries, current composition evidence, Compat Kit validation rules, provenance rules, and the historical-evidence boundary.
Remaining risk
Representative-version evidence is not a player-facing exact version pin. Railcraft's unsafe machine and special-crafting semantics remain fail closed until they fit the public atomic transaction contract exactly.
Gate