feat: freeze plugin and skill Featured evidence in weekly digests - #3718
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. |
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
5e15835 to
a79ab6f
Compare
|
Codex review: needs maintainer review before merge. Reviewed September 15, 2026, 4:55 PM ET / 20:55 UTC (Revision 2). ClawSweeper reviewWhat this changesThe PR freezes separate plugin and skill recommendation evidence in weekly digests while preserving previously stored plugin-only payloads. Merge readiness✅ Ready for maintainer review Keep open: the requested capability is absent from current main, and this collaborator-authored PR remains useful. No blocking findings; the new persistent Convex evidence resolves the previous review’s upgrade-proof concern. Priority: P2 Review scores
Verification
How this fits togetherClawHub combines search aggregates and existing adoption rankings into advisory recommendations for staff. Its weekly producer freezes that evidence in Convex and sends it to Hermit for Discord delivery. flowchart TD
A[Search aggregates] --> C[Shared recommendation report]
B[Adoption rankings] --> C
C --> D[Weekly producer]
D --> E[Bounded frozen Convex payload]
E --> F[Authenticated Hermit receiver]
F --> G[Staff Discord digest]
Before mergeNone. Agent review detailsSecurityNone. Review metrics
Technical reviewBest possible solution: Keep one shared recommendation owner, immutable versioned weekly payloads, and the documented receiver-first coordinated rollout. Do we have a high-confidence way to reproduce the issue? Not applicable as a bug reproduction: this adds weekly evidence reporting, and the supplied persistent Convex run demonstrates fresh v2 creation and legacy replay. Is this the best way to solve the issue? Yes: projecting the shared recommendation report into a bounded, versioned payload avoids a competing ranking implementation and preserves existing stored weeks. AGENTS.md: found and applied where relevant. Codex review notes: model internal, reasoning medium; reviewed against 22cc45be4fc3. LabelsLabel changes:
Label justifications:
EvidenceWhat I checked:
Likely related people:
Rating scale
Overall follows the weaker of proof and patch quality. Workflow
HistoryReview history (1 earlier review cycle)
|
|
The v2 producer now has an explicit JSON-wire regression for the same This addresses the intermediate v1 scope-loss risk noted on #3714; the follow-up collection/recommendation/v2-producer changes will deploy together. Real Convex frozen-v1/new-v2 upgrade evidence is being collected before merge. Actual Discord sending remains outside the user-authorized dry run and is not claimed as verified. |
27d1a24 to
b5a6462
Compare
ClawHub UI ProofStatus: Raw proof files: https://github.com/openclaw/clawhub/tree/qa-artifacts/clawhub-producer-proof/pr-3718/20260915-ledger-upgrade |
|
The requested real Convex producer upgrade check is now complete. Report and reproducible harness · Redacted transcript, state snapshots, hashes and exact source blobs. A disposable persistent Convex store ran the original producer at Proof boundaries are explicit: observations are synthetic; successful classifier rows use deterministic fixtures through the real fenced claim/save mutation. The complete actual new-week action persisted separate catalog runs with Actual Discord permissions/create/readback and ambiguous-send recovery remain unverified. Those live sends are deferred under the user's instruction that this rollout's first dry run must not post a digest; this producer proof does not claim to close that separate delivery gap. Existing receiver D1/handler evidence remains complementary. No new review request is needed for this added evidence. |
The Monday digest now freezes the same plugin and skill recommendation evidence used by the staff dashboard and API. Each catalog includes bounded opportunities, official gaps, movers, and advisory Featured candidates with counts, periods and freshness. Legacy frozen weeks and deterministic receipt identity remain valid across upgrade.
Part of CLAW-893. Deploy after the recommendation layer. The matching receiver Hermit #44 is already deployed as production version 81; its verified bundle exactly matches production.
Validation: the unified stack at
b5a6462c96519589d4bc8c5e4ea847375be4191dpasses 6,856 unit tests (3 skipped), static/types/build and package suites. The canonical v2 producer reuses the recommendation getter and preserves the aggregate/classification fence, frozen-week replay and actual legacy payload fixture. Receiver upgrade/restart tests preserve two receipts and unrelated D1 state with zero transport calls. No production digest was posted during validation or dry run; actual Discord create/readback remains unverified and is explicitly deferred.Production code delta: +487/−262; tests/fixtures +379/−333. Removes the obsolete live v1 builder while retaining frozen v1 replay. Tuesday deployment does not backfill Monday; the existing Monday schedule remains the normal delivery owner. No Featured publication occurs here.
Real persistent Convex producer upgrade proof preserves two legacy weeks across deployment and all four test payloads across restart, with unchanged classifications and unrelated data. Actual fresh production actions build v2 for both catalogs. Provider-unavailable outcomes are real; successful classification fixtures are explicitly local and deterministic. All nine producer/owner source blobs match the unified candidate. Missing delivery credentials stop before fetch, so this proves producer persistence without a Discord post.