Skip to content

feat(eve): handle authorized approvals in Slack - #1349

Closed
benpankow wants to merge 1 commit into
ben/hitl-approval-eventsfrom
ben/hitl-slack-client
Closed

feat(eve): handle authorized approvals in Slack#1349
benpankow wants to merge 1 commit into
ben/hitl-approval-eventsfrom
ben/hitl-slack-client

Conversation

@benpankow

@benpankow benpankow commented Jul 29, 2026

Copy link
Copy Markdown
Collaborator

Summary

Implements Slack as the foreground authorized-approval client:

  • preserves shared cards while approval candidates are pending
  • stores card correlation through the durable channel delivery boundary
  • sends candidate pending/rejection/failure feedback ephemerally to the responder
  • updates only the settled card on approval.settled and preserves sibling controls
  • removes optimistic card closure from inbound clicks
  • preserves the existing private authorization.required delivery path
  • exposes a channel delivery hook for channel-owned durable metadata

Validation

  • pnpm --filter eve exec vitest run --config vitest.unit.config.ts src/channel/send.test.ts src/public/channels/slack/defaults.test.ts src/public/channels/slack/slackChannel.test.ts src/public/channels/slack/interactions.test.ts
  • pnpm --filter eve typecheck

Stack

Depends on #1348.

Signed-off-by: benpankow <ben.pankow@vercel.com>
@vercel

vercel Bot commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
eve-docs Ready Ready Preview Jul 29, 2026 7:56pm
eve-docs-4759 Ready Ready Preview, v0 Jul 29, 2026 7:56pm

return undefined;
}

function buildPendingApprovalCards(

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Non-approval HITL responses (select / radio_buttons / static_select) are stored in pendingApprovalCards but never consumed, causing an unbounded durable-state leak.

Fix on Vercel

@benpankow

Copy link
Copy Markdown
Collaborator Author

Superseded by the consolidated 7-PR implementation stack starting at #1368 (GitHub stack #1375).

@benpankow benpankow closed this Jul 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant