Skip to content

feat: system user relations and policy-managed application access - #4

Merged
Yniphe merged 2 commits into
mainfrom
feat/system-user-relations-app-permissions
Oct 7, 2026
Merged

Yniphe merged 2 commits into
mainfrom
feat/system-user-relations-app-permissions

Conversation

@Yniphe

@Yniphe Yniphe commented Oct 7, 2026 •

Copy link
Copy Markdown
Contributor

Ordinary collections can now reference a system user, for example a department's manager, using an M2O field with the @users target. The picker, saved values, table labels and filters use a bounded user directory. Native UUID foreign keys support RESTRICT or SET NULL; directory access and new assignments require permission to read users. Existing references remain editable when their user is disabled, without granting access to system tables.

OAuth applications can opt into policy-managed access. Policies grant application login and service permissions; tokens contain only currently effective permissions approved by the user. Permission changes require fresh consent, and permissions added after approval cannot broaden a pending authorization. Existing applications retain their current access behavior until the mode is enabled.

The change includes guarded migrations, API documentation, Russian/English UI copy and integration tests for authorization, FK behavior, filters, token claims, consent and revocation. User-defined fields are not created automatically.

Validation: pnpm check, pnpm build and pnpm packages:check passed locally and in CI. The full Core suite passed 492 tests and UI passed 143; the opt-in live LavinMQ, performance and disposable visual suites were skipped. The focused OAuth suite passed again after migration rollback hardening. Visual browser verification was not completed. CI passed the split Core/UI startup, authenticated API, credential isolation, restart and graceful stop checks, plus Helm lint and routing validation.

@Yniphe
Yniphe marked this pull request as ready for review October 7, 2026 13:32
@Yniphe
Yniphe merged commit 1474b3f into main Oct 7, 2026
2 checks passed
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