From 68d3d90d2d52a6cc579a4d4dbcc8c859acbb741b Mon Sep 17 00:00:00 2001 From: Danijel Martinek Date: Mon, 18 May 2026 17:36:51 +0200 Subject: [PATCH] chore(work): finish 05-assert-feature-conformance-analyzed --- docs/work/_system/_state.json | 34 ++++++------------- .../_story.md | 6 ++-- .../epics/product-analytics-channel/_epic.md | 4 +-- 3 files changed, 16 insertions(+), 28 deletions(-) diff --git a/docs/work/_system/_state.json b/docs/work/_system/_state.json index 87a7594..b04349c 100644 --- a/docs/work/_system/_state.json +++ b/docs/work/_system/_state.json @@ -1,5 +1,5 @@ { - "updated_at": "2026-05-18T15:15:39.234Z", + "updated_at": "2026-05-18T15:36:52.572Z", "epics": { "binder-wrap-helper": { "status": "done", @@ -289,10 +289,10 @@ "blocks": [] }, "05-assert-feature-conformance-analyzed": { - "status": "todo", + "status": "done", "title": "Extend assertFeatureConformance to check Analyzed brand", "ac_total": 1, - "ac_completed": 0, + "ac_completed": 1, "depends_on": [ "04-manifest-schema-and-wire-use-case" ], @@ -348,8 +348,13 @@ "ready": [ { "epic": "product-analytics-channel", - "story": "05-assert-feature-conformance-analyzed", - "title": "Extend assertFeatureConformance to check Analyzed brand" + "story": "06-analytics-protocol-bind-context", + "title": "Add AnalyticsProtocol and BindContext.analytics" + }, + { + "epic": "product-analytics-channel", + "story": "07-eslint-rule-no-undeclared-analytics-event", + "title": "Add no-undeclared-analytics-event ESLint rule to @repo/core-eslint" }, { "epic": "product-analytics-channel", @@ -362,23 +367,6 @@ "title": "Documentation — analytics.md, conformance-quickref, CLAUDE.md, template-tiers" } ], - "blocked": [ - { - "epic": "product-analytics-channel", - "story": "06-analytics-protocol-bind-context", - "title": "Add AnalyticsProtocol and BindContext.analytics", - "waiting_on": [ - "product-analytics-channel/05-assert-feature-conformance-analyzed" - ] - }, - { - "epic": "product-analytics-channel", - "story": "07-eslint-rule-no-undeclared-analytics-event", - "title": "Add no-undeclared-analytics-event ESLint rule to @repo/core-eslint", - "waiting_on": [ - "product-analytics-channel/05-assert-feature-conformance-analyzed" - ] - } - ], + "blocked": [], "needs_prd_ship": [] } diff --git a/docs/work/epics/product-analytics-channel/05-assert-feature-conformance-analyzed/_story.md b/docs/work/epics/product-analytics-channel/05-assert-feature-conformance-analyzed/_story.md index 5d3de37..c3055c1 100644 --- a/docs/work/epics/product-analytics-channel/05-assert-feature-conformance-analyzed/_story.md +++ b/docs/work/epics/product-analytics-channel/05-assert-feature-conformance-analyzed/_story.md @@ -3,7 +3,7 @@ id: 05-assert-feature-conformance-analyzed epic: product-analytics-channel title: Extend assertFeatureConformance to check Analyzed brand type: technical-story -status: todo +status: done feature: core-shared depends-on: [04-manifest-schema-and-wire-use-case] blocks: @@ -12,7 +12,7 @@ blocks: 07-eslint-rule-no-undeclared-analytics-event, ] created: 2026-05-18T12:04:00Z -updated: 2026-05-18T10:46:27.080Z +updated: 2026-05-18T15:36:52.400Z --- ## Goal @@ -42,4 +42,4 @@ This is the boot-time gate that prevents analytics events from being declared in ## Tasks -- [ ] Add `Analyzed` brand check to `assertFeatureConformance` when `manifest.useCases[name].analyticsEvents.length > 0` + synthetic conformance test asserting `ConformanceError` with message naming `Analyzed` for unwrapped bindings — all gates pass on this commit. +- [x] Add `Analyzed` brand check to `assertFeatureConformance` when `manifest.useCases[name].analyticsEvents.length > 0` + synthetic conformance test asserting `ConformanceError` with message naming `Analyzed` for unwrapped bindings — all gates pass on this commit. diff --git a/docs/work/epics/product-analytics-channel/_epic.md b/docs/work/epics/product-analytics-channel/_epic.md index be00c2c..65ee31f 100644 --- a/docs/work/epics/product-analytics-channel/_epic.md +++ b/docs/work/epics/product-analytics-channel/_epic.md @@ -6,7 +6,7 @@ type: epic status: in-progress features: [core-analytics, core-shared, core-testing, core-eslint] created: 2026-05-18T12:00:00Z -updated: 2026-05-18T15:15:39.064Z +updated: 2026-05-18T15:36:52.400Z --- ## Goal @@ -23,7 +23,7 @@ Consumers routinely bolt analytics SDKs on at the React component layer, bypassi - [x] [02 — Add RecordingAnalytics to @repo/core-testing](02-recording-analytics/_story.md) - [x] [03 — Add Analyzed brand and withAnalytics wrapper](03-analyzed-brand-and-with-analytics-wrapper/_story.md) - [x] [04 — Extend manifest schema and wireUseCase with analyticsEvents](04-manifest-schema-and-wire-use-case/_story.md) -- [ ] [05 — Extend assertFeatureConformance to check Analyzed brand](05-assert-feature-conformance-analyzed/_story.md) +- [x] [05 — Extend assertFeatureConformance to check Analyzed brand](05-assert-feature-conformance-analyzed/_story.md) - [ ] [06 — Add AnalyticsProtocol and BindContext.analytics](06-analytics-protocol-bind-context/_story.md) - [ ] [07 — Add no-undeclared-analytics-event ESLint rule](07-eslint-rule-no-undeclared-analytics-event/_story.md) - [ ] [08 — Add React provider to @repo/core-analytics](08-react-provider/_story.md)