From 60446e8b403c9c5d7c90f37b571eb24e46d1932e Mon Sep 17 00:00:00 2001 From: tegwick Date: Mon, 27 Jul 2026 22:33:49 +0200 Subject: [PATCH] Register production portal workplan --- WORK-RECORDS.md | 155 ++++++++++++++++++ ...-service-and-user-administration-portal.md | 9 + 2 files changed, 164 insertions(+) create mode 100644 WORK-RECORDS.md diff --git a/WORK-RECORDS.md b/WORK-RECORDS.md new file mode 100644 index 0000000..55dbb30 --- /dev/null +++ b/WORK-RECORDS.md @@ -0,0 +1,155 @@ +# Work Records — user-engine + +> Generated by `statehub fix-consistency` (CUST-WP-0061-T04, work-record +> stage 3). Do not edit by hand — edit the source file/block listed for +> each record and re-run fix-consistency to refresh this index. Archived +> workplans are omitted; closed decisions/intakes/engagements stay listed +> so recently-resolved work is still visible. [auto] + +| Kind | ID | Status | Lane | Source | +| --- | --- | --- | --- | --- | +| workplan | USER-WP-0001 | finished | — | workplans/USER-WP-0001-preparation-and-interface-adoption.md | +| workplan | USER-WP-0002 | finished | — | workplans/USER-WP-0002-isolated-mvp.md | +| workplan | USER-WP-0003 | finished | — | workplans/USER-WP-0003-multi-tenancy.md | +| workplan | USER-WP-0004 | finished | — | workplans/USER-WP-0004-multi-application-catalogs.md | +| workplan | USER-WP-0005 | finished | — | workplans/USER-WP-0005-integrated-test-scenarios.md | +| workplan | USER-WP-0006 | finished | — | workplans/USER-WP-0006-finalization-polish.md | +| workplan | USER-WP-0007 | finished | — | workplans/USER-WP-0007-identity-domain-canon-alignment.md | +| workplan | USER-WP-0008 | finished | — | workplans/USER-WP-0008-family-dataspace-onboarding.md | +| workplan | USER-WP-0009 | finished | — | workplans/USER-WP-0009-postgres-durable-store-requirements.md | +| workplan | USER-WP-0010 | finished | — | workplans/USER-WP-0010-registration-identity-and-factor-model.md | +| workplan | USER-WP-0011 | finished | — | workplans/USER-WP-0011-prepared-accounts-and-entitlement-claims.md | +| workplan | USER-WP-0012 | finished | — | workplans/USER-WP-0012-hats-realms-services-assets-access-profiles.md | +| workplan | USER-WP-0013 | finished | — | workplans/USER-WP-0013-onboarding-journeys-and-welcome-protocols.md | +| workplan | USER-WP-0014 | finished | — | workplans/USER-WP-0014-registration-and-access-management-ui.md | +| workplan | USER-WP-0015 | finished | — | workplans/USER-WP-0015-registration-scenario-and-security-conformance.md | +| workplan | USER-WP-0016 | finished | — | workplans/USER-WP-0016-durable-store-migration-and-conformance-harness.md | +| workplan | USER-WP-0017 | finished | — | workplans/USER-WP-0017-durable-store-record-serialization.md | +| workplan | USER-WP-0018 | finished | — | workplans/USER-WP-0018-postgres-store-adapter.md | +| workplan | USER-WP-0019 | finished | — | workplans/USER-WP-0019-provider-backed-postgres-conformance.md | +| workplan | USER-WP-0020 | ready | — | workplans/USER-WP-0020-self-service-and-user-administration-portal.md | +| task | USER-WP-0001-T1 | done | — | workplans/USER-WP-0001-preparation-and-interface-adoption.md | +| task | USER-WP-0001-T2 | done | — | workplans/USER-WP-0001-preparation-and-interface-adoption.md | +| task | USER-WP-0001-T3 | done | — | workplans/USER-WP-0001-preparation-and-interface-adoption.md | +| task | USER-WP-0001-T4 | done | — | workplans/USER-WP-0001-preparation-and-interface-adoption.md | +| task | USER-WP-0001-T5 | done | — | workplans/USER-WP-0001-preparation-and-interface-adoption.md | +| task | USER-WP-0002-T1 | done | — | workplans/USER-WP-0002-isolated-mvp.md | +| task | USER-WP-0002-T2 | done | — | workplans/USER-WP-0002-isolated-mvp.md | +| task | USER-WP-0002-T3 | done | — | workplans/USER-WP-0002-isolated-mvp.md | +| task | USER-WP-0002-T4 | done | — | workplans/USER-WP-0002-isolated-mvp.md | +| task | USER-WP-0002-T5 | done | — | workplans/USER-WP-0002-isolated-mvp.md | +| task | USER-WP-0002-T6 | done | — | workplans/USER-WP-0002-isolated-mvp.md | +| task | USER-WP-0002-T7 | done | — | workplans/USER-WP-0002-isolated-mvp.md | +| task | USER-WP-0003-T1 | done | — | workplans/USER-WP-0003-multi-tenancy.md | +| task | USER-WP-0003-T2 | done | — | workplans/USER-WP-0003-multi-tenancy.md | +| task | USER-WP-0003-T3 | done | — | workplans/USER-WP-0003-multi-tenancy.md | +| task | USER-WP-0003-T4 | done | — | workplans/USER-WP-0003-multi-tenancy.md | +| task | USER-WP-0003-T5 | done | — | workplans/USER-WP-0003-multi-tenancy.md | +| task | USER-WP-0003-T6 | done | — | workplans/USER-WP-0003-multi-tenancy.md | +| task | USER-WP-0003-T7 | done | — | workplans/USER-WP-0003-multi-tenancy.md | +| task | USER-WP-0004-T1 | done | — | workplans/USER-WP-0004-multi-application-catalogs.md | +| task | USER-WP-0004-T2 | done | — | workplans/USER-WP-0004-multi-application-catalogs.md | +| task | USER-WP-0004-T3 | done | — | workplans/USER-WP-0004-multi-application-catalogs.md | +| task | USER-WP-0004-T4 | done | — | workplans/USER-WP-0004-multi-application-catalogs.md | +| task | USER-WP-0004-T5 | done | — | workplans/USER-WP-0004-multi-application-catalogs.md | +| task | USER-WP-0004-T6 | done | — | workplans/USER-WP-0004-multi-application-catalogs.md | +| task | USER-WP-0004-T7 | done | — | workplans/USER-WP-0004-multi-application-catalogs.md | +| task | USER-WP-0005-T1 | done | — | workplans/USER-WP-0005-integrated-test-scenarios.md | +| task | USER-WP-0005-T2 | done | — | workplans/USER-WP-0005-integrated-test-scenarios.md | +| task | USER-WP-0005-T3 | done | — | workplans/USER-WP-0005-integrated-test-scenarios.md | +| task | USER-WP-0005-T4 | done | — | workplans/USER-WP-0005-integrated-test-scenarios.md | +| task | USER-WP-0005-T5 | done | — | workplans/USER-WP-0005-integrated-test-scenarios.md | +| task | USER-WP-0005-T6 | done | — | workplans/USER-WP-0005-integrated-test-scenarios.md | +| task | USER-WP-0005-T7 | done | — | workplans/USER-WP-0005-integrated-test-scenarios.md | +| task | USER-WP-0006-T1 | done | — | workplans/USER-WP-0006-finalization-polish.md | +| task | USER-WP-0006-T2 | done | — | workplans/USER-WP-0006-finalization-polish.md | +| task | USER-WP-0006-T3 | done | — | workplans/USER-WP-0006-finalization-polish.md | +| task | USER-WP-0006-T4 | done | — | workplans/USER-WP-0006-finalization-polish.md | +| task | USER-WP-0006-T5 | done | — | workplans/USER-WP-0006-finalization-polish.md | +| task | USER-WP-0006-T6 | done | — | workplans/USER-WP-0006-finalization-polish.md | +| task | USER-WP-0006-T7 | done | — | workplans/USER-WP-0006-finalization-polish.md | +| task | USER-WP-0007-T1 | done | — | workplans/USER-WP-0007-identity-domain-canon-alignment.md | +| task | USER-WP-0007-T2 | done | — | workplans/USER-WP-0007-identity-domain-canon-alignment.md | +| task | USER-WP-0007-T3 | done | — | workplans/USER-WP-0007-identity-domain-canon-alignment.md | +| task | USER-WP-0007-T4 | done | — | workplans/USER-WP-0007-identity-domain-canon-alignment.md | +| task | USER-WP-0007-T5 | done | — | workplans/USER-WP-0007-identity-domain-canon-alignment.md | +| task | USER-WP-0007-T6 | done | — | workplans/USER-WP-0007-identity-domain-canon-alignment.md | +| task | USER-WP-0007-T7 | done | — | workplans/USER-WP-0007-identity-domain-canon-alignment.md | +| task | USER-WP-0007-T8 | done | — | workplans/USER-WP-0007-identity-domain-canon-alignment.md | +| task | USER-WP-0008-T1 | done | — | workplans/USER-WP-0008-family-dataspace-onboarding.md | +| task | USER-WP-0008-T2 | done | — | workplans/USER-WP-0008-family-dataspace-onboarding.md | +| task | USER-WP-0008-T3 | done | — | workplans/USER-WP-0008-family-dataspace-onboarding.md | +| task | USER-WP-0008-T4 | done | — | workplans/USER-WP-0008-family-dataspace-onboarding.md | +| task | USER-WP-0008-T5 | done | — | workplans/USER-WP-0008-family-dataspace-onboarding.md | +| task | USER-WP-0008-T6 | done | — | workplans/USER-WP-0008-family-dataspace-onboarding.md | +| task | USER-WP-0008-T7 | done | — | workplans/USER-WP-0008-family-dataspace-onboarding.md | +| task | USER-WP-0008-T8 | done | — | workplans/USER-WP-0008-family-dataspace-onboarding.md | +| task | USER-WP-0009-T1 | done | — | workplans/USER-WP-0009-postgres-durable-store-requirements.md | +| task | USER-WP-0009-T2 | done | — | workplans/USER-WP-0009-postgres-durable-store-requirements.md | +| task | USER-WP-0009-T3 | done | — | workplans/USER-WP-0009-postgres-durable-store-requirements.md | +| task | USER-WP-0009-T4 | done | — | workplans/USER-WP-0009-postgres-durable-store-requirements.md | +| task | USER-WP-0009-T5 | done | — | workplans/USER-WP-0009-postgres-durable-store-requirements.md | +| task | USER-WP-0009-T6 | done | — | workplans/USER-WP-0009-postgres-durable-store-requirements.md | +| task | USER-WP-0010-T1 | done | — | workplans/USER-WP-0010-registration-identity-and-factor-model.md | +| task | USER-WP-0010-T2 | done | — | workplans/USER-WP-0010-registration-identity-and-factor-model.md | +| task | USER-WP-0010-T3 | done | — | workplans/USER-WP-0010-registration-identity-and-factor-model.md | +| task | USER-WP-0010-T4 | done | — | workplans/USER-WP-0010-registration-identity-and-factor-model.md | +| task | USER-WP-0010-T5 | done | — | workplans/USER-WP-0010-registration-identity-and-factor-model.md | +| task | USER-WP-0010-T6 | done | — | workplans/USER-WP-0010-registration-identity-and-factor-model.md | +| task | USER-WP-0011-T1 | done | — | workplans/USER-WP-0011-prepared-accounts-and-entitlement-claims.md | +| task | USER-WP-0011-T2 | done | — | workplans/USER-WP-0011-prepared-accounts-and-entitlement-claims.md | +| task | USER-WP-0011-T3 | done | — | workplans/USER-WP-0011-prepared-accounts-and-entitlement-claims.md | +| task | USER-WP-0011-T4 | done | — | workplans/USER-WP-0011-prepared-accounts-and-entitlement-claims.md | +| task | USER-WP-0011-T5 | done | — | workplans/USER-WP-0011-prepared-accounts-and-entitlement-claims.md | +| task | USER-WP-0011-T6 | done | — | workplans/USER-WP-0011-prepared-accounts-and-entitlement-claims.md | +| task | USER-WP-0012-T1 | done | — | workplans/USER-WP-0012-hats-realms-services-assets-access-profiles.md | +| task | USER-WP-0012-T2 | done | — | workplans/USER-WP-0012-hats-realms-services-assets-access-profiles.md | +| task | USER-WP-0012-T3 | done | — | workplans/USER-WP-0012-hats-realms-services-assets-access-profiles.md | +| task | USER-WP-0012-T4 | done | — | workplans/USER-WP-0012-hats-realms-services-assets-access-profiles.md | +| task | USER-WP-0012-T5 | done | — | workplans/USER-WP-0012-hats-realms-services-assets-access-profiles.md | +| task | USER-WP-0012-T6 | done | — | workplans/USER-WP-0012-hats-realms-services-assets-access-profiles.md | +| task | USER-WP-0013-T1 | done | — | workplans/USER-WP-0013-onboarding-journeys-and-welcome-protocols.md | +| task | USER-WP-0013-T2 | done | — | workplans/USER-WP-0013-onboarding-journeys-and-welcome-protocols.md | +| task | USER-WP-0013-T3 | done | — | workplans/USER-WP-0013-onboarding-journeys-and-welcome-protocols.md | +| task | USER-WP-0013-T4 | done | — | workplans/USER-WP-0013-onboarding-journeys-and-welcome-protocols.md | +| task | USER-WP-0013-T5 | done | — | workplans/USER-WP-0013-onboarding-journeys-and-welcome-protocols.md | +| task | USER-WP-0014-T1 | done | — | workplans/USER-WP-0014-registration-and-access-management-ui.md | +| task | USER-WP-0014-T2 | done | — | workplans/USER-WP-0014-registration-and-access-management-ui.md | +| task | USER-WP-0014-T3 | done | — | workplans/USER-WP-0014-registration-and-access-management-ui.md | +| task | USER-WP-0014-T4 | done | — | workplans/USER-WP-0014-registration-and-access-management-ui.md | +| task | USER-WP-0014-T5 | done | — | workplans/USER-WP-0014-registration-and-access-management-ui.md | +| task | USER-WP-0014-T6 | done | — | workplans/USER-WP-0014-registration-and-access-management-ui.md | +| task | USER-WP-0015-T1 | done | — | workplans/USER-WP-0015-registration-scenario-and-security-conformance.md | +| task | USER-WP-0015-T2 | done | — | workplans/USER-WP-0015-registration-scenario-and-security-conformance.md | +| task | USER-WP-0015-T3 | done | — | workplans/USER-WP-0015-registration-scenario-and-security-conformance.md | +| task | USER-WP-0015-T4 | done | — | workplans/USER-WP-0015-registration-scenario-and-security-conformance.md | +| task | USER-WP-0015-T5 | done | — | workplans/USER-WP-0015-registration-scenario-and-security-conformance.md | +| task | USER-WP-0015-T6 | done | — | workplans/USER-WP-0015-registration-scenario-and-security-conformance.md | +| task | USER-WP-0016-T1 | done | — | workplans/USER-WP-0016-durable-store-migration-and-conformance-harness.md | +| task | USER-WP-0016-T2 | done | — | workplans/USER-WP-0016-durable-store-migration-and-conformance-harness.md | +| task | USER-WP-0016-T3 | done | — | workplans/USER-WP-0016-durable-store-migration-and-conformance-harness.md | +| task | USER-WP-0016-T4 | done | — | workplans/USER-WP-0016-durable-store-migration-and-conformance-harness.md | +| task | USER-WP-0016-T5 | done | — | workplans/USER-WP-0016-durable-store-migration-and-conformance-harness.md | +| task | USER-WP-0017-T1 | done | — | workplans/USER-WP-0017-durable-store-record-serialization.md | +| task | USER-WP-0017-T2 | done | — | workplans/USER-WP-0017-durable-store-record-serialization.md | +| task | USER-WP-0017-T3 | done | — | workplans/USER-WP-0017-durable-store-record-serialization.md | +| task | USER-WP-0017-T4 | done | — | workplans/USER-WP-0017-durable-store-record-serialization.md | +| task | USER-WP-0017-T5 | done | — | workplans/USER-WP-0017-durable-store-record-serialization.md | +| task | USER-WP-0018-T1 | done | — | workplans/USER-WP-0018-postgres-store-adapter.md | +| task | USER-WP-0018-T2 | done | — | workplans/USER-WP-0018-postgres-store-adapter.md | +| task | USER-WP-0018-T3 | done | — | workplans/USER-WP-0018-postgres-store-adapter.md | +| task | USER-WP-0018-T4 | done | — | workplans/USER-WP-0018-postgres-store-adapter.md | +| task | USER-WP-0018-T5 | done | — | workplans/USER-WP-0018-postgres-store-adapter.md | +| task | USER-WP-0019-T1 | done | — | workplans/USER-WP-0019-provider-backed-postgres-conformance.md | +| task | USER-WP-0019-T2 | done | — | workplans/USER-WP-0019-provider-backed-postgres-conformance.md | +| task | USER-WP-0019-T3 | done | — | workplans/USER-WP-0019-provider-backed-postgres-conformance.md | +| task | USER-WP-0019-T4 | done | — | workplans/USER-WP-0019-provider-backed-postgres-conformance.md | +| task | USER-WP-0019-T5 | done | — | workplans/USER-WP-0019-provider-backed-postgres-conformance.md | +| task | USER-WP-0020-T01 | todo | — | workplans/USER-WP-0020-self-service-and-user-administration-portal.md | +| task | USER-WP-0020-T02 | wait | — | workplans/USER-WP-0020-self-service-and-user-administration-portal.md | +| task | USER-WP-0020-T03 | wait | — | workplans/USER-WP-0020-self-service-and-user-administration-portal.md | +| task | USER-WP-0020-T04 | wait | — | workplans/USER-WP-0020-self-service-and-user-administration-portal.md | +| task | USER-WP-0020-T05 | wait | — | workplans/USER-WP-0020-self-service-and-user-administration-portal.md | +| task | USER-WP-0020-T06 | wait | — | workplans/USER-WP-0020-self-service-and-user-administration-portal.md | +| task | USER-WP-0020-T07 | wait | — | workplans/USER-WP-0020-self-service-and-user-administration-portal.md | +| task | USER-WP-0020-T08 | wait | — | workplans/USER-WP-0020-self-service-and-user-administration-portal.md | diff --git a/workplans/USER-WP-0020-self-service-and-user-administration-portal.md b/workplans/USER-WP-0020-self-service-and-user-administration-portal.md index 0e5c1e2..1bdba59 100644 --- a/workplans/USER-WP-0020-self-service-and-user-administration-portal.md +++ b/workplans/USER-WP-0020-self-service-and-user-administration-portal.md @@ -13,6 +13,7 @@ depends_on: - USER-WP-0014 - USER-WP-0015 - USER-WP-0019 +state_hub_workstream_id: "35b9c315-e721-4e0b-9710-bad04f8d2519" --- # USER-WP-0020 - Production self-service and user administration portal @@ -35,6 +36,7 @@ authorization decisions. id: USER-WP-0020-T01 status: todo priority: high +state_hub_task_id: "9886ac8d-7456-4de0-b019-351dfd74ec20" ``` Define browser/API trust boundaries, public and authenticated routes, role @@ -54,6 +56,7 @@ metadata for that later stage. id: USER-WP-0020-T02 status: wait priority: high +state_hub_task_id: "fdb0c322-3efe-4077-bfba-1648787ef411" ``` Expose versioned APIs for registration start/resume/complete, invitation @@ -69,6 +72,7 @@ OpenAPI, health/readiness, redacted audit, and transactional outbox behavior. id: USER-WP-0020-T03 status: wait priority: high +state_hub_task_id: "45ed1485-003d-4e5f-99fb-91b1b430f3fa" ``` Build an accessible responsive browser flow for sign in, registration, @@ -84,6 +88,7 @@ admin credentials or store password/MFA secrets. id: USER-WP-0020-T04 status: wait priority: high +state_hub_task_id: "16555b68-17ef-4902-bd30-f9a0cfe10f9e" ``` Tenant admins can invite, list, inspect, suspend, reactivate, and remove only @@ -100,6 +105,7 @@ platform or other-tenant data. id: USER-WP-0020-T05 status: wait priority: high +state_hub_task_id: "65ff5c96-134a-4ec2-ad92-511f0e5f6f04" ``` Package the service and web assets, use the provider-backed Postgres adapter, @@ -114,6 +120,7 @@ never become authoritative. id: USER-WP-0020-T06 status: wait priority: high +state_hub_task_id: "39dc383c-7213-495d-8e12-58e614706afe" ``` Automate positive and negative flows for self-registration, invite-only @@ -128,6 +135,7 @@ keyboard/screen-reader behavior, and mobile/desktop layouts. id: USER-WP-0020-T07 status: wait priority: high +state_hub_task_id: "b8d1c048-24d2-416c-908f-e500d63c6865" ``` Through the deployed portal—not a one-shot script—create or claim Binky, @@ -142,6 +150,7 @@ admin can invite and lifecycle-manage a disposable Binky test user. id: USER-WP-0020-T08 status: wait priority: medium +state_hub_task_id: "ecbdeef3-a0a9-40d6-9722-5cc650d78a49" ``` Close after the portal is production-operable and the Binky acceptance case