Library / First Principles Framework (FPF) - Core Conceptual Specification
Jump to passage
In this reading

Link to current text

Published source confirmed at last check

Source changed 2026-10-03 11:52:20 UTC · snapshot created 2026-10-03 11:53:41 UTC · last check 2026-10-03 12:50:07 UTC

G.10:4.2.1 - Portfolio roster (normative; pack-governed; governing-definition delegating)

PortfolioRosterId identifies the selector‑facing pack roster token. The corresponding PortfolioRoster@Context is one citation-and-binding roster record inside the shipped publication form, not a publication face kind, publication form kind, interop publication form kind, or carrier kind: it MUST NOT redefine selection / selected-set semantics (governed by G.5) or parity semantics (governed by G.9). Mode‑specific definition pins (QD/OEE/interop) are introduced only via G.10:Ext.* blocks.

PortfolioRoster@Context :=
⟨
  PortfolioRosterId,
  PackId(UTS),
  CG-FrameContext,
  entityOfConcern,

  // Selector operation and default-resolution support
  portfolioMode?,
  dominanceRegime?,
  ε?,

  // Published selector outcome and set-result declaration (metadata fields, not local semantics)
  selectorOutcomeKind?,
  setResultFamily?,
  handoffKind?,
  subjectKind?,
  sourceSetFamily?,
  derivedViewKind?,
  sourceSetComposition?,
  basePaletteRef?,
  lensId?,
  shortlistId?,
  promotionPolicyRef?,
  retentionIntent?,

  // Selector-facing roster + provenance hooks (ids only)
  MethodFamilyRowRefs := MethodFamilyRowRef[]?,
  GeneratorFamilyRowRefs := GeneratorFamilyRowRef[]?,
  ParityReportId?,
  SCRId[]?, DRRId[]?,

  // Pin reuse: prefer referencing the enclosing pack’s AuditPins bundle
  AuditPins?,
  Notes?
⟩

The roster cites exact G.5 MethodFamilyRowRef = <MethodFamilyId, rowEdition> and GeneratorFamilyRowRef = <GeneratorFamilyId, rowEdition> values. A lineage id alone cannot replay the selected membership or grouping basis; each row ref resolves its immutable source edition. Shipping these references neither admits the members nor creates their grouping. Preserve the row’s G.5 local or public registry-identity contract. A visible project-local row is not automatically a public registry entry; intentional public registration adds S1/S1′ naming and UTS duties. G.10’s independently applicable pack-shipping requirements and E.24.PUB availability conditions still apply.

Presence rule: PortfolioRosterId MAY be omitted only when the shipped pack is inputs‑only (e.g., shipping CHR/CAL/evidence without any selector‑consumable selected-set/shortlist output).

The selectorOutcomeKind, setResultFamily, handoffKind, sourceSetFamily, sourceSetComposition, derivedViewKind, basePaletteRef, lensId, and shortlistId fields in this roster are payload metadata fields or refs inside the shipped publication form. They do not define publication face kinds, publication form kinds, interop publication form kinds, or carrier kinds, and they do not let G.10 re-govern G.5, C.18, C.19, or G.2 semantics.

Interpretation constraints (normative by delegation). Any universal invariants governing (i) CN/CG spec-ref governing-definition assignment, (ii) crossing visibility and penalty routing, (iii) tri‑state guards, (iv) set‑return semantics, (v) P2W split, (vi) defaults, and (vii) RSCR trigger typing are not restated here and are enforced via G.Core conformance (see CC‑G10‑CoreRef).