From e98457151dc42220df1e58c4f14d004c40ba96fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Bombeck?= Date: Thu, 10 Sep 2026 16:16:36 +0200 Subject: [PATCH] Regenerate the OpenAPI document for the error-code catalogue The catalogue lists the answers and restart codes and no longer the retired step ones, and the generated document quotes that list. The skippable-step id type nothing read goes with it. --- docs/api/openapi.yaml | 38 ++++++++++++++++++------------------- src/lib/onboarding/needs.ts | 3 --- 2 files changed, 19 insertions(+), 22 deletions(-) diff --git a/docs/api/openapi.yaml b/docs/api/openapi.yaml index f5800f9fd..93928d033 100644 --- a/docs/api/openapi.yaml +++ b/docs/api/openapi.yaml @@ -29876,25 +29876,25 @@ components: mood.restore.invalid, mood.update.invalid; notification-prefs — notification-prefs.body.invalid_json; nutrient — nutrient.batch.invalid, nutrient.batch.too_large, nutrient.daily.invalid, nutrient.read.invalid, nutrient.water.invalid, nutrient.water.invalid_day; onboarding — - onboarding.complete.invalid, onboarding.disclaimer.invalid, onboarding.step.completed, - onboarding.step.concurrent, onboarding.step.invalid, onboarding.step.outOfOrder, - onboarding.step.rateLimited, onboarding.tour.invalid, onboarding.user.notFound; personal_records — - personal_records.invalid_query; practitioner — practitioner.invalid; profile — - profile.update.emailInUse, profile.update.invalidBody, profile.update.nothingSaved; record_write — - record_write.rate_limited; report-selection — report-selection.body.invalid_json, - report-selection.body.invalid_shape, report-selection.leaves.unknown; route — route.retired; share-link - — share-link.document.decryptFailed, share-link.document.notFound, share-link.document.rateLimited, - share-link.documents.invalid, share-link.report.notFound, share-link.report.rateLimited, - share-link.selection.forbidden_leaf, share-link.selection.unknown_leaf; sharing — - sharing.accept.expired, sharing.accept.not_found, sharing.accept.not_pending, sharing.accept.revoked, - sharing.access.denied, sharing.invite.duplicate, sharing.invite.invalid, sharing.invite.invalid_scope, - sharing.invite.manage_browser_only, sharing.invite.refused, sharing.invite.self, sharing.not_permitted, - sharing.renounce.already_ended, sharing.renounce.not_found, sharing.revoke.already_ended, - sharing.revoke.not_found, sharing.session.changed, sharing.switch.invalid, - sharing.switch.wrong_transport; source-priority — source-priority.body.invalid_json, - source-priority.body.invalid_shape; tokens — tokens.measurements.ceiling_reached; vaccination — - vaccination.booster-invalid, vaccination.booster-no-antigen, vaccination.encounter-not-found, - vaccination.identity-required, vaccination.invalid, vaccination.link.invalid, vaccination.not-found, + onboarding.answers.invalid, onboarding.answers.rateLimited, onboarding.complete.invalid, + onboarding.disclaimer.invalid, onboarding.restart.invalid, onboarding.restart.rateLimited, + onboarding.tour.invalid; personal_records — personal_records.invalid_query; practitioner — + practitioner.invalid; profile — profile.update.emailInUse, profile.update.invalidBody, + profile.update.nothingSaved; record_write — record_write.rate_limited; report-selection — + report-selection.body.invalid_json, report-selection.body.invalid_shape, + report-selection.leaves.unknown; route — route.retired; share-link — share-link.document.decryptFailed, + share-link.document.notFound, share-link.document.rateLimited, share-link.documents.invalid, + share-link.report.notFound, share-link.report.rateLimited, share-link.selection.forbidden_leaf, + share-link.selection.unknown_leaf; sharing — sharing.accept.expired, sharing.accept.not_found, + sharing.accept.not_pending, sharing.accept.revoked, sharing.access.denied, sharing.invite.duplicate, + sharing.invite.invalid, sharing.invite.invalid_scope, sharing.invite.manage_browser_only, + sharing.invite.refused, sharing.invite.self, sharing.not_permitted, sharing.renounce.already_ended, + sharing.renounce.not_found, sharing.revoke.already_ended, sharing.revoke.not_found, + sharing.session.changed, sharing.switch.invalid, sharing.switch.wrong_transport; source-priority — + source-priority.body.invalid_json, source-priority.body.invalid_shape; tokens — + tokens.measurements.ceiling_reached; vaccination — vaccination.booster-invalid, + vaccination.booster-no-antigen, vaccination.encounter-not-found, vaccination.identity-required, + vaccination.invalid, vaccination.link.invalid, vaccination.not-found, vaccination.practitioner-not-found; workout — workout.batch.invalid, workout.batch.payload_too_large, workout.batch.too_large; (unprefixed) — about_me_conflict, ai_response_truncated, coach_prefs_conflict, dashboard_layout_conflict, empty_file, health_score_config_conflict, insights_layout_conflict, diff --git a/src/lib/onboarding/needs.ts b/src/lib/onboarding/needs.ts index 9f5c1f390..1e99d69f5 100644 --- a/src/lib/onboarding/needs.ts +++ b/src/lib/onboarding/needs.ts @@ -67,9 +67,6 @@ export const ONBOARDING_SKIPPABLE_STEP_IDS = [ "first-result", ] as const; -export type OnboardingSkippableStepId = - (typeof ONBOARDING_SKIPPABLE_STEP_IDS)[number]; - /** * Q1 — whose record this is. The vocabularies below are pinned against the * registry's derivation input with `satisfies`, so a value added here that the