docs(6205): inception and family comments drop record, milestone and date citations
inception states the legacy stamp and the retired rulebook keys as facts about stored records; family keeps the repeat-trigger calibration numbers without the date and record they were measured on, and drops the instance that taught the per-kind comparison. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
"""Project inception — what a project was decided to inherit (milestone 297).
|
||||
"""Project inception — what a project was decided to inherit.
|
||||
|
||||
A project's inheritance is a decision, not a default. The record lives on
|
||||
``projects.inception``::
|
||||
@@ -14,14 +14,13 @@ A project's inheritance is a decision, not a default. The record lives on
|
||||
}
|
||||
|
||||
NULL = undecided → enter_project asks. ``legacy`` is the migration's stamp on
|
||||
projects that existed before the step did (inherit-all / no design system /
|
||||
no seed), so the ask fires only for projects created after this shipped.
|
||||
projects that predate inception records (inherit-all / no design system /
|
||||
no seed), so the ask fires only for projects created since.
|
||||
|
||||
Rules are not a choice any more. ``exclude_always_on_rulebooks`` went with the
|
||||
always-on tier (milestone 394), and ``subscribe_rulebooks`` went with
|
||||
subscriptions (milestone 414): a rule in a rulebook is global and applies to
|
||||
every project, and a project's own rules are written on it directly. Migration
|
||||
0101 strips both keys from stored records.
|
||||
Rules are not a choice: a rule in a rulebook is global and applies to every
|
||||
project, and a project's own rules are written on it directly. Migration 0101
|
||||
strips the retired ``exclude_always_on_rulebooks`` and ``subscribe_rulebooks``
|
||||
keys from stored records.
|
||||
|
||||
The shape and its validator are pure; ``decide`` composes the existing
|
||||
services — set_project_design_system and the standard Systems seed — checks
|
||||
@@ -31,7 +30,7 @@ half-applied decision is re-runnable rather than recorded as done.
|
||||
``current_defaults`` is what the enter_project ask shows: what binds today
|
||||
if nobody decides.
|
||||
|
||||
``platforms`` (milestone 463) is which platforms the project IS — the answer
|
||||
``platforms`` is which platforms the project IS — the answer
|
||||
that decides which family ideas reach it. A list of catalog SLUGS, not ids:
|
||||
the record is JSON, and a slug survives a backup restore onto an install whose
|
||||
ids differ, where an id inside JSON would come back naming another platform.
|
||||
@@ -54,7 +53,7 @@ CHOICE_KEYS = ("design_system_id", "seed_systems", "platforms")
|
||||
def validate_inception(choices) -> str | None:
|
||||
"""The structural error an inception ``choices`` object would earn, or
|
||||
None. Pure and checked BEFORE any effect is applied: a decision either
|
||||
applies whole or errors whole (the StrictArgs lesson, #2709).
|
||||
applies whole or errors whole.
|
||||
|
||||
Accepts three keys, each optional: ``design_system_id`` an int or None,
|
||||
``seed_systems`` a bool, ``platforms`` a list of slugs or None. Unknown
|
||||
@@ -152,7 +151,7 @@ async def decide(
|
||||
choices: dict | None,
|
||||
via: str,
|
||||
) -> dict:
|
||||
"""Record a project's inception decision and apply it (milestone 297).
|
||||
"""Record a project's inception decision and apply it.
|
||||
|
||||
Owner-only. Validates the choices (pure) and every target (readable)
|
||||
first; then, each idempotent: point the project at the design system
|
||||
@@ -243,8 +242,8 @@ def _platform_line(defaults: dict) -> str:
|
||||
|
||||
|
||||
async def inception_ask(user_id: int, project_id: int) -> dict:
|
||||
"""The enter_project ask for an undecided project (milestone 297) — the
|
||||
sibling of the systems-bootstrap ask (#2683): the project's OWN current
|
||||
"""The enter_project ask for an undecided project — the sibling of the
|
||||
systems-bootstrap ask: the project's OWN current
|
||||
defaults, what to ask the operator, and the exact call that answers it.
|
||||
Fail-open: a hint must never break the call it rides on."""
|
||||
try:
|
||||
|
||||
Reference in New Issue
Block a user