Repository navigation
A join can collect the files its branches produced - #36
Merged
Merged
Conversation
An agent hands back a file far more easily than a value, which must ride inside its one-line result marker. A collect need now reads a file output from the blob store when the join opens, in branch order. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
|
Lore is reviewing this PR — 9f9e087e-832f-42ef-9714-900ea53ba087. Submit a review that requests changes to have Lore push a fix for it. Comment |
There was a problem hiding this comment.
Lore review — Approved
Correct implementation of file collection in fan-out joins; one nit on N identical DB calls per branch
Must fix (0) · Consider (0) · Nits (1)
Reviewed by claude-sonnet-4-6
Submit a review that requests changes to have Lore push a fix for it. Comment @lore review to re-run the review.
Posted by floor, visit 1e766e07-72c9-406c-bcda-d9c0cd929dea.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
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.
Why
#35 let a join collect what its branches produced, but only values. An agent branch hands back a file far more easily than a value, which has to ride inside its one-line result marker as JSON inside a string. Lore's section pods are agents, so the join could not collect what they write.
What Changed
collectneed now reads a branch's file output from the blob store when the join opens, and puts its text (UTF-8) in the JSON array, in branch order. A value still goes in as it is. The kind of each output comes from the station the branch ran, by its hash.docs/entities/assembly-line.mdand the fan-out entry indocs/decisions.mdsay files are collected.Alternatives Considered
ADRs & Architecture
Amends the "Fan-out and join" decision in
docs/decisions.md. A file larger than the blob cap cannot exist, but a collected array of large files makes a large need; nothing caps its length yet, as before.Testing
Test-first: a store scenario where two branches produce files and report in reverse order, and the join opens with their text in branch order (421 store tests pass against Postgres); the validation test now expects the plain wording. Typecheck and lint are clean. Not exercised on a cluster.
🤖 Generated with Claude Code