feat(stream): implement declared event ingress - #288
Conversation
026d8a7 to
0d06b80
Compare
0d06b80 to
d6c8d61
Compare
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 0d06b8043f
ℹ️ 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".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 002859de35
ℹ️ 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".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 9be176f5ce
ℹ️ 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".
927aad0 to
2fa21f1
Compare
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 2fa21f1221
ℹ️ 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".
| if archive.join(&filename).is_file() { | ||
| Ok(false) | ||
| } else { | ||
| message::materialize_message_once(inbox, &filename, &rendered) |
There was a problem hiding this comment.
Create inbox temporaries without following symlinks
When the retained inbox contains a preseeded symlink named .message.tmp-<pid>-<counter>, this new event path calls materialize_message_once, whose fs::write follows that predictable temporary and overwrites its target before publication. Retaining the inbox directory capability prevents ancestor redirection but does not protect this leaf, so a malformed or synced catalog can make event emit modify a file outside the agent directory; materialize the event with no-follow/create-new semantics relative to the retained inbox capability.
Useful? React with 👍 / 👎.
Summary
Implements the stream subsystem specified by #287 as the second PR in stack #294.
streamdeclarations with command, argv, or external ingressst2 stream add/rmauthoringst2 event emitingress with keyed and keyless supersessionCorrectness properties
Verification
PASS:
nix flake check --print-build-logson the reviewed headnix flake check --print-build-logs(all 9 x86_64-linux checks)nix develop -c cargo fmt --all -- --checknix develop -c cargo check --workspace --all-targetsgit diff --checkAdditional diagnostic sweeps:
Canonical evals
Canonical conformance and failure-capable E2E proof are shipped in compoundingtech/evals#79, exact-pinned to this PR head. Merge evals #79 after this stack; immutable release provenance follows publication.
Stack
Stack created with GitHub Stacks CLI