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

25 lines
2.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 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 log``content: …` for capture runs, `site: …` for everything user-visible; one commit per pipeline stage.
- `npm run build` (astro check + build) must pass before pushing.