✓CI#397 success
Succeeded without producing any output
ci → Typecheck — exited 0 and wrote nothing to stdout or stderr. This is a warning, not a failure: some commands are legitimately silent. But a green check is only worth what the step actually did, and a test runner that cannot start (for example
vitest with no node on PATH) also exits 0. Worth confirming this step ran what you think it ran before trusting it as a required check.✓cisuccess1m 15s
✓799ms
Install dependencies
$ bun install --frozen-lockfile✓40.7s
Typecheck
$ bash scripts/ci-typecheck.sh✓33.9s
Test (CI-safe suite)
$ bash scripts/ci-tests.sh==> Install dependencies $ bun install --frozen-lockfile bun install v1.3.14 (0d9b296a) + @playwright/test@1.60.0 + @types/bun@1.3.14 + @types/k6@2.0.0 + drizzle-kit@0.31.10 + cpu-features@0.0.10 + @anthropic-ai/sdk@0.96.0 + @neondatabase/serverless@1.1.0 + @simplewebauthn/server@13.3.0 + drizzle-orm@0.45.2 + highlight.js@11.11.1 + hono@4.12.18 + marked@18.0.3 + postgres@3.4.9 + sanitize-html@2.17.5 + ssh2@1.17.0 + typescript@5.9.3 86 packages installed [793.00ms] [exit 0 in 799ms] ==> Typecheck $ bash scripts/ci-typecheck.sh [exit 0 in 40659ms] ==> Test (CI-safe suite) $ bash scripts/ci-tests.sh --- design audit --- FILE LITERALS BANNED SAMPLES ---------------------------------------------------------------------------------------------------- src/views/agent-workspace.tsx 76 0 src/routes/admin-server-targets.tsx 53 0 src/views/distribution.tsx 47 0 src/routes/pulls.tsx 42 0 src/routes/ai-archaeology.tsx 40 0 src/routes/claude-web.tsx 35 0 src/views/production-layers.tsx 34 0 src/views/layout.tsx 33 0 src/views/daily-brief.tsx 33 0 src/views/trust-report.tsx 33 0 src/routes/admin.tsx 29 0 src/routes/admin-integrations.tsx 28 0 src/views/org-memory.tsx 28 0 src/routes/admin-deploys-page.tsx 27 0 src/routes/share.tsx 26 0 [design-audit] 173 file(s) with literal colors · 0 banned-family literal(s) [design-audit] no banned-family colors. Literal debt above burns down per file. running 421 test files (20 excluded as credential-dependent) --- failures --- (none) --- summary --- (skip) gluecron_security_scan argument + access handling > hides a repo the caller cannot see (skip) response contract > returns every category with a status, and never an implicit pass (skip) response contract > carries fixed versions on advisory findings when OSV has one (skip) findTrackedDocs — drift detection > treats first-time observations as fresh, second-time differing hashes as stale (skip) proposeDocUpdate > opens a PR with the refreshed markdown when Claude returns a patch (skip) recordAiCost — DB-backed > inserts a row that summarizeCostsForUser can find (skip) recordAiCost — DB-backed > never throws on bad input — swallows DB errors (skip) runSpecToPr — end-to-end with fake Claude > opens a PR, tags it, and rewrites the spec status to building (skip) runSpecToPr — end-to-end with fake Claude > refuses a spec whose status is not 'ready' (skip) API v2 — git plumbing write endpoints (DB-backed) > POST /git/blobs round-trips utf-8 and base64 content (skip) branch-previews — DB pipeline > enqueue creates a building row with a computed preview URL (skip) branch-previews — DB pipeline > re-pushing the same branch DEDUPES — same id, new SHA, status='building' (skip) branch-previews — DB pipeline > markPreviewReady flips status to 'ready' with completed_at (skip) branch-previews — DB pipeline > markPreviewFailed records error_message + truncates (skip) branch-previews — DB pipeline > expireOldPreviews transitions ready rows past expires_at to 'expired' (skip) branch-previews — DB pipeline > expireOldPreviews leaves fresh rows alone (skip) branch-previews — DB pipeline > listPreviewsForRepo orders by build_started_at descending (skip) install-token — successful mint > mints a glc_ PAT + writes auth.install_token.created audit row (skip) install-token — successful mint > defaults name + scope when body is empty 5405 pass 168 skip 0 fail 14909 expect() calls Ran 5573 tests across 420 files. [33.70s] [exit 0 in 33947ms]