A.6.C:8 — Common Anti-Patterns and How to Avoid Them

Preface node heading:a-6-c-8-common-anti-patterns-and-how-to-avoid-them:8785

What this page is

This is generated FPF reference text from the specification preface or supporting sections. It helps interpret FPF; it is not FPF Reference product documentation.

Methodology

Use it to understand how the specification wants to be read, then return to a route, pattern, or work packet for active work. Cite generated IDs only when the wording changes the task decision.

Content

Anti-patternWhy it failsRepair
Interface-as-promiser (“the API promises…”)Epistemes are descriptions; they do not commitName the committing U.Role or U.Agent; route as D claim; keep the signature as utterance substrate
Guarantee-without-substrate“Guarantee” is empty unless it is L, D, or EDecide: semantic law (L), deontic commitment (D), or evidenced property (E)
SLA smuggled into lawsMixes governance with semantics; breaks substitution reasoningPut SLA targets as D claims referencing L-defined metrics and E evidence
Gate written as obligationConfuses admissibility predicates with dutiesWrite predicate as A; write duty-to-gate as D→A reference
Evidence as prose property (“document proves…”)Violates EntityOfConcern / Description episteme / carrierState evidence as E claims about carriers produced/observed in work
Face-level paraphrase driftCreates multiple incompatible contractsFaces should reference canonical claims; keep commitments centralized
Cross‑scale contract collapseDifferent agents claim incompatible “contracts” at different scales or contextsRepresent each as separate, scoped D-* claims (with accountable roles + Context); apply conflict or mediation patterns rather than collapsing them into one “contract”.

Last Updated: 2026-06-08 — upstream FPF commit 093d30e8 (github.com/ailev/FPF)