diff --git a/openspec/changes/2025-11-17-blog-mvp/proposal.md b/openspec/changes/2025-11-17-blog-mvp/proposal.md new file mode 100644 index 0000000..e9accb5 --- /dev/null +++ b/openspec/changes/2025-11-17-blog-mvp/proposal.md @@ -0,0 +1,37 @@ +# Proposal: Blog MVP (Internal + Substack Cross‑Posting) + +Status: draft +Authors: Content Team +Owners: Content Lead, Web Lead +Created: 2025-11-17 +Scope: spec +Related: openspec/specs/feature-blog.md + +Summary +- Build a native blog with editor, tags, scheduling, members‑only posts, RSS/Atom, and optional Substack cross‑posting with canonical link sync. + +Motivation +- Provide an accessible, SEO‑friendly blog with members‑only capability while leveraging Substack reach when desired. + +Requirements +- Accessibility: accessible editor UI, semantic output, keyboard/focus, reduced motion. +- SEO: canonical URLs, Open Graph/Twitter cards, sitemaps, RSS/Atom. +- Cross‑post: publish to Substack, sync canonical link/excerpt; import back if edited. + +API +- Posts CRUD; media; tags; cross‑post webhooks. + +Test Plan +- Axe checks on output; server‑side rendering tests; cross‑post integration tests. + +Rollout +- Feature flag; migrate selected posts from Wix; redirects. + +Acceptance Criteria +- Editor accessibility verified; SEO outputs validated; cross‑post round‑trip confirmed. + +Slash Commands +- `/review areas=web,accessibility,security` +- `/apply spec=openspec/specs/feature-blog.md` +- `/archive link=` +