Files
james.maesandClaude Opus 5.5 2c7280b789 feat!: move to Site API v2 with every post field, on-device details and publishing controls
Site API v1 is gone; v2 publishes the CMS model, so the app can now set every
post field. The v1 client and mock are removed (owner decision).

- Client generated from the live v2 spec, filtered to the operations the app
  uses (make update-spec filters it; 93 KB instead of 2 MB); app-owned models
  mapped from the v2 records; untyped processes (/me, uploads, link preview,
  versions) called through the same middlewares.
- v2 has no idempotency keys or ETags: a retried create adopts the post an
  earlier attempt made, slugs are made unique per blog, and edits and deletes
  compare modifyDate first (412 conflict).
- Posts carry title, name, short name, slug, description, excerpt, read time,
  SEO title/description/keywords, featured flag and image, author and
  schedule; blank fields are filled by deterministic rules.
- Composer: Details & SEO section with on-device suggestions (Foundation
  Models, never Private Cloud Compute; rules as fallback), Draft / Publish now /
  Schedule, Featured, author picker, post image choice, nearby place labels.
  The Shortcuts intent and Share Extension fill details too.
- Post detail shows every stored field.
- In-process v2 fake for Mock mode and tests; 305 unit tests at 100% line
  coverage of KoF22Kit; new UI test for suggestions and drafts.

BREAKING CHANGE: only Site API v2 is supported.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: James Maes <james@kof22.com>
2026-10-13 16:13:46 -05:00
..
2026-10-12 12:02:58 -05:00