Skip to content

Character Lifecycle: Generational patronDeityCode inheritance #716

Description

@DonLoquacious

Character Lifecycle: Generational patronDeityCode inheritance

Source: docs/planning/DIVINITY-GENERATION-ARCHITECTURE.md § Patron Deity Field: Two-Level Design
Prerequisite for: Divine generational patron deity continuity
Depends on: Character patronDeityCode field (sibling issue)

Summary

Add patronDeityCode to Character Lifecycle's generational data with parental inheritance. When a child is born, Character Lifecycle reads the parents' patronDeityCode and sets the newborn's Character-level patronDeityCode field as an inheritable default. This creates generational divine continuity — a bloodline's patron deity passes to children naturally.

Design (Resolved)

Per DIVINITY-GENERATION-ARCHITECTURE.md:

Birth flow:

Character Lifecycle reads parents' patronDeityCode
  → If present: sets newborn's Character.patronDeityCode (inheritable default)
  → If absent: leaves null (no divine patron by birth)

Override flow (later in life):

Coming of Age / Ceremony / Conversion / God-actor initiative:
  Any authorized caller sets Character.patronDeityCode
  → Divine receives character.updated event
  → Auto-bond logic triggers (dissolve old bonds, create new bonds)

Key properties:

  • Nullable — the lifecycle doesn't guarantee a patron
  • The generational default can be overridden at any time
  • "My family worships the war god, but the wisdom god chose me" is a valid narrative
  • Standard inheritance logic — same pattern as species, realm, etc.

Schema Changes

Add patronDeityCode (string, nullable) to Character Lifecycle's generational data model in character-lifecycle-api.yaml. This follows the same inheritance pattern as other generational fields.

References

  • docs/planning/DIVINITY-GENERATION-ARCHITECTURE.md § Patron Deity Field: Two-Level Design
  • docs/plugins/DIVINE.md § Composability & Architecture (patron deity and auto-bonding)
  • docs/plugins/CHARACTER-LIFECYCLE.md — Generational inheritance patterns

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions