{"typed_entities_and_identifiers":[{"name":"Milestone","identifier_status":"source_supported","fields":[{"name":"milestone_id (source values M1, M2)","type":"string","source_units":["S05","S06"]},{"name":"is_billed_milestone","type":"boolean","source_units":["S01"]},{"name":"is_service_milestone","type":"boolean","source_units":["S02"]}],"source_units":["S01","S02","S05","S06"]},{"name":"PurchaseOrder","identifier_status":"proposed_design","fields":[{"name":"purchase_order_present","type":"boolean","source_units":["S01","S02","S06"]}],"source_units":["S01","S02","S06"]},{"name":"MilestoneAcceptance","identifier_status":"proposed_design","fields":[{"name":"accepted_milestone_id","type":"string (reference to Milestone)","source_units":["S01","S05"]},{"name":"signed","type":"boolean","source_units":["S01","S06"]},{"name":"signer_role","type":"enum {named_service_owner, other}","source_units":["S03"]},{"name":"registered_by_accounts_payable","type":"boolean","source_units":["S03"]}],"source_units":["S01","S02","S03","S05","S06"]},{"name":"Role: named service owner / Accounts Payable","identifier_status":"source_supported","fields":[{"name":"may_sign_acceptance","type":"boolean (true only for named service owner)","source_units":["S03"]},{"name":"may_register_acceptance","type":"boolean (true for Accounts Payable)","source_units":["S03"]}],"source_units":["S03"]},{"name":"Dispute","identifier_status":"proposed_design","fields":[{"name":"disputed_milestone_id","type":"string (reference to Milestone)","source_units":["S04","S05"]},{"name":"status","type":"enum {active, resolved}","source_units":["S04","S06"]}],"source_units":["S04","S05","S06"]},{"name":"PaymentClock","identifier_status":"proposed_design","fields":[{"name":"milestone_id","type":"string (reference to Milestone)","source_units":["S04","S05"]},{"name":"state","type":"enum {running, paused}","source_units":["S04"]},{"name":"elapsed_payment_days","type":"integer (payment days; day-counting basis not specified)","source_units":["S04","S06"]},{"name":"payment_due_day_total","type":"integer or null (not specified in sources)","source_units":["S06"]}],"source_units":["S04","S05","S06"]}],"decision_predicates":[{"id":"P1","decision":"payment_eligible","actor":"not specified","scope":"billed milestone","condition":"purchase_order_present AND signed acceptance of the billed milestone present; for services, signed acceptance replaces only goods receipt and does not replace the purchase order","units":"not applicable","comparison":"purchase_order_present == true AND acceptance.signed == true","source_units":["S01","S02"]},{"id":"P2","decision":"payment_eligible","actor":"named service owner (signs); Accounts Payable (may register only)","scope":"milestone acceptance","condition":"acceptance counts as signed only if signed by the named service owner; Accounts Payable signature is not permitted","units":"not applicable","comparison":"acceptance.signer_role == named_service_owner","source_units":["S03"]},{"id":"P3","decision":"payment_eligible","actor":"not specified","scope":"per milestone","condition":"acceptance must be of the same milestone being billed; acceptance of M1 does not accept M2","units":"not applicable","comparison":"acceptance.accepted_milestone_id == billed milestone_id","source_units":["S05"]},{"id":"P4","decision":"clock_restart_from_zero","actor":"not specified","scope":"payment clock of the disputed milestone","condition":"when the dispute resolves, the clock resumes from its prior elapsed value rather than resetting","units":"payment days","comparison":"elapsed_payment_days_after_resume == elapsed_payment_days_before_pause (M2: 7)","source_units":["S04","S06"]},{"id":"P5","decision":"clock_restart_from_zero","actor":"not specified","scope":"payment clock of the disputed milestone only","condition":"a dispute pauses only the disputed milestone's payment clock; a dispute on M2 does not pause M1","units":"not applicable","comparison":"dispute.disputed_milestone_id == clock.milestone_id","source_units":["S04","S05"]},{"id":"P6","decision":"thirty_day_payment_deadline","actor":"not specified","scope":"milestone payment clock","condition":"no payment due-day total is specified, so no deadline threshold can be evaluated","units":"payment days","comparison":"not applicable (threshold not specified)","source_units":["S06"]}],"process_transitions":[{"from_state":"PaymentClock.running","to_state":"PaymentClock.paused","event":"dispute raised on milestone","guard":"dispute.disputed_milestone_id == clock.milestone_id","predicate_ids":["P5"],"source_units":["S04","S05"]},{"from_state":"PaymentClock.paused","to_state":"PaymentClock.running","event":"dispute resolved","guard":"elapsed_payment_days resumes at prior elapsed value; no reset to zero","predicate_ids":["P4"],"source_units":["S04","S06"]},{"from_state":"Acceptance.unsigned","to_state":"Acceptance.signed","event":"acceptance signed","guard":"signer_role == named_service_owner (Accounts Payable may register but not sign)","predicate_ids":["P2"],"source_units":["S03"]},{"from_state":"Acceptance.signed","to_state":"Payment.eligible","event":"payment eligibility evaluated","guard":"purchase_order_present == true AND acceptance is of the billed milestone AND signed by named service owner","predicate_ids":["P1","P2","P3"],"source_units":["S01","S02","S03","S05"]},{"from_state":"Acceptance.signed","to_state":"Payment.not_eligible_awaiting_purchase_order","event":"payment eligibility evaluated","guard":"purchase_order_present == false","predicate_ids":["P1"],"source_units":["S01","S02"]}],"scenario_decisions":[{"decision":"payment_eligible","disposition":"prohibited","predicate_ids":["P1","P2","P3"],"source_units":["S01","S02","S03","S05","S06"],"rationale":"S01 requires both a purchase order and signed acceptance; S02 states signed service acceptance does not replace the purchase order; S06 and the input state M2 has no purchase order. The required prerequisite is unmet, so payment is not eligible under the named rule. Separately, the sources do not state who signed M2's acceptance, so compliance with S03 (named service owner only) is not established; this does not change the outcome. Assumption: 'prohibited' here means payment is not eligible under the stated requirement, not a permanent bar once a purchase order exists."},{"decision":"clock_restart_from_zero","disposition":"prohibited","predicate_ids":["P4","P5"],"source_units":["S04","S05","S06"],"rationale":"S04 states that when a dispute resolves the clock resumes from its prior elapsed value. M2's dispute has resolved and it had accrued 7 payment days (S06), so the clock resumes at 7; restarting from zero would contradict the explicit rule. Only M2's clock is affected (S05)."},{"decision":"thirty_day_payment_deadline","disposition":"not_established","predicate_ids":["P6"],"source_units":["S06"],"rationale":"S06 explicitly states no payment due-day total is specified. No source establishes a 30-day deadline or any other threshold, so it is neither supported nor contradicted. Absence is not treated as a prohibition."}],"unresolved_questions":["Who signed M2's acceptance: was it the named service owner as required by S03, and has Accounts Payable registered it?","What is the payment due-day total (if any) for a milestone payment clock? A 30-day deadline is not specified.","No automatic reminder channel is specified; is any reminder or notification required?","What event starts the payment clock, and are payment days calendar or business days?","Are there prerequisites beyond the purchase order and signed acceptance (e.g., invoice) not covered by the named rules?","Does the dispute resolution outcome affect M2's existing signed acceptance or billed amount?","Will a purchase order for M2 be issued, and does issuing it later affect clock accrual?"]}