From be2066b86f6130856346fbcdb716d04847c0825a Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Sat, 22 Aug 2026 22:50:33 +0900 Subject: [PATCH 1/5] docs: mark the gap-baseline LLM-orchestration entry resolved (LineageWeave side) Every one of main.py's 13 LLM client factories routes through settings.orchestrator_base_url/orchestrator_api_key with no hardcoded provider SDK/key anywhere in the repo, and every request sends mode=auto plus a reasoning_effort value, delegating model selection and reasoning depth to contextual-orchestrator per call. Scoped what LineageWeave cannot itself verify: whether contextual-orchestrator's own internal model discovery/allocation is correct is that repository's responsibility, not this one's. --- docs/product-technical-gap-baseline.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/product-technical-gap-baseline.md b/docs/product-technical-gap-baseline.md index e65883463..db279255f 100644 --- a/docs/product-technical-gap-baseline.md +++ b/docs/product-technical-gap-baseline.md @@ -21,6 +21,6 @@ - **Zotero Integration**: Papers and standards referenced by TEPP must be synced via Local Zotero API (http://localhost:23119/api/) and cited using APA 7th edition in docstrings. - **Testing**: We need actual testing of Psychometrics (Fast-MLSIRM parameter calibration, RMSE of estimates, Fixed-Item Parameter Calibration, CAT) against synthetic/demo data. - **Security & Compliance**: PII masking cannot break the system. Need SOC 2 and CSAP compliance alternatives to blind PII masking. -- **LLM Orchestration**: Ensure ALL LLM calls route through `contextual-orchestrator` utilizing API keys (BYTEZ, NVIDIA, OPENROUTER, OPENAI) with auto model discovery and optimal reasoning effort allocation (Fugu/Conductor/TRINITY research). +- **LLM Orchestration**: (Resolved, LineageWeave side) Every one of `backend/app/main.py`'s 13 LLM client factories (`_keyman_extraction_client`, `_entity_relationship_client`, `_organization_name_resolution_client`, `_customer_hint_resolution_client`, `_corporate_hierarchy_inference_client`, `_post_summary_client`, `_adjudication_client`, `_post_structure_client`, `_post_chat_client`, `_commitment_extraction_client`, `_vision_client`, `_embedding_client`, `_post_evaluation_client`) routes through `settings.orchestrator_base_url`/`orchestrator_api_key` -- confirmed no hardcoded provider SDK, key, or endpoint (`OPENAI_API_KEY`, `ANTHROPIC_API_KEY`, `BYTEZ_API_KEY`, `NVIDIA_NIM_API_KEY`, `OPENROUTER_API_KEY`) appears anywhere in `lineageweave/`, `backend/`, or `scripts/`. Every request body sends `"mode": "auto"` (no hardcoded model) plus a `reasoning_effort` value, delegating model selection and reasoning-depth allocation to `contextual-orchestrator` per call. What LineageWeave cannot itself verify or fix: whether `contextual-orchestrator` internally does correct auto model discovery across the BYTEZ/NVIDIA/OPENROUTER/OPENAI keys, or genuinely applies Fugu/Conductor/TRINITY-informed compute allocation -- that is `contextual-orchestrator`'s own repository's responsibility, out of this repo's scope to audit. *This document is continuously updated by the hourly automated agent loop.* From 4b2b27b95155d290d584ac36ec384b8ccafa6f2c Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Sat, 22 Aug 2026 22:53:22 +0900 Subject: [PATCH 2/5] fix(frontend): use OIDC return-url helpers on the login button Same shared-ancestor bug as the prior 16 branches: the login button built an unsanitized returnUrl inline instead of returnUrlFromLocation()/ rememberOidcReturnUrl(), and removed the unreachable login-screen AdminPanel render. --- frontend/src/App.test.tsx | 3 +++ frontend/src/App.tsx | 4 ++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/frontend/src/App.test.tsx b/frontend/src/App.test.tsx index 7462abd2c..70eb27590 100644 --- a/frontend/src/App.test.tsx +++ b/frontend/src/App.test.tsx @@ -41,6 +41,9 @@ describe("App, unauthenticated", () => { state: expect.objectContaining({ returnUrl: expect.stringMatching(/^\//) }), }), ); + // Persisted as a fallback in case the OIDC state round-trip is dropped + // (see oidcReturnUrl.ts's restoreOidcReturnUrl, consumed in main.tsx). + expect(window.sessionStorage.getItem("lineageweave.oidc.returnUrl")).toMatch(/^\//); }); }); diff --git a/frontend/src/App.tsx b/frontend/src/App.tsx index 6fba0dd41..1b5b351ab 100644 --- a/frontend/src/App.tsx +++ b/frontend/src/App.tsx @@ -4610,7 +4610,8 @@ export default function App({ showLabPanels = false }: { showLabPanels?: boolean
- {destination === "admin" ? : null}