fix: patch OIDC consent flow regression and add CI build step
The OIDC app 1.16.2 broke the consent flow by only falling back to session params when client_id is missing. After consent, the redirect includes client_id and scope but loses state, response_type, and redirect_uri — causing a 500. The submodule fix restores per-param session fallback when ANY critical param is missing. Also adds a CI build step for the OIDC app (composer + npm) so the JS assets (oidc-consent.js, oidc-redirect.js) are available in OAuth test profiles. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.6
parent
69b84102b1
commit
7a2280a981
@@ -122,6 +122,14 @@ jobs:
|
|||||||
npm ci
|
npm ci
|
||||||
npm run build
|
npm run build
|
||||||
|
|
||||||
|
- name: Build OIDC app
|
||||||
|
if: matrix.mode != 'single-user'
|
||||||
|
run: |
|
||||||
|
cd third_party/oidc
|
||||||
|
composer install --no-dev --optimize-autoloader
|
||||||
|
npm ci
|
||||||
|
npm run build
|
||||||
|
|
||||||
# Start services with the appropriate profile
|
# Start services with the appropriate profile
|
||||||
- name: Run docker compose
|
- name: Run docker compose
|
||||||
uses: hoverkraft-tech/compose-action@4894d2492015c1774ee5a13a95b1072093087ec3 # v2.5.0
|
uses: hoverkraft-tech/compose-action@4894d2492015c1774ee5a13a95b1072093087ec3 # v2.5.0
|
||||||
|
|||||||
+18
-18
@@ -37,7 +37,7 @@ services:
|
|||||||
# The post-installation hook will register /opt/apps as an additional app directory
|
# The post-installation hook will register /opt/apps as an additional app directory
|
||||||
#- ./third_party:/opt/apps:ro
|
#- ./third_party:/opt/apps:ro
|
||||||
- ./third_party/astrolabe:/opt/apps/astrolabe:ro
|
- ./third_party/astrolabe:/opt/apps/astrolabe:ro
|
||||||
#- ./third_party/oidc:/opt/apps/oidc:ro # Use app store version; dev mount lacks vendor/
|
- ./third_party/oidc:/opt/apps/oidc:ro
|
||||||
environment:
|
environment:
|
||||||
- NEXTCLOUD_TRUSTED_DOMAINS=app
|
- NEXTCLOUD_TRUSTED_DOMAINS=app
|
||||||
- NEXTCLOUD_ADMIN_USER=admin
|
- NEXTCLOUD_ADMIN_USER=admin
|
||||||
@@ -65,7 +65,7 @@ services:
|
|||||||
image: downloads.unstructured.io/unstructured-io/unstructured-api:latest@sha256:ba6cb073af079c498e9466a5a9152ba4b6c9cad12efeeaf053ba383023d5db08
|
image: downloads.unstructured.io/unstructured-io/unstructured-api:latest@sha256:ba6cb073af079c498e9466a5a9152ba4b6c9cad12efeeaf053ba383023d5db08
|
||||||
restart: always
|
restart: always
|
||||||
ports:
|
ports:
|
||||||
- 127.0.0.1:8002:8000
|
- 127.0.0.1:8005:8000
|
||||||
# Unstructured API runs on port 8000 internally
|
# Unstructured API runs on port 8000 internally
|
||||||
# We expose it on 8002 externally to avoid conflict
|
# We expose it on 8002 externally to avoid conflict
|
||||||
profiles:
|
profiles:
|
||||||
@@ -327,22 +327,22 @@ services:
|
|||||||
# Smithery stateless deployment mode (ADR-016)
|
# Smithery stateless deployment mode (ADR-016)
|
||||||
# Test with: docker compose --profile smithery up smithery
|
# Test with: docker compose --profile smithery up smithery
|
||||||
# Then: curl http://localhost:8081/.well-known/mcp-config
|
# Then: curl http://localhost:8081/.well-known/mcp-config
|
||||||
smithery:
|
#smithery:
|
||||||
build:
|
#build:
|
||||||
context: .
|
#context: .
|
||||||
dockerfile: Dockerfile.smithery
|
#dockerfile: Dockerfile.smithery
|
||||||
restart: always
|
#restart: always
|
||||||
depends_on:
|
#depends_on:
|
||||||
app:
|
#app:
|
||||||
condition: service_healthy
|
#condition: service_healthy
|
||||||
ports:
|
#ports:
|
||||||
- 127.0.0.1:8081:8081
|
#- 127.0.0.1:8081:8081
|
||||||
environment:
|
#environment:
|
||||||
- SMITHERY_DEPLOYMENT=true
|
#- SMITHERY_DEPLOYMENT=true
|
||||||
- ENABLE_SEMANTIC_SEARCH=false
|
#- ENABLE_SEMANTIC_SEARCH=false
|
||||||
- PORT=8081
|
#- PORT=8081
|
||||||
profiles:
|
#profiles:
|
||||||
- smithery
|
#- smithery
|
||||||
|
|
||||||
qdrant:
|
qdrant:
|
||||||
image: docker.io/qdrant/qdrant:v1.17.0@sha256:f1c7272cdac52b38c1a0e89313922d940ba50afd90d593a1605dbbc214e66ffb
|
image: docker.io/qdrant/qdrant:v1.17.0@sha256:f1c7272cdac52b38c1a0e89313922d940ba50afd90d593a1605dbbc214e66ffb
|
||||||
|
|||||||
Vendored
+1
-1
Submodule third_party/oidc updated: 1f5d9ffe9f...d371a4a797
Reference in New Issue
Block a user