Repository navigation
fix(sync): include newly discovered threads in bounded acquisition - #292
Conversation
|
🦞👀 Pull request received. I will update this pull request when review starts. ClawSweeper review completeClawSweeper finished reviewing this revision. The review result is being finalized. |
|
Codex review: needs maintainer review before merge. What this changesThis PR adds opt-in stored-thread expansion to targeted sync and uses it in private bounded acquisition while preserving manual-only publication. Example: The regression fixture discovers new-thread beneath the selected text channel root in guild g1.
Review scores
ProductKind: Bug fix · Worth it: Yes · Fix scope: Complete Merge readiness✅ Ready for maintainer review Keep this maintainer-authored draft open: it addresses a bounded thread-coverage gap still present on main, and source review found no actionable introduced defect. Priority: P2 Before mergeNone. FindingsNone. Tests
Agent review detailsHow this fits togetherThe private publisher supervises native Discord sync, which selects channels from live and stored metadata, writes messages and coverage receipts to SQLite, then saves a verified checkpoint before archive publication. flowchart TD
A[Reviewed policy] --> D[Native target selection]
B[Guild latest refresh] --> C[Stored channel catalog]
C --> D
D --> E[Bounded history scan]
E --> F[Verified private checkpoint]
F --> G[Archive publication]
Technical reviewBest possible solution: Keep the focused native selector and shared acquisition owner, with automatic cadence disabled until its separately recorded operational qualification is complete. Do we have a high-confidence way to reproduce the issue? Current-main acquisition and message filtering show why newly stored text-channel children miss the second bounded pass, and the added fixture expresses that exact before/after case; no target code was run. Is this the best way to solve the issue? The opt-in native expansion addresses the selection mismatch at its existing owner while preserving default selection, exclusions, permissions, and history receipt handling. AGENTS.md: found but not applied because it conflicted with ClawSweeper's review contract. Codex review notes: model internal, reasoning medium; reviewed against 206aeb386ca1. Provenance checked
TestingProof path: in-process harness. SecurityNone. EvidenceWhat I checked:
Likely related people:
Review metrics
LabelsLabel changes:
Label justifications:
Rank-up movesOptional improvements that raise the rating; they are not merge blockers.
Rating scale6/6 🦀 challenger crab · 5/6 🦞 diamond lobster · 4/6 🐚 platinum hermit · 3/6 🦐 gold shrimp · 2/6 🦪 silver shellfish · 1/6 🧂 unranked krab. Overall follows the weaker of proof and patch quality; ✨ marks media proof (a screenshot, video, or linked artifact) that directly shows the changed behavior. WorkflowClawSweeper edits this one comment on every review. Comment Reviewed October 17, 2026, 12:51 PM ET / 16:51 UTC. |
What Problem This Solves
Bounded Discord acquisition can miss newly discovered text-channel threads because its second pass uses a fixed target list.
User Impact
The private publisher includes stored direct threads of selected text and announcement roots in its bounded scan. Ordinary channel selection stays unchanged. The publisher remains manual-only; automatic cadence is held until measured checkpoint and publication qualification succeeds.
Why This Change Was Made
A default-off native
--include-stored-threadsoption expands only direct, same-guild thread children of the explicitly selected roots. It reuses native filtering, permissions, and history receipts without another collector or policy rewrite.The workflow pins one reviewed policy pair for both admission and acquisition, removing routine policy inputs. Optional member refresh belongs only to the first guild-wide phase; the targeted phase always skips members. Both phases retain one 1,200-second budget. Prepared daily routing has no cron trigger in this change.
This composes with the checkpoint save and recovery repair, preserving its 840-second save deadline and publication guards. Runtime/workflow LOC is +71/-30 (net +41), justified by the opt-in native selector and scoped acquisition routing; tests are +279/-8.
Evidence