A.2.9:5.2 — Show #1 (system archetype: change-control approval gates a deployment)

Preface node heading:a-2-9-5-2-show-1-system-archetype-change-control-approval-gates-a-deployment:6926

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

Situation (messy prose): “Change is approved, so the pipeline may deploy.”

Conformant modeling sketch. The first line names the actual communicative Work. The record then states claims about that occurrence; the assignment, Method, recognition classification, policy and grant must each obtain independently.

  • Actual occurrence: SA-Approve-4711 : U.SpeechAct.
  • Exact performer and assignment: admitted system CAB_Chair_A performs SA-Approve-4711 under obtaining CAB_Chair_A_ApproverAssignment_2026 : U.RoleAssignment. That assignment independently exposes role value ApproverRole, role-taxonomy episteme ChangeControlRoles_v3, effective scheme ChangeControlReferenceScheme_2026, and an extent covering the act. The assignment grounds attribution; it does not act.
  • Actual method relation: enactsMethod(SA-Approve-4711, ChangeApprovalMethod_v3) independently obtains, with ChangeApprovalMethod_v3 : U.Method.
  • SA-Approve-4711-Record : SpeechActRecord states:
    • speechActOccurrenceRef = SpeechActRef(SA-Approve-4711);
    • performedBy = U.EntityRef(CAB_Chair_A);
    • performedUnderAssignment = RoleAssignmentRef(CAB_Chair_A_ApproverAssignment_2026);
    • enactsMethodRef = U.EntityRef(ChangeApprovalMethod_v3);
    • methodDescriptionRef = EpistemeRef(ChangeApprovalProcedure_v3), a separate C.2.1 episteme used here to identify and constrain the Method;
    • recognitionTaxonomyRef = EpistemeRef(ChangeControlSpeechActTaxonomy_v3);
    • effectiveReferenceScheme = ChangeControlReferenceScheme_2026;
    • policyOrProcedureRef = EpistemeRef(ChangeControlApprovalPolicy_v3), current for this approval and grant use;
    • channelRef = U.EntityRef(CAB_TicketChannel);
    • actTypes = {SpeechActTypeRef(Approval)} under that taxonomy and scheme;
    • reliancePosture = relianceReady, executedWithin = ChangeControlBoardSystem, and window = [2026-06-12T10:03Z, 2026-06-12T10:04Z];
    • utteranceSubjectRefs = {ChangeRequestId(4711)};
    • institutionalTargetRefs = {GrantedPermissionRelationRef@Context(PER-Deploy-4711)};
    • utteranceRefs = {EpistemeRef(ChangeTicket#4711)} and carrierRefs = {CarrierRef(TicketSystemRecord#4711)};
    • institutes.permissions = {GrantedPermissionRelationRef@Context(PER-Deploy-4711)}.

PER-Deploy-4711 : GrantedPermissionRelation@Context obtains separately under A.2.8.PER:

  • beneficiaryRef = RoleAssignmentRef(OpsBot#DeployerRole:CD_Pipeline_v7);
  • permittedActionSpecificationRef = EpistemeRef(DeployChange4711WorkSpecification);
  • institutingSpeechActRef = SA-Approve-4711;
  • grantorAssignmentRef = RoleAssignmentRef(CAB_Chair_A_ApproverAssignment_2026);
  • grantValidityPolicyRef = EpistemeRef(ChangeControlGrantPolicy_v3) under ChangeControlReferenceScheme_2026; the separately cited ChangeControlApprovalPolicy_v3 supplies the act-to-grant instituting rule;
  • scope, revocation stance, and validity interval [2026-06-12T10:04Z, 2026-06-19T10:04Z] are explicit.

The one-minute speech-act interval and seven-day grant interval are different facts even though the latter begins when the former ends.

The utterance is about ChangeRequestId(4711); its policy-selected target and demonstrated effect are the separately obtaining grant. Nothing here claims that the change-request entity itself changed. Gate predicate A-Gate-Deploy-4711 may check exists SpeechAct(type=Approval, utteranceSubjectRefs includes ChangeRequestId(4711), performedBy=CAB_Chair_A, performedUnderAssignment role=ApproverRole, within 90d), consume the current grant, and apply other prerequisites; passing the gate neither institutes nor equals the grant. No F.9 Bridge is needed merely because a pipeline consumes the result: this case uses one exact taxonomy, scheme and policy. A Bridge becomes current only if another receiving use actually translates or compares a different local meaning.

Near misses. A ticket row alone is a carrier-backed claim, not the act. ChangeApprovalProcedure_v3 is a MethodDescription, not what the act enacts. A current approver assignment does not prove that approval Work occurred. Without the exact current policies, the occurrence remains communicative Work but establishes no grant.

This case retains kind versus occurrence versus record, utterance versus carrier, explicit performer and grant beneficiary, exact act and grant intervals, current policy bases, provenance from grant to instituting act, and strong permission versus admissibility gate as independently judgeable distinctions.


Last Updated: 2026-08-01 — upstream FPF commit 9a9a42e4 (github.com/ailev/FPF)