feat(modules): default the illness journal on

The illness module shipped opt-in/default-off via a bornGated flag, the
inverse of the standard disabled-allowlist. Make it a normal optional
module that defaults on (opt-out), matching labs and its siblings.

No module used bornGated other than illness, so drop the flag, its
isBornGatedModule helper, and the gate resolver's born-gated branch
entirely. The module stays a normal toggle under What you track and the
operator-level availability override is unchanged; an account that wants
it off sets an explicit false. Refresh the gate, doctor-report, labs and
biomarkers comments plus the OpenAPI route descriptions accordingly.
This commit is contained in:
Marc-André Bombeck committed 2026-06-17 14:10:46 +02:00
1 parent b5c1d1fc4e
commit bc94a5893f
10 files changed
+37 -72

No files matched your search

+4 -4
View File
@@ -6357,7 +6357,7 @@ paths:
- Illness
summary: Edit an illness episode (v1.18.1)
description: Partial edit; omitted fields are left untouched. A re-parent must point at an owned, live episode (and
never the episode itself). Audits as `illness.episode.update`. Owner-scoped + born-gated.
never the episode itself). Audits as `illness.episode.update`. Owner-scoped + module-gated.
parameters:
- in: path
name: id
@@ -6430,7 +6430,7 @@ paths:
- Illness
summary: Soft-delete an illness episode (v1.18.1)
description: "Stamps `deletedAt` (tombstone). Idempotent — a re-delete is a no-op. Returns the `{ deleted: true }`
envelope (the cross-module DELETE shape). Audits as `illness.episode.delete`. Owner-scoped + born-gated."
envelope (the cross-module DELETE shape). Audits as `illness.episode.delete`. Owner-scoped + module-gated."
parameters:
- in: path
name: id
@@ -6455,7 +6455,7 @@ paths:
summary: Mark an illness episode recovered (v1.18.1)
description: Stamps `resolvedAt` (defaults to 'now' when the body omits it). A CHRONIC_ONGOING episode has no recovery
date and 422s with `errorCode:"illness.episode.chronic-no-resolve"`. Audits as `illness.episode.resolve`.
Owner-scoped + born-gated.
Owner-scoped + module-gated.
parameters:
- in: path
name: id
@@ -6602,7 +6602,7 @@ paths:
nadir, per-vital physiological returns, the headline recovery-gap, and any red flags. The findings derive from
the user's OWN baseline (median ± MAD) over a contamination-guarded window — never a population constant.
`status:\"insufficient\"` carries coverage + a reason. Retrospective ONLY — never a predictor or diagnoser.
Owner-scoped + born-gated."
Owner-scoped + module-gated."
parameters:
- in: path
name: id