[prime-time] Queue dead-letter store contract (DeadLetterStorePort + provider stores)#80
Conversation
|
[PHASE: IMPL] [SLICE: rbp-dlq-contract] [COMMIT: ba772b2] Slice 1 complete: DLQ port + record contract. Scope
Gate Evidence
Next slice: |
|
[PHASE: IMPL] [SLICE: rbp-dlq-contract] [COMMIT: f39dab7] Slice 2 complete: Scope
Gate Evidence
Next slice: Postgres and Redis dead-letter stores with fake-client unit tests. |
|
[PHASE: IMPL] [SLICE: rbp-dlq-contract] [COMMIT: afc9b3f] Slice 3 complete: Postgres and Redis dead-letter stores + unit tests. Scope
Gate Evidence
Next slice: refactor |
|
[PHASE: IMPL] [SLICE: rbp-dlq-contract] [COMMIT: 5ed7f06] Slice 4 complete: Scope
Gate Evidence
Note: Next slice: Postgres and Redis adapter DLQ wiring + failure-path tests. |
|
[PHASE: IMPL] [SLICE: rbp-dlq-contract] [COMMIT: 592754b] Slice 5 complete: Postgres and Redis adapter DLQ wiring + failure-path tests. Scope
Gate Evidence
Next slice: DenoKv and AMQP adapter terminal nack DLQ wiring. |
|
[PHASE: IMPL] [SLICE: rbp-dlq-contract] [COMMIT: 52e6b1b] Slice 6 complete: DenoKv and AMQP adapter terminal nack DLQ wiring. Scope
Gate Evidence
Next slice: memory testing adapter, factory |
|
[PHASE: IMPL] [SLICE: rbp-dlq-contract] [COMMIT: 5fcb4c7] Slice 7 complete: memory testing adapter, factory DLQ threading, and typed-queue validation DLQ path. Scope
Gate Evidence
Next slice: README delivery guarantee and final package/publish/fitness gates. |
|
[PHASE: IMPL] [VERDICT: COMPLETE] Slice Commit List
Gate Evidence
Notes
|
|
@openhands-agent model=openrouter/qwen/qwen3.7-max output=pr-comment Run IMPL-EVAL for the framework-prime-time blocker slice Read, in order:
Slice-specific note: Verify the DeadLetterStorePort + provider stores are real persistence with per-adapter wiring; no stubs. Production/enterprise bar (hard): real persistence, real error handling, idempotency, observability, and graceful shutdown wherever the archetype demands; NO stubs/no-ops/TODOs/silent fallbacks; every locked contract + test in Run exactly the gate set named in the plan's Lock hygiene: do NOT commit Emit a verdict — |
OpenHands Agent — CompletedModel: openrouter/qwen/qwen3.7-max Summary — IMPL-EVAL for slice
|
| Gate | Command | Exit code | Notes |
|---|---|---|---|
| typecheck | run-deno-check.ts --root packages/queue --ext ts |
0 | 41 files, 0 findings |
| lint | run-deno-lint.ts --root packages/queue --ext ts |
0 | 41 files, 0 findings |
| format | run-deno-fmt.ts --root packages/queue --ext ts |
0 | 41 files, 0 findings |
| test | deno test --unstable-kv packages/queue/tests/ |
0 | All tests passed (dead-letter-store, kv-polling-dlq, postgres-dlq, redis-dlq, fedify-dlq) |
| publish | deno run .llm/tools/fitness/audit-jsr-package.ts --root packages/queue --allow-run |
0 | JSR dry-run OK, only slow-types WARN (expected) |
| docs | deno doc --lint packages/queue/mod.ts packages/queue/ports/mod.ts packages/queue/adapters/mod.ts |
0 | 3 files checked, 0 lint errors (@types/node warnings only, not doc-lint failures) |
| arch | deno run .llm/tools/policy/arch-check.ts |
0 | All queues OK |
Additional verifications:
- Deno.lock unchanged from baseline (no dependency drift)
- No untracked source files in
git status - Slice-specific contract verified: all three store implementations use real
persistence primitives (KV atomic operations, SQLINSERT ... ON CONFLICT,
RedisRPUSH/LRANGE), idempotency guards present in PostgreSQL store,
proper error handling throughout
Remaining risks
None. The implementation is complete, all gates pass, and the slice contract
is fully met. The PR is ready to merge.
Run: https://github.com/rickylabs/netscript/actions/runs/27857743915
IMPL-EVAL verdict PASS (OpenHands qwen3.7-max, run 27859243308): durable applied-key idempotency on the merged #74 SagaStorePort seam — atomic KV reservation, cross-process dedup, 46 tests green, static gates clean, no deno.lock churn. Rebased on 5c4a458 (#74/#78/#79/#80 landed). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018fq9V7ujx7e1rWXi57qkPG
Blocker slice
rbp-dlq-contractFramework prime-time blocker batch — sub-PR into the umbrella
feat/framework-prime-time(#73)..llm/tmp/run/feat-framework-prime-time--supervisor/slices/rbp-dlq-contract/(research.md,plan.md,plan-meta.json)..llm/tmp/run/feat-framework-prime-time--supervisor/slices/rbp-dlq-contract/implement-brief.md.Draft until the implementation agent reports complete and gates are green.