Repository navigation
fix(f117): restore unified delivery with Redis array preservation - #223
Merged
Merged
Conversation
Why: Restore the reviewed #222 delivery implementation after its emergency rollback; the following commit repairs its Redis empty-array regression before runtime activation.
Why: Redis cjson turns empty requestedTargetCats arrays into objects during row transitions, breaking automatic drain and Steer. Normalize all six row writers and recognize the existing empty-object artifact on read. Source: 90ef6e418a5e4799835e7fe3c75f2f693efdfc38 Validation: owned Redis red reproduction, API build, 229 targeted tests passing. Independent review pending.
mindfn
marked this pull request as ready for review
October 10, 2026 13:55
mindfn
added a commit
that referenced
this pull request
Oct 10, 2026
mindfn
added a commit
that referenced
this pull request
Oct 10, 2026
…very Why: restore the reviewed common send and drain after the #222/#223 rollback, correcting Redis empty target encoding and preserving guidance until the exact native parent dispatcher is ready. Add composed Redis and HTTP Steer regression coverage. Source: fd09784d3f4aea51b365258251639badbab90a9e Source-tree: 6babe29 Fork-base: c29dba7 Fork-only #221 plugin changes and pre-existing evidence retained. Runtime acceptance and soak remain pending; no process or storage changes.
mindfn
added a commit
that referenced
this pull request
Oct 11, 2026
…very (#224) Why: restore the reviewed common send and drain after the #222/#223 rollback, correcting Redis empty target encoding and preserving guidance until the exact native parent dispatcher is ready. Add composed Redis and HTTP Steer regression coverage. Source: fd09784d3f4aea51b365258251639badbab90a9e Source-tree: 6babe29 Fork-base: c29dba7 Fork-only #221 plugin changes and pre-existing evidence retained. Runtime acceptance and soak remain pending; no process or storage changes.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
After #222, messages without an explicit target could remain queued, and Steer could return an internal error. Redis
cjsonencoded an emptypayload.requestedTargetCatsarray as{}during ledger transitions; hydration then rejected the row, including already-claimed rows.This PR restores #222 after its emergency revert and fixes all six Redis row mutation paths using a shared encoder. The reader accepts the specific empty-object artifact left by the earlier writer while continuing to reject malformed nonempty objects and other invalid types. Existing target, policy, permission and message-ID semantics remain intact.
Two commits separate the previously reviewed #222 implementation from the new Redis correction. The fork retains the #221 CI-plugin baseline. Production storage has not been deleted or repaired; no runtime restart has been performed by the agent.
Validation: the original owned-Redis reproduction failed 4/5 before the fix; API build and 229 targeted tests pass afterward, including claim, prefix claim, restore, commit, reconcile, expansion, replay and legacy-row reads. No process logs or reproduction copies are added to the product diff.
Draft: the new Redis correction still requires independent review and the operator’s runtime verification. After merge, synchronize/build the runtime checkout before the operator restarts it. Upstream zts212653#1398 remains Draft pending renewed acceptance.
Source:
90ef6e418a5e4799835e7fe3c75f2f693efdfc38; fork publication HEAD:3563a79060a0917e0803349b562b0aa2d15292fa. Normalizing the existing fork-only baseline produces the exact validated source tree.