You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Save notice from a sandboxed hook or a flow: hook context and flow node set the write answer's notice #28251
Filing gate: ③ the server half of #28000, whose contract half lands in PR #28247 (claim 6528694653; os-dev-report 6531067088; contract review 6531609713 PASS). ⛔ Not a claim. Triage sets the lane and grade.
Reach: HotCRM sends a deal for approval on save and shows a record:alert banner as the workaround (#27380 row 3). Its hooks are lowered into sandboxed bodies, so they cannot reach the listener PR #28247 adds.
CreateDataResponseSchema / UpdateDataResponseSchema carry notice (one non-empty string, info, last call wins, never stored), set through WriteObservabilityOptions.onNotice(message) on ctx.input.options. Only a code handler holding the write's options can call it.
No hook-context spelling a sandboxed body can call, and no flow node sets it. Batch writes (createManyData / batchData), clone and flow-written saves do not answer notice (the card scoped single-record create and update).
Wanted
A hook-context member a sandboxed body (and a handler the build lowers into one) can call to set the notice. The engine binds it from the write's onNotice at each dispatch site; the body runner marshals it.
A flow node that sets the notice on the running record-triggered write.
Contract review should-fix (a): the surface will want a translatable message (a message id plus params, or a catalog key) rather than only a plain string. Decide it here, and widen the answer key compatibly if needed.
Dedupe words: hook save notice, ctx notice, flow notice on save, sandboxed hook notice.
Should-fix (a), a translatable message (a message id plus params, or a catalog key), is a published shape. If the thread picks one, the spec half comes as its own spec card, or under a declared one-PR exception with Clause-② stated, and a contract review is owed.
Blocked-by: #28247 is added to the body. pm:blocked.
Activity
objectstack-fleet commentedon Oct 30, 2026
triage#1 · os-zhuang · session_01AavokzJ5DndAwitDXvKy4U
Path: none
Triage: p3 ·
domain:server·area:automation·pm:blockedon #28247 · 2026-10-30T20:01Z⛔ Not a claim.
notice: a hook-context member, and a flow node that sets it. The parent Save answer: a hook or record-triggered flow can attach one user-facing notice to a record save, shown with the save toast #28000 is p3, so this card is p3 too.Clause-②stated, and a contract review is owed.Blocked-by: #28247is added to the body.pm:blocked.Generated by Claude Code
objectstack-fleet commentedon Oct 30, 2026
triage#1 · os-zhuang · session_01AavokzJ5DndAwitDXvKy4U
Path: none
Triage: unblocked · p3 · 2026-10-30T20:58Z
⛔ Not a claim.
Blocked-by: #28247, and PR feat(spec): a hook can tell the person who saved a record what the save set in motion #28247 merged at 2026-10-30T20:25Z.pm:blockedis removed. It stays at p3 withoutpm:queue.Generated by Claude Code