Repository navigation
chore(deps): update content lock to v1.8.13 - #180
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
|
The generated lock is structurally correct, but its normal Server validation exposed a real content runtime defect in v1.8.8: Do not merge this PR yet. Paired owner fixes are under review:
After the 1.x fix merges and normal Semantic Release publishes the corrected patch, the repository-owned updater will refresh this same App branch/PR to the new verified coordinate and CI must pass. |
## Summary - replace the invalid `isinstance(..., (int, None))` repeat-delay check with the valid `NoneType` - preserve the existing acceptance of integer delays and unset delays - deliver the compatible fix on `main`; paired `1.x` companion: #170 ## Validation - `python3 -m compileall -q maps/python` - `python3 tools/validate.py` - `git diff --check` ## Program context Discovered by the App-authored lock PR atrinik/classic#180 while delivering atrinik/atrinik#356 and atrinik/classic#169. PR #180 must not merge until a corrected 1.x release is published and the updater refreshes it. This PR intentionally does not close the program or Classic issue; downstream publication, lock, rehearsal, and audit gates remain.
## Summary - replace the invalid `isinstance(..., (int, None))` repeat-delay check with the valid `NoneType` - unblock Classic's existing repeat-quest regression test with an unset delay - deliver the maintained Classic-line companion to canonical `main` PR #169 ## Validation - `python3 -m compileall -q maps/python` - `python3 tools/validate.py` - `git diff --check` ## Program context Discovered by the App-authored lock PR atrinik/classic#180 while delivering atrinik/atrinik#356 and atrinik/classic#169. PR #180 must not merge until a corrected 1.x release is published and the updater refreshes it. This maintenance PR should publish the next `1.8.x` patch through normal Semantic Release after merge. It intentionally does not close the program or Classic issue.
ac31ade to
a3fc6e1
Compare
|
Stage 5 reached a second fail-closed owner correction. The v1.8.10 runtime is correctly published and verified, and updater run https://github.com/atrinik/classic/actions/runs/31553485823 refreshed the same App PR #180 in place to exact head The original
Both PRs are mergeable clean, all local and remote checks pass, and they have no actionable conversations. Merge #172 first, then #173. Do not merge Classic #180 until the next 1.8.x runtime publishes, the App refreshes it, and full Classic validation passes. |
## Summary - make the repeat-quest reset regression establish its available-quest-point prerequisite - isolate and restore player level plus quest-point state - preserve production reset and cooldown behavior - paired `1.x` companion: #173 ## Validation - `python3 -m compileall -q maps/python` - `python3 tools/validate.py` - `git diff --check` ## Program context Classic PR atrinik/classic#180 proved that the v1.8.10 runtime correction reaches the repeat-reset assertion. The remaining failure is a fixture precondition: the test player has only one available quest point, and production correctly retains terminal repeat state until another point is available. The test now establishes and asserts available quest points, isolates quest-point/player-level state, and restores every mutation with `addCleanup`. Production quest behavior is unchanged. This PR does not close atrinik/atrinik#356 or atrinik/classic#169; release and lock gates remain.
## Summary - make the repeat-quest reset regression establish its available-quest-point prerequisite - isolate and restore player level plus quest-point state - preserve production reset and cooldown behavior - canonical `main` change: #172 ## Validation - `python3 -m compileall -q maps/python` - `python3 tools/validate.py` - `git diff --check` ## Program context Classic PR atrinik/classic#180 proved that the v1.8.10 runtime correction reaches the repeat-reset assertion. The remaining failure is a fixture precondition: the test player has only one available quest point, and production correctly retains terminal repeat state until another point is available. The test now establishes and asserts available quest points, isolates quest-point/player-level state, and restores every mutation with `addCleanup`. Production quest behavior is unchanged. This `fix` maintenance change must publish the next 1.8.x runtime so Classic consumes the corrected fixture. It does not close atrinik/atrinik#356 or atrinik/classic#169.
a3fc6e1 to
f63f077
Compare
|
Classic PR #180 consumed verified v1.8.12 and exposed the remaining fixture/API mismatch: the test attempted The revised paired fixes preserve production and API behavior. They consume the naturally available point, advance the writable quest-container restoration clock by 20 hours, assert full point restoration, and then verify repeat reset:
Both are mergeable clean, all local and remote checks pass, and they have no actionable conversations. Merge #174 first, then #175. Keep Classic #180 unmerged until the next 1.8.x release is verified and the App refresh passes the complete Classic suite. |
## Summary - remove the invalid player-level mutation from the repeat-reset regression - model elapsed quest-point restoration through the production quest-container clock - assert full restoration before verifying repeat-state reset - paired `1.x` companion: #175 ## Validation - `python3 -m compileall -q maps/python` - `python3 tools/validate.py` - `git diff --check` ## Program context Classic PR atrinik/classic#180 consumed v1.8.12 and proved that the prior fixture attempted to mutate player `level`, which the Classic Python API correctly exposes as read-only. This correction leaves player state untouched. It starts with all naturally available points, consumes the point through production `fail()`, advances the writable quest-container restoration clock by 20 hours, asserts full point restoration, and verifies that repeat-state reset then occurs. All mutated quest-container state is restored with `addCleanup`; production code is unchanged. This PR does not close atrinik/atrinik#356 or atrinik/classic#169.
## Summary - remove the invalid player-level mutation from the repeat-reset regression - model elapsed quest-point restoration through the production quest-container clock - assert full restoration before verifying repeat-state reset - canonical `main` change: #174 ## Validation - `python3 -m compileall -q maps/python` - `python3 tools/validate.py` - `git diff --check` ## Program context Classic PR atrinik/classic#180 consumed v1.8.12 and proved that the prior fixture attempted to mutate player `level`, which the Classic Python API correctly exposes as read-only. This correction leaves player state untouched. It starts with all naturally available points, consumes the point through production `fail()`, advances the writable quest-container restoration clock by 20 hours, asserts full point restoration, and verifies that repeat-state reset then occurs. All mutated quest-container state is restored with `addCleanup`; production code is unchanged. This maintenance fix must publish a corrected 1.8.x runtime before Classic PR #180 can merge.
f63f077 to
cdac67d
Compare
|
The earlier do-not-merge holds are now superseded. Final verified state:
PR #180 is ready for ordinary human review and squash merge. Keep #169 and atrinik/atrinik#356 open: release rehearsal, normal Classic release, artifact/runtime audit, and schedule activation remain after this merge. |
## Summary - replace the invalid `isinstance(..., (int, None))` repeat-delay check with the valid `NoneType` - preserve the existing acceptance of integer delays and unset delays - deliver the compatible fix on `main`; paired `1.x` companion: #170 ## Validation - `python3 -m compileall -q maps/python` - `python3 tools/validate.py` - `git diff --check` ## Program context Discovered by the App-authored lock PR atrinik/classic#180 while delivering atrinik/atrinik#356 and atrinik/classic#169. PR #180 must not merge until a corrected 1.x release is published and the updater refreshes it. This PR intentionally does not close the program or Classic issue; downstream publication, lock, rehearsal, and audit gates remain.
## Summary - make the repeat-quest reset regression establish its available-quest-point prerequisite - isolate and restore player level plus quest-point state - preserve production reset and cooldown behavior - paired `1.x` companion: #173 ## Validation - `python3 -m compileall -q maps/python` - `python3 tools/validate.py` - `git diff --check` ## Program context Classic PR atrinik/classic#180 proved that the v1.8.10 runtime correction reaches the repeat-reset assertion. The remaining failure is a fixture precondition: the test player has only one available quest point, and production correctly retains terminal repeat state until another point is available. The test now establishes and asserts available quest points, isolates quest-point/player-level state, and restores every mutation with `addCleanup`. Production quest behavior is unchanged. This PR does not close atrinik/atrinik#356 or atrinik/classic#169; release and lock gates remain.
## Summary - remove the invalid player-level mutation from the repeat-reset regression - model elapsed quest-point restoration through the production quest-container clock - assert full restoration before verifying repeat-state reset - paired `1.x` companion: #175 ## Validation - `python3 -m compileall -q maps/python` - `python3 tools/validate.py` - `git diff --check` ## Program context Classic PR atrinik/classic#180 consumed v1.8.12 and proved that the prior fixture attempted to mutate player `level`, which the Classic Python API correctly exposes as read-only. This correction leaves player state untouched. It starts with all naturally available points, consumes the point through production `fail()`, advances the writable quest-container restoration clock by 20 hours, asserts full point restoration, and verifies that repeat-state reset then occurs. All mutated quest-container state is restored with `addCleanup`; production code is unchanged. This PR does not close atrinik/atrinik#356 or atrinik/classic#169.
Updates the Classic server content lock after complete release verification.
Verified coordinate
tagv1.2.0v1.8.13commit766cb6e67aa03dd86b1c333c607885df31c3aca57179e684adbc0716db334425de16d788ddc0c87eurlhttps://github.com/atrinik/content/releases/download/v1.2.0/atrinik-content-1.2.0-runtime.tar.gzhttps://github.com/atrinik/content/releases/download/v1.8.13/atrinik-content-1.8.13-runtime.tar.gzsha25606dd946dbd121429d4a2b8b5ac1de02e7561b723916f6400b3e87134364ac4c219161c9dc4a528740cd59a1460cbe3f1e8a48cf7a1ec8f4d4e8ff04f1be78de4Verification
Generated by the repository-owned verified content updater. This pull request is never approved or merged by that automation.