Files
unique/CLAUDE.md
T
rzen 622d9d63fd pipeline: autonomous operation — shortlist stage, auto modes, daily-pipeline orchestrator
- daily-finds: feed-first fetch strategy (fetch: feed + feedUrl), cadence-aware
  scanning, new score-and-shortlist stage (shortlist: true, up to 12/day, top
  1-3 flagged as review candidates), Amazon affiliate lookup for shortlisted
  physical products, and authority to apply mechanical sources.json maintenance
  (skip dead sources, demote dormant ones, record working fetch paths) instead
  of logging recommendations nobody executes.
- build-bundle: auto mode (no confirmation gate when unattended) and a 'weekly'
  date-based catch mode so shortlisted finds never sit invisible for weeks.
- cluster-bundles: auto mode.
- build-review: hero.ts registration step removed (heroes auto-discovered from
  hero.<ext>); mandatory fact-check against the product's own site in auto
  mode; amazonLink carry-through; auto mode publishes and logs instead of
  pausing twice for approval.
- New daily-pipeline skill: capture → bundle → reviews → pick of the day →
  build → commit → push → digest, with granular per-stage commits. This is the
  entrypoint for scheduled runs.
- Project CLAUDE.md documenting the pipeline and its foot-gun conventions.
2026-07-03 15:21:27 -04:00

2.1 KiB
Raw Blame History

unique.rzen.dev

A daily product-discovery site (Astro, static). The editorial pipeline is skill-driven and designed to run unattended.

Pipeline

  • /daily-pipeline — the whole daily chain: capture → bundle → reviews → pick of the day → build → commit → push → digest. This is the entrypoint for scheduled/headless runs.
  • /daily-finds — capture-only sweep of sources.json; writes src/content/find/<yyyy>/<mm>/<slug>/, marks the day's shortlist (shortlist: true, up to 12), adds amazonLink for confidently-matched physical products, and applies mechanical source maintenance.
  • /build-bundle [auto|weekly|<theme>|<slugs>] — one themed roundup referencing find slugs. weekly = date-based catch of unbundled shortlist finds.
  • /cluster-bundles [auto] — batch-cluster the backlog into 47 bundles.
  • /build-review <slug> [auto] — graduate a find to a full review (fact-check against the product's own site is mandatory in auto mode).

Unattended runs never pause for confirmation — they publish, log to daily-finds.log.md, and report a digest; the user vetoes after the fact. Only two things stay user-only: vetting candidate-sources.md nominees into sources.json, and scheduling.

Conventions that bite

  • Review heroes are auto-discovered from src/content/reviews/<slug>/hero.<ext> (src/lib/hero.ts glob) — name the file hero.*; no registration.
  • The homepage "pick of the day" is src/data/pick.json ({"hero": "<review-slug>"}); falls back to the latest review.
  • Find slugs are globally unique although folders are date-bucketed; URLs stay flat at /find/<slug>/.
  • Finds are only reachable through bundles — an unbundled find is invisible on the site.
  • source frontmatter must exactly match a name in sources.json.
  • Amazon links: store canonical https://www.amazon.com/dp/<ASIN> with no query params; src/lib/affiliate.ts adds the tracking ID, badge, and disclosure at render time.
  • Commit style: see git logcontent: … for capture runs, site: … for everything user-visible; one commit per pipeline stage.
  • npm run build (astro check + build) must pass before pushing.