Skip to content

feat(backend): answer conversation queries from repository - #323

Draft
sandersonstabo wants to merge 1 commit into
agent/database-conversation-patch-replay-port-86287f9from
agent/backend-conversation-query-port-f945d8e
Draft

feat(backend): answer conversation queries from repository#323
sandersonstabo wants to merge 1 commit into
agent/database-conversation-patch-replay-port-86287f9from
agent/backend-conversation-query-port-f945d8e

Conversation

@sandersonstabo

@sandersonstabo sandersonstabo commented Aug 29, 2026

Copy link
Copy Markdown
Collaborator

Depends on #322.

Scope

  • answer bounded ConversationRequest::Query through the accepted durable snapshot reader
  • preserve exact frame correlation and existing repository failure classification
  • keep Subscribe/Unsubscribe honestly unbacked until the per-connection registrar exists
  • add success, unknown-thread, subscription-control, and no-origin integration coverage

Verification

  • centralized jobs=1 backend leaf gate passed at exact ecaa252909c3c0445f62ec916c204e6e5ad47ceb
  • //tests/backend:request_handler_test passed (32 cases)
  • fresh backend and request-handler Clippy markers
  • root format, locked/offline Cargo metadata, exact path/hash/status guards, Bazel shutdown 0

Receipt: D:/artisan-editor-gate-logs/backend-conversation-query-20260829-gate1/receipt.json

Excluded / next

Per-connection subscription registrar, activation-after-response ordering, durable replay delivery, notifier/writer ownership, startup custody, and frontend projection remain later packets.


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need. Autofix is disabled.


Summary by cubic

Answers bounded conversation queries directly from the durable repository snapshot instead of failing all conversation requests as unbacked. Queries now return a snapshot or a typed ThreadUnknown failure; subscribe/unsubscribe remain unbacked until the per-connection registrar exists.

  • Query reads never consult the admission origin and preserve request correlation.
  • Unknown threads map to ThreadUnknown; corrupt or invariant state maps to non-retryable Internal; database operation failures remain retryable Internal.
  • Subscribe and unsubscribe keep failing with a non-retryable Internal error that names the missing subscription capability.
  • Adds integration coverage for snapshot success, unknown-thread, subscription control, and no-origin queries.

Written for commit ecaa252. Summary will update on new commits.

Review in cubic

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