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 14:36:52 UTC · snapshot created 2026-10-03 14:38:14 UTC · last check 2026-10-03 15:25:20 UTC

A.19.SelectorMechanism:8 - Common Anti-Patterns and How to Avoid Them — informative

Anti-patternWhat it looks likeRemedy
GateDecision leakageSelect emits GateDecision or writes a decision logKeep gate decisions in their governing patterns. SelectEligibility remains the mechanism predicate; dated selection work records the realized eligibility value and direct replay basis.
Forced single winnerSelect always returns exactly one candidate even under incomparabilityReturn a declared selected set by default; if single winner is required, make it explicit in CriteriaSlot and ensure the induced order is admissible and declared
Hidden tie-breakers“If incomparable, pick lower cost” without declaring that as policyMove tie-breakers into explicit criteria or into declared comparator policies; never embed inside the kernel
Scalarization by convenienceReplace set-valued comparison with a scalar “summary score” treated as decisiveKeep summaries report-only unless explicitly declared as admissible comparator outputs
Unknown coerced to passMissing evidence treated as acceptableUse tri-state SelectEligibility; unknown maps to degrade or abstain
Selection does comparisonSelection stage recomputes scoring or comparison internallyKeep comparisons upstream; SelectorMechanism binds exact CPM applications and consumes only their justified-token union in ComparisonResultSlot
One binary comparison treated as a batchOne Compare(left,right) application is said to cover three or more candidates, or a token union loses its producing applicationsBind a finite basis of exact binary CPM applications, derive required pair coverage from the selection conditions, and trace every consumed token to a member output
Selected set as replay recordCandidate universe, comparison ref, criteria, scope, evidence, or currentness are placed inside SelectionSlotKeep SelectionSlot to selected candidates; bind use arguments on the actual application and use direct evidence, provenance, and currentness relations
Boundary driftSelection reuses a token union after comparison-basis membership, coverage, member pair or eligibility, predicate, scope, selected slices, plane, or window changedTreat it as another selection application and perform the required binary comparisons again when their governed basis changed
Publish inside selectionSelection emits a publication or telemetry relation as part of mechanism semanticsKeep publication and telemetry under their governing patterns; dated work and direct relations retain replay