Skip to content

feat: deliver complete Featured lineups for both catalogs - #45

Merged
Patrick-Erichsen merged 1 commit into
mainfrom
codex/claw724-full-featured-digest
Sep 16, 2026
Merged

Patrick-Erichsen merged 1 commit into
mainfrom
codex/claw724-full-featured-digest

Conversation

@Patrick-Erichsen

Copy link
Copy Markdown
Contributor

What Problem This Solves

ClawHub intelligence now proposes eight Featured plugins and eight Featured skills per iteration. The existing receiver accepts at most five candidates per catalog and can omit candidates while shortening a message.

User Impact

The weekly digest shows the complete proposed lineups, keeps/additions, removal counts, emerging labels, observed adoption/search counts, freshness, and unfilled slots. Recommendations remain advisory. Long candidate links open the full dashboard; publishing Featured still requires Patrick’s approval.

Why This Change Was Made

Accept the versioned v3 full-lineup contract while preserving frozen v1/v2 payload and receipt behavior. Shared validation retains the three-search threshold for query text. Carbon component buttons keep all sixteen selections accessible within Discord’s limits. Delivery reconciliation matches the complete report fingerprint and link destinations, including after an uncertain send.

Deploy this receiver before ClawHub starts producing v3 digests. No database, credential, or configuration changes.

Evidence

Real boundary Before After
Authenticated receiver with complete v3 lineup Rejected before delivery All 8 plugins and 8 skills represented; replay sends once
Discord link-button contract Accepted 547/557-character URLs Every button ≤512; oversized links open dashboard
Bookmark-supported skill Supporting bookmarks omitted 11 bookmarks displayed
Lost-response reconciliation Candidate link identity omitted Changed link or report fingerprint rejected; exact delivery recovered without repost

Actual isolated native Convex reports for a completed Monday window passed through ClawHub’s production digest builder, this receiver parser, and Carbon renderer (8 local fixture plugins, 0 qualifying fixture skills). No delivery was invoked in this interop check. Local fixtures are regression evidence, not production recommendations.

Validation: bun run typecheck, all 316 tests, Worker deploy:dry-run; full-set tests cover 16 selections, long URLs, message/component limits, privacy validation, rare-query suppression, replay, and uncertainty. Independent source/dependency review found the two display/Discord issues above; both were reproduced and fixed. No real Discord message was sent, as required for this initiative’s dry run.

Production change: +300 net lines for the v3 contract, full-set rendering, and exact report reconciliation; tests +304 lines. Existing v1/v2 behavior remains covered by the same receiver suite.

Related: CLAW-724 — ClawHub intelligence and Featured curation.

@clawsweeper

clawsweeper Bot commented Sep 16, 2026

Copy link
Copy Markdown

🦞👀
ClawSweeper picked this up.

Pull request received. I will update this pull request when review starts.

ClawSweeper review complete

ClawSweeper finished reviewing this revision. The review result is being finalized.

View the workflow run.

@clawsweeper

clawsweeper Bot commented Sep 16, 2026

Copy link
Copy Markdown

ClawSweeper status: review started.

I am starting a fresh review of this pull request: feat: deliver complete Featured lineups for both catalogs This is item 1/1 in the current shard. Shard 0/1.

This placeholder means the worker is alive and reading the current context. I will edit this same comment with the actual review when the claws are done clicking.

Crustacean status: shell secured, claws on keyboard, evidence pebbles being sorted.

@Patrick-Erichsen
Patrick-Erichsen merged commit 911c819 into main Sep 16, 2026
6 checks passed
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