Skip to content

U3: Seed product-managed Events Roundup format #3

@breadback00-dev

Description

@breadback00-dev

What is the work

Add the first controlled format: a product-managed Events Roundup format optimized for Bristol/local-media roundups while supporting fewer or more than 10 events.

Planned areas:

  • lib/formats/
  • convex/formats.ts
  • components/formats/
  • app/studio/page.tsx
  • convex/formats.test.ts
  • components/formats/*.test.tsx

Why does it matter

Controlled formats are the product primitive. They give the agent intake lane a target, drive slide generation, and prevent the app from becoming a generic blank-canvas design tool.

What does done mean

  • Events Roundup can be selected from the studio entry surface.
  • The format defines purpose, item expectations, required/optional details, slide roles, readiness rules, and fit budgets.
  • The format works for fewer and more than 10 events.
  • Format metadata drives both intake targets and slide population rules.

Acceptance criteria

  • Editor can select Events Roundup from the format entry screen.
  • Format accepts fewer than 10 events.
  • Format accepts more than 10 events while preserving order.
  • Project creation is blocked or flagged if required format metadata is missing.
  • Tests prove format metadata is consumed by intake and slide-generation rules.

Blockers

What can make this fail

  • The format is too rigid and only supports exactly 10 events.
  • The format is too abstract and becomes a hidden format-builder project.
  • Required vs optional fields are unclear, causing intake and editor review to diverge.
  • UI presents this like a template gallery before the first format is proven.

How should Codex verify it

  • Run format unit tests and component tests.
  • Verify the studio entry route can create/select the Events Roundup format.
  • Add fixture coverage for <10, 10, and >10 event cases.
  • Confirm no user-facing format builder is introduced in this issue.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions