KB-46BC
01 — Current APR-0415 Approval State (read-only)
3 min read Revision 1
01 — Current APR-0415 approval state (read-only)
All values fetched this turn via governed read-only query_pg (db=directus).
APR-0415 row (approval_requests id=415)
id 415
code APR-0415
status pending
proposed_action_code patch_ops_code
target_collection dot_tools
target_entity_code DOT-310
source dot-c1-w7-authorize-build-step-handler-proposal
priority high
reviewed_by NULL
reviewed_at NULL
applied_at NULL
date_created 2026-06-23 04:51:54.893
date_updated NULL
proposed_action md5 43c314bbdecc603acd924096421d0e48 (len 47232) [payload intact, unchanged]
source_context.proposer NULL
source_context.created_by NULL
Votes on APR-0415 (apr_approvals WHERE apr_id=415)
0 rows.
Quorum functions (live)
quorum_passed('APR-0415') = false
fn_pa_president_vote_present('APR-0415') = false
Required quorum (risk=high, from apr_action_types + fn_apr_quorum_check)
patch_ops_code→risk_level = high,handler_ref = dot-apr-execute:patch_ops(implemented).- High-risk rule: ≥1 human president (
approver_type='human'ANDapprover ILIKE '%president%') + ≥2 ai_council (approver_type='ai_council'), 0 rejects, proposer excluded. - Current: president=0 (need 1), council=0 (need 2), total=0, rejects=0.
Notable governance nuance (for the fix design, file 05)
fn_apr_quorum_check / quorum_passed derive the proposer from
source_context->>'proposer' / ->>'created_by' — both NULL for APR-0415. The de-facto
proposer is recorded only in the source text field (dot-c1-w7-authorize-build-step-handler-proposal),
which the self-approve guard does not read. ⇒ the self-approve guard is effectively toothless
for this APR. Any future dot-apr-approve MUST enforce proposer-exclusion robustly (see file 05).
Conclusion: APR-0415 is pending with a real, intact payload and a known, live quorum rule,
but 0 legitimate votes and quorum_passed=false.