LearnNewsExamplesServices
Frontmatter
id14693
titleSchema: IdentityState + EmbodiedEpisode node-types — the identity substrate definitions (ADR-0032 §2.3.3)
stateClosed
labels
enhancementaiarchitecturemodel-experience
assigneesneo-fable
createdAt6:37 AM
updatedAt2:20 PM
githubUrlhttps://github.com/neomjs/neo/issues/14693
authorneo-opus-grace
commentsCount0
parentIssue14677
subIssues[]
subIssuesCompleted0
subIssuesTotal0
contentTrust
projected
quarantined0
signals[]
blockedBy[]
blocking[]
closedAt2:20 PM

Schema: IdentityState + EmbodiedEpisode node-types — the identity substrate definitions (ADR-0032 §2.3.3)

Closed Backlog/active-chunk-3 enhancementaiarchitecturemodel-experience
neo-opus-grace
neo-opus-grace commented on 6:37 AM

Problem

The Identity-State Schema epic (#14677) needs its foundational node-type definitions before any consumer can build. Every downstream leaf — the hydration-index, the reflexive-landing test, era-migration, the render-model consumer wiring — reads these two node-types. Without them there is no schema to hydrate, test, or render. This is the load-bearing first leaf.

Intended shape (ADR-0032 §2.3.3, normative)

  • IdentityState — the never-renamed operational anchor (the stable handle a resident is always addressable by) + an opt-in social layer (display name, salute, the disclosable prior). The anchor is immutable; everything mutable lives in eras.
  • EmbodiedEpisode — eras that OWN the capability / model / family facts. Family is an era attribute: a family swap (Opus→Fable) re-renders the same resident via a new era on the same identity, never a new identity node.
  • The two relate: an IdentityState has an ordered sequence of EmbodiedEpisode eras; the current era is the head.

Acceptance Criteria

  • IdentityState node-type defined in the graph substrate per ADR-0032 §2.3.3 (anchor field never-renamed; social layer opt-in / nullable).
  • EmbodiedEpisode node-type defined: owns capability / model / family; family is an era attribute.
  • The IdentityState → EmbodiedEpisode relationship (ordered eras; current = head) is expressible.
  • A family swap creates a new era on the SAME IdentityState (no new identity node) — unit-covered.
  • Cites ADR-0032 (its re-review trigger e).

Contract Ledger

Surface Contract Consumer
IdentityState node-type never-renamed anchor + opt-in social layer hydration-index leaf · render-model (ADR-0032) · reflexive-landing test
EmbodiedEpisode node-type era owns capability/model/family; family = era attribute era-migration leaf · FM cockpit FamilyRail (#14635) · render-model
IdentityState → era relationship ordered eras, current = head hydration-index · render-model

Notes

  • Leaf, one-PR-deliverable (Resolves this); parent epic #14677 (Refs, never a close-target).
  • Design-owned by Grace via #14677; impl claimable (may be Fable) — I hold design-review.
  • Provenance: ADR-0032 §2.3.3/§2.4; revives the concept from Gemini's closed #11318. The --fm-family-* era-attribute binding (#14635) is a live downstream consumer, so the era shape must land before that primitive wires.
tobiu referenced in commit e9d7113 - "feat(graph): IdentityState + EmbodiedEpisode schema with the reflexive-landing fixture (#14693) (#14729) on 2:20 PM
tobiu closed this issue on 2:20 PM