Skip to content

Bump dependencies and adapt to breaking changes#33

Merged
tobias-gp merged 3 commits intomainfrom
fix/depsupdate
Apr 19, 2026
Merged

Bump dependencies and adapt to breaking changes#33
tobias-gp merged 3 commits intomainfrom
fix/depsupdate

Conversation

@tobias-gp
Copy link
Copy Markdown
Contributor

Summary

Applies the open Dependabot updates, adapts code to the breaking changes they introduce, and fixes pre-existing frontend TypeScript errors that were invisible to CI (the frontend Docker build only runs vite build, not tsc).

Dependency bumps

  • Node Docker base 24-slim25-slim. Node 25 dropped bundled corepack, so pnpm is installed via npm install -g pnpm@10.30.3.
  • GitHub Actions: actions/checkout v5→v6, actions/github-script v8→v9, actions/upload-pages-artifact v4→v5.
  • @types/node 20 → 25 across all workspaces.
  • vite 6 → 8 with @vitejs/plugin-react 4 → 6.
  • lucide-react 0.562 → 1.8.0. Brand icons were removed upstream, so a local GithubIcon SVG replaces the two Github call sites.
  • deepagents 1.8.8 → 1.9.0. @langchain/anthropic is now a required runtime import of deepagents, so it was added to @archmax/core. agent-filesystem was adapted to the new ReadRawResult shape (data.content is now string | string[] | Uint8Array).
  • Minor/patch bumps for @langchain/core, @langchain/openai, better-auth, dotenv, astro, hono, vitest, @vitest/coverage-v8, esbuild.

Pre-existing frontend tsc errors fixed

  • Added zValidator("query", ...) to mcp-logs, conversations, test-cases, and test-runs so the Hono RPC client exposes query at the type level.
  • Dropped unused json: {} / query: {} client args and switched the Mongoose-backed response casts to as unknown as Promise<X> (what tsc itself suggests) since lean() results surface only { _id, __v } through the RPC client.
  • Tightened NavChild path types in the sidebar so the template-literal to prop matches the router's known path list.
  • Made the ModelsChat prefill search param truly optional and added the missing <Uint8Array> generic on ReadableStreamReadDoneResult in the SSE test.

Unrelated performance improvement (separate commit)

  • Memoized chat bubbles (ChatMessageItem, MessageSegments) so unrelated parent re-renders (input typing, isStreaming flipping at stream end) no longer force react-markdown to re-parse the full conversation.
  • Made bridgeRedisToSSE exit as soon as a done event arrives instead of waiting for the next ping. Includes a regression test.

Test plan

  • pnpm typecheck — 7/7 packages pass
  • pnpm build — 6/6 tasks pass (frontend vite + all tsc targets)
  • pnpm test:coverage — 719/719 tests pass
  • CI green on this PR
  • Smoke-test the running app locally (agent chat, MCP logs, test runs pagination, GitHub-linked routes)

Supersedes

Closes the Dependabot PRs covered by this change (24, 27–31, plus the Actions PRs).

Made with Cursor

Tobias Grosse-Puppendahl added 3 commits April 19, 2026 14:05
The previously committed Project Home, Graph View, and Settings
screenshots were scaled-down exports and rendered pixelated. Replace
them with the original full-resolution captures so the README and
docs landing page gallery look consistent with the other tiles.

Made-with: Cursor
Applies the open Dependabot updates and surrounding fixes so everything
type-checks, builds, and tests clean:

- Node Docker base 24-slim -> 25-slim; install pnpm via npm since Node 25
  dropped bundled corepack.
- GitHub Actions: checkout v5->v6, github-script v8->v9,
  upload-pages-artifact v4->v5.
- @types/node 20 -> 25 across all workspaces.
- vite 6 -> 8 with @vitejs/plugin-react 4 -> 6.
- lucide-react 0.562 -> 1.8.0; brand icons were removed, so add a local
  GithubIcon SVG and switch the two call sites to it.
- deepagents 1.8.8 -> 1.9.0; @langchain/anthropic is now a required
  runtime import, so add it to @archmax/core. Adapt agent-filesystem's
  readRaw usage to the new ReadRawResult shape (data.content can now be
  string | string[] | Uint8Array).
- Minor/patch bumps for @langchain/core, @langchain/openai, better-auth,
  dotenv, astro, hono, vitest, @vitest/coverage-v8, esbuild.

Also fix pre-existing frontend tsc errors that were invisible to CI
(frontend Docker build only runs vite build, not tsc):

- Add zValidator("query", ...) to mcp-logs, conversations, test-cases,
  and test-runs so the Hono RPC client exposes `query` at the type
  level.
- Drop unused `json: {}` / `query: {}` client args and switch the
  Mongoose-backed response casts to `as unknown as Promise<X>` (what
  tsc itself suggests) since lean() results surface only { _id, __v }
  through the RPC client.
- Tighten NavChild paths in the sidebar so the template-literal `to`
  prop matches the router's known path list.
- Make the ModelsChat `prefill` search param truly optional and add the
  missing `<Uint8Array>` generic on ReadableStreamReadDoneResult in the
  sse test.

Made-with: Cursor
- Extract each chat bubble into a memoized `ChatMessageItem` so unrelated
  parent re-renders (input typing, `isStreaming` flipping at stream end)
  no longer force `react-markdown` to re-parse the full conversation.
  Also wrap `MessageSegments` in `React.memo` for the same reason. This
  removes the main-thread stalls observed on long conversations.
- In `bridgeRedisToSSE`, exit as soon as a `done` event is observed on
  the Redis subscription instead of waiting for the next ping tick.
  Adds a regression test.

Made-with: Cursor
@railway-app
Copy link
Copy Markdown

railway-app Bot commented Apr 19, 2026

🚅 Deployed to the archmax-pr-33 environment in archmax SemLayer

Service Status Web Updated (UTC)
archmax_standalone ✅ Success (View Logs) Apr 19, 2026 at 12:28 pm
archmax_standalone_with_volume ✅ Success (View Logs) Apr 19, 2026 at 12:28 pm
archmax_external_dbs ✅ Success (View Logs) Apr 19, 2026 at 12:28 pm

@railway-app railway-app Bot temporarily deployed to archmax SemLayer / archmax-pr-33 April 19, 2026 12:27 Destroyed
@github-actions
Copy link
Copy Markdown

Docker image ready

docker pull ghcr.io/archmaxai/archmax:pr-33

@tobias-gp tobias-gp merged commit 2579ab4 into main Apr 19, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant