Pulled from Notion project docs: overview, architecture, data model, event system, line logic, and implementation notes for the family-tree generator + TTS narrator. Co-Authored-By: Claude <noreply@anthropic.com>
19 lines
819 B
Markdown
19 lines
819 B
Markdown
# Line Logic
|
|
|
|
- A **family line** is a branch: one person and all of their descendants.
|
|
- All descendants count — legitimate, illegitimate, children from multiple
|
|
partnerships.
|
|
- The active line stays on the current branch until it dies out.
|
|
- "Dies out" means nobody in that branch has living descendants (checked up
|
|
to `current_generation - 1`).
|
|
- When a branch dies out → a random pick among the other existing lines.
|
|
- Background persons (not currently narrated) are still simulated — events,
|
|
death, partnerships, children — just not narrated.
|
|
|
|
## Edge Cases
|
|
|
|
- At least one line must always remain.
|
|
- If the last line dies out prematurely → search earlier generations for
|
|
branches that haven't been narrated yet.
|
|
- From generation 6 onwards, no new generations are simulated in the
|
|
background.
|