Skip to content

fix(phase20): fail-closed onboarding governance (W1) - #57

Merged
munisp merged 1 commit into
mainfrom
phase20-w1-onboarding-governance
Sep 19, 2026
Merged

munisp merged 1 commit into
mainfrom
phase20-w1-onboarding-governance

Conversation

@munisp

@munisp munisp commented Sep 19, 2026

Copy link
Copy Markdown
Owner

Phase 20 W1 — stakeholder-onboarding audit gaps 1,4,5,6(partial),9 for singlewindow. See commit message; tests 20/20 + tsc clean.

…er-checker, claim-map allowlist, user suspension, dev-flag gates

- GAP 1: onboarding.selectRole restricted to trader-level 'user'; privileged roles require role_requests maker-checker (reviewRoleRequest, maker!=checker, audited)
- GAP 4: admin:all removed from API-key self-issuance; elevated scopes via api_scope_requests maker-checker
- GAP 5: bare Keycloak claims no longer auto-map; ADMIN_ROLE_CLAIM_MAP allowlist; audited auto-provision; unknown privileged claims -> lowest privilege + pending role request
- GAP 9: users.status (active/suspended/offboarded) + admin suspend/reactivate/offboard + auth enforcement
- GAP 6: NIGERIA_ID_ALLOW_UNSIGNED_DEV_TOKENS gate, production boot refusal; kyc mock fallback confirmed removed
- migration 0073 + journal; 20 new tests; tsc clean
@munisp
munisp merged commit 52b5be6 into main Sep 19, 2026
1 check failed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant