Skip to content

Slack: durable inbox/outbox and start/status/cancel interaction #919

Description

@jeffhuber

Part of #903.

Problem

Authenticated envelopes need durable deduplication and a user-facing workflow before any provider dispatch occurs.

Scope

Implement receipt and outbox persistence, compare-and-swap state transitions, /codemower start modal, private status/help, confirmed cancel intent, repository alias selection, orchestrator/participant selection, visibility policy, and bounded status cards. Queue only providers declared ready.

Dependencies

Acceptance criteria

  • Slack retries and concurrent modal submissions create one logical task.
  • Outbound posts use stable logical keys and reconcile uncertain delivery before repost.
  • Task/status defaults are requester-private; channel-thread use is explicit.
  • No GitHub issue is created and no ambient channel history is read.

Code Mower delivery

Produce exactly one independently reviewable PR for this issue. Record the named builder, keep one writer on the branch, run focused tests and applicable full checks, obtain an independent Code Mower review against the exact current head, resolve every P0/P1/P2 finding, and pass normal CI plus code-mower/gate. Update the parent epic with PR/head, review, validation, outcome, and safe metadata-only upload evidence. Do not put credentials, source, diffs, prompts, transcripts, private context, task/message prose, or raw provider output in cloud data.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions