Uh oh!
There was an error while loading. Please reload this page.
v0.7.61: private provenance alignment - #6326
Conversation
* fix(tools): align private provenance with wire payloads * fix(execution): separate provenance source from actor
The latest updates on your projects. Learn more about Vercel for GitHub. |
PR SummaryMedium Risk Overview Table batch writes align provenance selection keys with what actually ships on the wire: Internal tool transport hardens failure handling: unverified or non-error HTTP responses are rebuilt with safe JSON errors—real 4xx–5xx keep their status with a generic message so route bodies/headers are not leaked; other cases become 502 metadata verification failures. Added tests for table/memory error paths and registry behavior when provenance crosses from another user in the same workspace (anonymous trace labels). Reviewed by Cursor Bugbot for commit 71d7d8d. Configure here. |
Uh oh!
There was an error while loading. Please reload this page.
Greptile SummaryThe PR aligns private secret provenance with serialized tool payloads and permits provenance to cross user identities only within an already-authorized workspace.
Confidence Score: 5/5The PR appears safe to merge, with workspace and personal provenance boundaries preserved across the changed paths. The changed scope checks reject cross-workspace and mismatched personal provenance, table selections remain aligned with serialized request bodies, and unverifiable tool responses expose only sanitized failures.
|
| Filename | Overview |
|---|---|
| apps/sim/lib/execution/durable-secret-provenance.ts | Centralizes scope admission so workspace resources accept same-workspace sources while personal resources retain exact-user isolation. |
| apps/sim/app/api/table/row-secret-provenance.ts | Applies the shared scope-compatibility policy to table writes without weakening cross-workspace rejection. |
| apps/sim/lib/table/secret-provenance-selection.ts | Filters undefined top-level fields so provenance selections match the JSON-serialized row payload. |
| apps/sim/tools/index.ts | Rebuilds unverifiable private-metadata responses with sanitized bodies and headers while preserving legitimate HTTP error statuses. |
| apps/sim/app/api/tools/file/manage/route.ts | Renames the expected scope concept to destination scope, reflecting the shared same-workspace provenance policy. |
Flowchart
%%{init: {'theme': 'neutral'}}%%
flowchart LR
A[Tool input and secret trace] --> B[Serialize wire payload]
B --> C[Attach private provenance bundle]
C --> D[Authenticated internal route]
D --> E{Scope compatible?}
E -->|Same destination workspace| F[Accept source provenance]
E -->|Personal resource and same user| F
E -->|Cross-workspace or mismatched personal user| G[Reject request]
F --> H[Persist or propagate durable provenance]
Reviews (1): Last reviewed commit: "fix(tools): align private provenance wit..." | Re-trigger Greptile
fix(tools): align private provenance with wire payloads (#6325)