Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions .changes/mmr-408.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
### Changed

- **Updated dependencies to their current minor and patch releases** (MMR-408).
The CLI and MCP server move to MCP SDK 1.31, `pg` 8.23.1, and zod 4.6. The
console moves to React 19.3 and current TanStack Query, Router, and Form
releases. The sandbox moves to loom 0.6. The build and test toolchains move
to Vite 8.3, vite-plus 0.2.9, and Playwright 1.63. Source formatting follows
the newer bundled formatter.
322 changes: 143 additions & 179 deletions bun.lock

Large diffs are not rendered by default.

6 changes: 3 additions & 3 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -25,13 +25,13 @@
"test:sandbox": "bun run build && MIMIR_SANDBOX_LIFECYCLE_TEST=1 bun test packages/sandbox/src/workflow.integration.test.ts packages/sandbox/src/installer.integration.test.ts"
},
"dependencies": {
"vite": "^8.2.0"
"vite": "^8.3.2"
},
"devDependencies": {
"@dbtlr/tooling": "0.6.0",
"@types/bun": "^1.3.14",
"@types/bun": "^1.4.2",
"oxlint": "1.77.0",
"vite-plus": "^0.2.8"
"vite-plus": "^0.2.9"
},
"overrides": {
"@hono/node-server": "2.1.0",
Expand Down
6 changes: 3 additions & 3 deletions packages/bin/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,11 @@
"dependencies": {
"@mimir/contract": "workspace:*",
"@mimir/helpers": "workspace:*",
"@modelcontextprotocol/sdk": "1.30.0",
"@modelcontextprotocol/sdk": "1.31.0",
"kysely": "0.29.6",
"mdast-util-from-markdown": "2.0.3",
"pg": "8.23.0",
"zod": "4.4.3"
"pg": "8.23.1",
"zod": "4.6.5"
},
"devDependencies": {
"@electric-sql/pglite": "0.5.8",
Expand Down
7 changes: 4 additions & 3 deletions packages/bin/src/cli/help.ts
Original file line number Diff line number Diff line change
Expand Up @@ -50,9 +50,10 @@ export function uniformFlagSpec(spec: OpFact): string {
* fields — the flag spelled by the shared template, described by its field. */
export function uniformFlagRows(spec: OpFact): Row[] {
return specUpdateFields(spec.fields ?? []).flatMap((field) =>
updateFieldFlags(field.update).map(
([, flag]): Row => [flag, FIELD_ARG_HELP[field.key] ?? `${field.key} recorded on the row`],
),
updateFieldFlags(field.update).map(([, flag]): Row => [
flag,
FIELD_ARG_HELP[field.key] ?? `${field.key} recorded on the row`,
]),
);
}

Expand Down
24 changes: 10 additions & 14 deletions packages/bin/src/core/store-conformance.transfer.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -306,20 +306,16 @@ const invalidCases: InvalidCase[] = [
field: 'exactly one',
name: 'no history owner',
},
...['type', 'lifecycle', 'hold', 'size'].map(
(field): InvalidCase => ({
change: (d) => ({ ...d, nodes: patchFirst(d.nodes, { [field]: 'invalid' }) }),
field,
name: `off-enum node ${field}`,
}),
),
...['kind', 'lifecycle'].map(
(field): InvalidCase => ({
change: (d) => ({ ...d, seeds: patchFirst(d.seeds, { [field]: 'invalid' }) }),
field,
name: `off-enum seed ${field}`,
}),
),
...['type', 'lifecycle', 'hold', 'size'].map((field): InvalidCase => ({
change: (d) => ({ ...d, nodes: patchFirst(d.nodes, { [field]: 'invalid' }) }),
field,
name: `off-enum node ${field}`,
})),
...['kind', 'lifecycle'].map((field): InvalidCase => ({
change: (d) => ({ ...d, seeds: patchFirst(d.seeds, { [field]: 'invalid' }) }),
field,
name: `off-enum seed ${field}`,
})),
{
change: (d) => ({ ...d, transitions: patchFirst(d.transitions, { kind: 'invalid' }) }),
field: 'kind',
Expand Down
12 changes: 5 additions & 7 deletions packages/bin/src/core/store-postgres/transfer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -110,13 +110,11 @@ export async function exportPostgresStore(ex: Executor): Promise<StoreExport> {
];

const annotations: NewAnnotationRecord[] = nodes.flatMap((node) =>
(sections.get(node.id)?.annotations ?? []).map(
(view): NewAnnotationRecord => ({
content: view.content,
created_at: view.createdAt,
node_id: node.id,
}),
),
(sections.get(node.id)?.annotations ?? []).map((view): NewAnnotationRecord => ({
content: view.content,
created_at: view.createdAt,
node_id: node.id,
})),
);

const transitions = await exportTransitions(ex);
Expand Down
20 changes: 9 additions & 11 deletions packages/bin/src/core/store-postgres/transitions.ts
Original file line number Diff line number Diff line change
Expand Up @@ -65,17 +65,15 @@ export function createPostgresTransitionsFeed(ex: Executor): TransitionsFeed {
query = query.limit(opts.limit);
}
const rows = await query.execute();
const items = rows.map(
(row): TransitionView => ({
at: row.at,
from: row.from_value,
kind: row.kind,
// Entity-keyed (ADR 0015): exactly one of the two is set.
node: row.node_id ?? row.project_key ?? '',
reason: row.reason,
to: row.to_value,
}),
);
const items = rows.map((row): TransitionView => ({
at: row.at,
from: row.from_value,
kind: row.kind,
// Entity-keyed (ADR 0015): exactly one of the two is set.
node: row.node_id ?? row.project_key ?? '',
reason: row.reason,
to: row.to_value,
}));
const last = rows.at(-1);
return last === undefined
? { items }
Expand Down
10 changes: 4 additions & 6 deletions packages/bin/src/core/store-postgres/working-set.ts
Original file line number Diff line number Diff line change
Expand Up @@ -149,12 +149,10 @@ export async function loadWorkingSet(ex: Executor): Promise<WorkingSet> {
new Map(projects.map((project) => [project.key, project.created_at])),
);
return {
edges: edges.map(
(edge): Dependency => ({
depends_on_node_id: edge.depends_on_node_id,
node_id: edge.node_id,
}),
),
edges: edges.map((edge): Dependency => ({
depends_on_node_id: edge.depends_on_node_id,
node_id: edge.node_id,
})),
nodeTags,
nodes: nodeRows.map(toNode),
projectTags,
Expand Down
6 changes: 3 additions & 3 deletions packages/sandbox/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@
"private": true,
"type": "module",
"dependencies": {
"@loomcli/core": "0.2.0",
"@loomcli/plugins": "0.2.0",
"zod": "4.4.3"
"@loomcli/core": "0.6.0",
"@loomcli/plugins": "0.6.0",
"zod": "4.6.5"
}
}
38 changes: 19 additions & 19 deletions packages/ui/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -19,35 +19,35 @@
"@fontsource-variable/jetbrains-mono": "^5.3.0",
"@mimir/contract": "workspace:*",
"@mimir/helpers": "workspace:*",
"@tanstack/query-async-storage-persister": "^5.101.4",
"@tanstack/react-form": "^1.33.3",
"@tanstack/react-query": "^5.101.4",
"@tanstack/react-query-persist-client": "^5.101.4",
"@tanstack/react-router": "^1.170.20",
"@tanstack/query-async-storage-persister": "^5.104.0",
"@tanstack/react-form": "^1.33.5",
"@tanstack/react-query": "^5.104.0",
"@tanstack/react-query-persist-client": "^5.104.0",
"@tanstack/react-router": "^1.170.41",
"class-variance-authority": "^0.7.1",
"clsx": "^2.1.1",
"idb-keyval": "^6.3.0",
"react": "^19.2.8",
"react-dom": "^19.2.8",
"react": "^19.3.0",
"react-dom": "^19.3.0",
"react-markdown": "^10.1.0",
"remark-gfm": "^4.0.1",
"sonner": "^2.0.7",
"tailwind-merge": "^3.3.1",
"zod": "^4.4.3"
"sonner": "^2.0.8",
"tailwind-merge": "^3.7.0",
"zod": "^4.6.5"
},
"devDependencies": {
"@playwright/test": "1.58.2",
"@playwright/test": "1.63.0",
"@tailwindcss/typography": "^0.5.20",
"@tailwindcss/vite": "^4.3.3",
"@testing-library/jest-dom": "^7.0.0",
"@testing-library/react": "^16.3.0",
"@testing-library/user-event": "^14.6.3",
"@types/react": "^19.2.18",
"@types/react-dom": "^19.2.4",
"@vitejs/plugin-react": "^6.0.5",
"jsdom": "^30.0.1",
"@testing-library/jest-dom": "^7.0.1",
"@testing-library/react": "^16.3.3",
"@testing-library/user-event": "^14.6.7",
"@types/react": "^19.3.0",
"@types/react-dom": "^19.3.0",
"@vitejs/plugin-react": "^6.1.1",
"jsdom": "^30.1.1",
"tailwindcss": "^4.3.3",
"vite": "^8.2.0",
"vite": "^8.3.2",
"vite-plugin-pwa": "^1.0.3",
"vitest": "^4.1.10",
"workbox-window": "^7.4.1"
Expand Down
Loading