Skip to content

fix: extract renderClientShell, fix e2e test failures - #233

Merged
elliotBraem merged 5 commits into
mainfrom
refactor/host
Aug 12, 2026
Merged

fix: extract renderClientShell, fix e2e test failures#233
elliotBraem merged 5 commits into
mainfrom
refactor/host

Conversation

@elliotBraem

Copy link
Copy Markdown
Contributor

Extract renderClientShell from program.ts into host/src/routes/html.ts and fix test suite.

Changes:

  • Extract renderClientShell to host/src/routes/html.ts — nonce passed as param instead of recomputing CSP_STRICT
  • Fix stale theme toggle locator: 'Toggle theme'/Switch to .* theme/
  • Fix proxy target (json-proxy-target.ts):
    • Return oRPC-compatible RPC format { json, meta } for /api/rpc/*
    • Add stubs for /api/auth/get-session and /api/auth/near/list-accounts
  • Fix 18 host vitest failures: provide mock session in test render options
  • Replace stale assertion in ssr-bundled-runtime test
  • Document bun run --cwd host test in AGENTS.md

Verification:

  • Host vitest: 16 files, 139 passed
  • Root suite: API 20 passed + e2e 11 passed = 31/31

- host: extract security middleware (cors/csrf/rate-limit/csp), static
  asset proxy, and API oRPC route setup out of program.ts into dedicated
  modules composed via SecurityMiddleware Live layer
- host: emit site.webmanifest manifest link in renderClientShell and fix
  runtime-remote test to assert it (drop stale BOS iframe assertion)
- host: dedupe normalizeDomain/normalizeUrl/extractErrorDetails into
  utils, remove inline duplicates from program/plugins/tenant-runtime
- api: add vitest config, HTTP integration harness with typed oRPC
  clients and injectable auth/org context, integration tests for ping/
  authHealth/resolveTenant/preflight/testError, and PGlite unit tests
  for TenantsService; fixes 'no test files found' in test:api
- Extract renderClientShell from program.ts into host/src/routes/html.ts
  (nonce now passed as param instead of recomputing CSP_STRICT)
- Fix stale theme toggle locator: 'Toggle theme' -> 'Switch to ... theme'
- Fix proxy target json-proxy-target.ts:
  - Return oRPC-compatible RPC format { json, meta } for /api/rpc/*
  - Add stubs for /api/auth/get-session and /api/auth/near/list-accounts
- Fix 18 host vitest failures: provide mock session in test render options
- Replace stale assertion in ssr-bundled-runtime test
- Document bun run --cwd host test in AGENTS.md
…ilder from program.ts

- Inline proxyUiAssetRequest at its single call site
- Extract buildRuntimeClientConfig, resolveActiveRuntime, getFallbackGatewayId
  to services/config.ts
- Extract static asset proxy middleware (lines 198-222) to
  middleware/static-proxy.ts as createStaticAssetProxyHandler()
- Extract SSR fallback handler (lines 226-298) to
  routes/ssr.ts as createSsrFallbackHandler()
- Remove unused imports from program.ts
- buildRuntimeClientConfig now takes authAvailable: boolean instead of
  plugins: PluginResult to avoid circular dependency
@elliotBraem
elliotBraem merged commit 4a1ffa2 into main Aug 12, 2026
6 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