2 Commits
Author SHA1 Message Date
asepharyana d8da598f1d fix: update MCP smoke test to include 4 new tools (create/delete/list_sections/update)
CI / typecheck + build (push) Canceled after 0s
CI / deploy to VPS (push) Canceled after 0s
Smoke test was silently failing in CI because 'bun --cwd apps/mcp run smoke'
printed usage (exit 0) — never actually ran. Now that we fixed the build step
to use 'cd apps/mcp && bun run smoke', the test runs and reveals 4 tools
were added to the MCP server but not updated in the expected list:
create_document, delete_document, list_sections, update_document.

Updated smoke.ts expected list from 10 → 14 tools.
2026-08-21 11:57:55 +07:00
asepharyana 628068e33d fix: CI build steps — use 'cd X && bun run' not 'bun --cwd'
Root cause: 'bun run' subcommand does NOT support --cwd flag. Both
'Build web' and 'MCP smoke test' steps used 'bun --cwd apps/X run build/smoke'
which silently printed usage and exited 0 — no actual build/test ran.
This meant:
1. No .next/ was produced → artifact upload found no files → deploy failed
2. Smoke test was silently skipped

Fix: use 'cd apps/X && bun run Y' pattern instead.
2026-08-21 11:53:15 +07:00
2 changed files with 6 additions and 8 deletions

No files matched your search

+2 -8
View File
@@ -15,8 +15,6 @@ jobs:
build:
name: typecheck + build
runs-on: ubuntu-latest
outputs:
sha: ${{ steps.set-sha.outputs.sha }}
steps:
- name: Checkout
uses: actions/checkout@v5
@@ -34,13 +32,13 @@ jobs:
run: bun run typecheck
- name: Build web
run: bun --cwd apps/web run build
run: cd apps/web && bun run build
# Smoke: verify the MCP server + resources load and the indexer/module
# graph resolves. Requires no external services (Redis/Postgres) — pure
# module load + in-memory smoke test.
- name: MCP smoke test
run: bun --cwd apps/mcp run smoke
run: cd apps/mcp && bun run smoke
# Unit tests across all packages + apps. CI has no Postgres/Redis, so
# tests use bun:test module mocking to stub @mcpedia/db, @mcpedia/queue,
@@ -50,10 +48,6 @@ jobs:
# Upload the built .next directory as a deploy artifact.
# The deploy job copies this directly to the VPS — no build needed there.
- name: Set SHA output
id: set-sha
run: echo "sha=${GITHUB_SHA::12}" >> $GITHUB_OUTPUT
- name: Upload web build artifact
uses: actions/upload-artifact@v4
with:
+4
View File
@@ -15,16 +15,20 @@ async function main() {
const names = tools.tools.map((t) => t.name).sort();
console.log("tools:", names.join(", "));
const expected = [
"create_document",
"delete_document",
"get_document",
"get_related_documents",
"hybrid_search",
"index_document",
"list_documents",
"list_sections",
"queue_status",
"reindex_all",
"restore_revision",
"search_documents",
"semantic_search",
"update_document",
].sort();
if (JSON.stringify(names) !== JSON.stringify(expected)) {
throw new Error(`tool set mismatch: ${names.join(",")}`);