diff --git a/docs/work/_system/_state.json b/docs/work/_system/_state.json index c299efa..f9ef579 100644 --- a/docs/work/_system/_state.json +++ b/docs/work/_system/_state.json @@ -1,5 +1,5 @@ { - "updated_at": "2026-05-19T21:38:49.057Z", + "updated_at": "2026-05-19T21:56:59.159Z", "epics": { "binder-wrap-helper": { "status": "done", @@ -344,10 +344,10 @@ ] }, "10-auth-signup-migration": { - "status": "todo", + "status": "done", "title": "auth signUp anonymous consent migration", "ac_total": 1, - "ac_completed": 0, + "ac_completed": 1, "depends_on": [ "04-core-consent-implementation" ], @@ -569,11 +569,6 @@ } }, "ready": [ - { - "epic": "dsr-consent-and-cookie-banner", - "story": "10-auth-signup-migration", - "title": "auth signUp anonymous consent migration" - }, { "epic": "dsr-consent-and-cookie-banner", "story": "11-documentation", diff --git a/docs/work/epics/dsr-consent-and-cookie-banner/10-auth-signup-migration/_story.md b/docs/work/epics/dsr-consent-and-cookie-banner/10-auth-signup-migration/_story.md index e5008d4..053d21b 100644 --- a/docs/work/epics/dsr-consent-and-cookie-banner/10-auth-signup-migration/_story.md +++ b/docs/work/epics/dsr-consent-and-cookie-banner/10-auth-signup-migration/_story.md @@ -3,12 +3,12 @@ id: 10-auth-signup-migration epic: dsr-consent-and-cookie-banner title: auth signUp anonymous consent migration type: technical-story -status: todo +status: done feature: auth depends-on: [04-core-consent-implementation] blocks: [11-documentation] created: 2026-05-19T12:00:00Z -updated: 2026-05-19T09:55:07.020Z +updated: 2026-05-19T21:56:58.992Z --- ## Goal @@ -40,4 +40,4 @@ Without this integration, anonymous users who consented via the banner before si ## Tasks -- [ ] Extend `auth.signUp` use case to call `extractAnonymousConsent(cookieHeader)` + `migrateAnonymousConsent({ userId, cookieState, bannerVersion, policyVersion })` when a `__consent_state` cookie is present, set `Set-Cookie: __consent_state=; Max-Age=0` in the response, and inject `IConsent` into the use case deps (optional, guarded with `?.`); extend `sign-up.use-case.test.ts` with `RecordingConsent` to assert migration call shape, audit entry `method: "signup-migration"`, and cookie-clear; all gates pass. +- [x] Extend `auth.signUp` use case to call `extractAnonymousConsent(cookieHeader)` + `migrateAnonymousConsent({ userId, cookieState, bannerVersion, policyVersion })` when a `__consent_state` cookie is present, set `Set-Cookie: __consent_state=; Max-Age=0` in the response, and inject `IConsent` into the use case deps (optional, guarded with `?.`); extend `sign-up.use-case.test.ts` with `RecordingConsent` to assert migration call shape, audit entry `method: "signup-migration"`, and cookie-clear; all gates pass. diff --git a/docs/work/epics/dsr-consent-and-cookie-banner/_epic.md b/docs/work/epics/dsr-consent-and-cookie-banner/_epic.md index 6e01466..2bbe66b 100644 --- a/docs/work/epics/dsr-consent-and-cookie-banner/_epic.md +++ b/docs/work/epics/dsr-consent-and-cookie-banner/_epic.md @@ -16,7 +16,7 @@ features: auth, ] created: 2026-05-19T12:00:00Z -updated: 2026-05-19T21:38:48.887Z +updated: 2026-05-19T21:56:58.992Z --- ## Goal @@ -38,5 +38,5 @@ Epic A delivered declarative PII inventory + retention + sub-processors. Epic B - [x] [07 — core-api router composition: dsrRouter + consentRouter into appRouter](07-core-api-router-composition/_story.md) - [x] [08 — core-ui scaffold](08-core-ui-scaffold/_story.md) - [x] [09 — CookieConsentBanner component in core-ui](09-cookie-consent-banner/_story.md) -- [ ] [10 — auth signUp anonymous consent migration](10-auth-signup-migration/_story.md) +- [x] [10 — auth signUp anonymous consent migration](10-auth-signup-migration/_story.md) - [ ] [11 — Documentation: DSR guide + consent guide + glossary + CLAUDE.md](11-documentation/_story.md)