stack/apps/backend/src/lib
Zai Shi 2b5eebcd22
Config override CRUD (#803)
<!--

Make sure you've read the CONTRIBUTING.md guidelines:
https://github.com/stack-auth/stack-auth/blob/dev/CONTRIBUTING.md

-->

<!-- ELLIPSIS_HIDDEN -->


----

> [!IMPORTANT]
> Add admin-only API endpoints and UI support for project configuration
overrides, with comprehensive tests and documentation updates.
> 
>   - **New Features**:
> - Added admin-only API endpoints for reading and updating project
configuration overrides in `config/crud.tsx` and
`config/override/crud.tsx`.
> - Admin app supports fetching, caching, and updating configuration
overrides with new React hooks in `admin-app-impl.ts`.
>   - **Bug Fixes**:
> - Validation and error handling for OAuth providers, duplicate IDs,
and invalid config fields in `oauth-providers/crud.tsx`.
>   - **Tests**:
> - Added end-to-end tests for configuration management and validation
errors in `config.test.ts` and `js/config.test.ts`.
>   - **Documentation**:
> - Updated API documentation for new config override endpoints in
`config.ts`.
> 
> <sup>This description was created by </sup>[<img alt="Ellipsis"
src="https://img.shields.io/badge/Ellipsis-blue?color=175173">](https://www.ellipsis.dev?ref=stack-auth%2Fstack-auth&utm_source=github&utm_medium=referral)<sup>
for 3d20abc092. You can
[customize](https://app.ellipsis.dev/stack-auth/settings/summaries) this
summary. It will automatically update as commits are pushed.</sup>

----


<!-- ELLIPSIS_HIDDEN -->

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **New Features**
* Added the ability for admins to view and update project configuration
overrides through new internal API endpoints.
* Extended the admin app to support fetching, updating, and caching
configuration overrides, including React hook support for real-time
config usage.
* Introduced new admin interface methods for retrieving and updating
configuration.

* **Bug Fixes**
* Improved validation and error handling for configuration updates,
including checks for duplicate or invalid OAuth provider entries and
non-existent configuration fields.

* **Tests**
* Added comprehensive end-to-end tests covering configuration retrieval,
updates, access control, OAuth provider management, and domain
management.

* **Documentation**
* Enhanced API documentation for configuration management endpoints and
operations.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
Co-authored-by: Konsti Wohlwend <n2d4xc@gmail.com>
2025-08-01 18:28:27 +02:00
..
ai-chat Remove legacy tenancy config (#802) 2025-07-31 20:06:33 +02:00
config.tsx Update Featurebase redirect 2025-07-30 12:00:09 -07:00
contact-channel.tsx Tenancies (#418) 2025-02-07 22:54:04 -08:00
email-rendering.tsx Add tracing to ESBuild 2025-07-31 16:22:55 -07:00
emails.tsx Add tracing to ESBuild 2025-07-31 16:22:55 -07:00
end-users.tsx Upgrade backend to Next.js 15 (#360) 2024-12-10 00:11:13 -08:00
events.tsx Source of Truth (#660) 2025-07-11 17:59:03 -07:00
freestyle.tsx Add tracing to ESBuild 2025-07-31 16:22:55 -07:00
internal-api-keys.tsx Source of Truth (#660) 2025-07-11 17:59:03 -07:00
notification-categories.ts Auto migration (#526) 2025-07-24 02:38:37 +02:00
openapi.tsx Update OpenAPI schema generator to support multiple status codes (#527) 2025-03-10 14:50:11 -07:00
permissions.tsx Remove legacy tenancy config (#802) 2025-07-31 20:06:33 +02:00
projects.tsx Config override CRUD (#803) 2025-08-01 18:28:27 +02:00
redirect-urls.tsx Remove legacy tenancy config (#802) 2025-07-31 20:06:33 +02:00
request-checks.tsx Source of Truth (#660) 2025-07-11 17:59:03 -07:00
tenancies.tsx Remove legacy tenancy config (#802) 2025-07-31 20:06:33 +02:00
tokens.tsx Add tracing to ESBuild 2025-07-31 16:22:55 -07:00
types.tsx Added custom SMTP email server testing on the dashboard (#376) 2024-12-20 19:04:05 +01:00
webhooks.tsx Rename USER to PROJECT in permissions (#576) 2025-03-27 09:39:48 -07:00