feat(family): an idea links to the rule topic holding its norms - set_family_topic, the readouts name the rules, the idea row shows the link (milestone 463 step 1 gap, found in step 7, #4993)
CI & Build / Plugin hooks (push) Successful in 15s
CI & Build / Python lint (push) Successful in 2s
CI & Build / TypeScript typecheck (push) Successful in 1m9s
CI & Build / integration (push) Successful in 1m21s
CI & Build / Python tests (push) Successful in 2m2s
CI & Build / Build & push image (push) Successful in 1m29s
CI & Build / Plugin hooks (push) Successful in 15s
CI & Build / Python lint (push) Successful in 2s
CI & Build / TypeScript typecheck (push) Successful in 1m9s
CI & Build / integration (push) Successful in 1m21s
CI & Build / Python tests (push) Successful in 2m2s
CI & Build / Build & push image (push) Successful in 1m29s
Step 1 added family_ideas.topic_id but nothing could set it, so the note<->topic link the milestone promised existed only as a column. set_family_topic links or unlinks (0) a topic in a rulebook the caller owns, one idea per topic; the version does not move. get_family_idea and get_family_adoption list the topic's rules; list_family_ideas and the Family page name the topic. The model docstrings no longer claim the topic's rules are platform-scoped in retrieval. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -23,8 +23,9 @@ The tables, and the one job each does:
|
||||
- `family_ideas` — a note's family state: candidate, canon or retired, its
|
||||
applicability test, its canon version, its linked rule topic.
|
||||
- `family_idea_platforms` — the platforms an idea is for. The ONLY scope
|
||||
source: a linked topic takes its scope from here rather than carrying its
|
||||
own, so the two can never disagree.
|
||||
source: a linked topic carries no platforms of its own, so the two can
|
||||
never disagree. The scope decides which projects owe the idea an answer;
|
||||
the topic's rules still reach a session by ordinary rule retrieval.
|
||||
- `family_idea_references` — the reference implementations.
|
||||
- `family_adoptions` — one row per (project, idea): the project's answer.
|
||||
- `family_decisions` — the append-only log of every promotion and every
|
||||
@@ -165,8 +166,9 @@ class FamilyIdea(Base, TimestampMixin):
|
||||
comparing the two numbers, never stored as a flag that could go stale.
|
||||
|
||||
`topic_id` is the rule topic holding the idea's binding norms, if it has
|
||||
any (the note↔topic link #3236 asked for). The topic takes its scope from
|
||||
this idea; it never carries platforms of its own.
|
||||
any (the note↔topic link #3236 asked for), set by `set_topic`. The topic
|
||||
never carries platforms of its own; the idea's readouts list its rules,
|
||||
so an assessment judges a project against them.
|
||||
"""
|
||||
|
||||
__tablename__ = "family_ideas"
|
||||
|
||||
Reference in New Issue
Block a user