Skip to content

chore: trim unreferenced docs assets and the SDK tarball - #466

Merged
dodeja merged 8 commits into
mainfrom
chore/trim-packages
Oct 19, 2026
Merged

dodeja merged 8 commits into
mainfrom
chore/trim-packages

Conversation

@dodeja

@dodeja dodeja commented Oct 19, 2026 •

Copy link
Copy Markdown
Member

What

Removes files that ship to users or sit in the repo without a reader, and stops the @terminal49/sdk tarball from carrying test and dev output. Each change is its own commit: docs, then SDK and MCP code, then tooling.

Commit Change
docs: Delete docs/content/analytics.js, a fully commented-out Segment snippet. Mintlify loads every .js under docs/ on every page. docs/segment.js is the live loader.
docs: Delete 14 unreferenced images in docs/images/ (4.2 MiB).
docs(mcp): Delete EXECUTION_SUMMARY.md, IMPROVEMENT_PLAN.md, and TEST_RESULTS_V2.md (October 2025 notes about MCP SDK 0.5 and 1.20), and the TESTING.md link to them.
fix(sdk): Stop publishing compiled tests, type tests, test helpers, dev scripts, and source maps that point at unshipped src/. Delete the unused src/scripts/example-deserialize.ts.
chore(mcp): Mark @terminal49/mcp "private": true.
chore: Delete public/.gitkeep and sdks/typescript-sdk/src/fixtures/.gitkeep. Both directories hold tracked files.

SDK tarball

package.json files now excludes dist/**/*.test.*, dist/**/*.test-d.*, dist/test, and dist/scripts. tsconfig.json no longer emits sourceMap or declarationMap. The maps referenced ../src/*.ts, which the tarball never included, so bundlers reported them as broken. The build itself is unchanged, so npm run smoke and npm run example still run from dist/scripts. The publish workflow runs the same npm run build.

npm pack --dry-run --workspace @terminal49/sdk Before After
Files 214 54
Packed 223.7 kB 109.8 kB
Unpacked 1.54 MB 748 kB

Before, the 214 files were 54 library files, 42 test outputs (205 kB), 106 maps (575 kB), 8 script outputs, and 4 test-helper outputs. After, only the 54 library files remain: dist/index.*, dist/client.*, dist/client/**, dist/generated/**, dist/types/**, README.md, and package.json.

I checked the packed tarball from a clean consumer project. npm install ./terminal49-sdk-0.6.0.tgz succeeds. import('@terminal49/sdk') returns Terminal49Client. tsc --strict --module nodenext type-checks new Terminal49Client({ apiToken }) against the shipped .d.ts.

Evidence for the deletions

  • Images. unref.mjs (a script that lists tracked assets whose basename no other tracked text file mentions) reports these 14 on main. I also searched docs/openapi.json, the Postman collection, and all 309 remote branches. Only stale branches reference any of them. The one open PR among them, [CHORE] add current status filter docs #221, has carriers_screenshot.png and new_webhook.png only in its old base, and its diff against main does not add them. The four *_route* and *vessel_positions* screenshots lost their last reference in 28c2fe3 (Add map_geojson documentation). The docs site serves docs/images/ under /images/, so an external link to one of these URLs would now 404. I can't rule that out from the repo.
  • MCP notes. Only TESTING.md linked to them, and that link is removed here. None of the three files is in the mcp-v2 stack diff.
  • @terminal49/mcp private. npm view @terminal49/mcp returns 404. No workflow publishes it. The MCP registry entry (server.json in the mcp-v2 stack) lists only the hosted remote. Release-please only rewrites its @terminal49/sdk dependency. npm install --package-lock-only leaves the packages/mcp lockfile entry unchanged.

Verification

On this branch, Node 24.11.0:

Check Result
npx vp run check pass
npx vp run test pass (CLI 153, SDK 418, MCP 550)
npx vp run build pass
git merge-tree against #458, #461, #462, #459, #465, and mcp-v2/08-release no conflicts

Follow-ups

🤖 Generated with Claude Code


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need.

RetriggerView in GreptileConfidence Score: 4/5

The PR appears safe to merge, with a non-blocking cleanup needed for SDK packages made from previously built checkouts.

Fix All in CodexFindings

  1. P2 Old maps still ship ▶
Fix with agent prompt
### Issue 1
sdks/typescript-sdk/package.json:11
If a developer built the base branch before switching to this branch, rebuilding leaves the old `.js.map` and `.d.ts.map` files in `dist`. Disabling map output does not delete existing files, and `"dist/**/*"` still includes them. A local `npm pack` therefore still ships maps that point to missing source files.

Exclude map files explicitly or clean `dist` before building. The fresh checkout used by the publish workflow avoids this case.

```suggestion
    "dist/**/*",
    "!dist/**/*.map",
```

---

For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.

Summary

Removes unused docs assets and historical MCP notes, marks @terminal49/mcp private, and trims the published SDK.

  • The published SDK package leaves tests and development files out.
  • The docs tree drops an inactive analytics snippet and unused images.
  • MCP docs no longer include old SDK plans or test results.
  • The MCP package is marked as private.
  • Unused helper files and placeholder files leave the repository.

Acknowledged by dodeja: external links to the deleted images may return 404. The PR explicitly accepts this possibility because external use cannot be ruled out.

Reviews (1) · Last reviewed commit: "chore: delete .gitkeep files from direct..." · Reviewed by Greptile

dodeja and others added 6 commits October 18, 2026 17:24
Mintlify loads every .js file under docs/ on every page, so
docs/content/analytics.js shipped to each docs visitor although every
line is a comment. docs/segment.js is the live analytics loader.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
No tracked file on main names these images, including docs/openapi.json,
the Postman collection, and the READMEs. No open PR or mcp-v2 branch
adds a reference to one. The four routing screenshots lost their last
reference when the map_geojson docs replaced them. Removes 4.2 MiB.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
EXECUTION_SUMMARY.md, IMPROVEMENT_PLAN.md, and TEST_RESULTS_V2.md
describe the server on @modelcontextprotocol/sdk 0.5 and 1.20. The
server now runs on the 2.x split packages. TESTING.md was the only
other file that linked to them.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The @terminal49/sdk tarball shipped compiled tests, type tests, test
helpers, and the smoke and example scripts. It also shipped .map and
.d.ts.map files whose sources point at src/, which the tarball does not
include, so consumers' bundlers could not resolve them.

- package.json files: exclude dist test, test-d, test helper, and
  scripts output. npm run build still compiles them, so the smoke and
  example scripts keep working from dist.
- tsconfig.json: stop emitting sourceMap and declarationMap. Type
  declarations still emit.
- Delete src/scripts/example-deserialize.ts. Nothing runs it.

npm pack --dry-run: 214 files, 223.7 kB packed and 1.54 MB unpacked,
down to 54 files, 109.8 kB and 748 kB.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
No workflow publishes it, the name is not on npm, and the MCP registry
entry points at the hosted server. private: true stops an accidental
npm publish. Release-please only rewrites its @terminal49/sdk
dependency, which private does not affect.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
public/ holds store-icons/ and sdks/typescript-sdk/src/fixtures/ holds
26 fixtures, so neither placeholder keeps an empty directory alive.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@mintlify

mintlify Bot commented Oct 19, 2026 •

Copy link
Copy Markdown
Contributor

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated
terminal49 🟢 Ready View Preview Oct 19, 2026, 12:27 AM

@vercel

vercel Bot commented Oct 19, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
api Ready Ready Preview Oct 19, 2026 2:50am UTC

Request Review

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 19, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-19T02:50:55.632309Z 2292fcf New commits
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@blacksmith-sh

This comment has been minimized.

},
"files": [
"dist/**/*"
"dist/**/*",

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Old maps still ship

If a developer built the base branch before switching to this branch, rebuilding leaves the old .js.map and .d.ts.map files in dist. Disabling map output does not delete existing files, and "dist/**/*" still includes them. A local npm pack therefore still ships maps that point to missing source files.

Exclude map files explicitly or clean dist before building. The fresh checkout used by the publish workflow avoids this case.

Suggested change
"dist/**/*",
"dist/**/*",
"!dist/**/*.map",
Prompt To Fix With AI
This is a comment left during a code review.
Path: sdks/typescript-sdk/package.json
Line: 11

Comment:
**Old maps still ship**

If a developer built the base branch before switching to this branch, rebuilding leaves the old `.js.map` and `.d.ts.map` files in `dist`. Disabling map output does not delete existing files, and `"dist/**/*"` still includes them. A local `npm pack` therefore still ships maps that point to missing source files.

Exclude map files explicitly or clean `dist` before building. The fresh checkout used by the publish workflow avoids this case.

```suggestion
    "dist/**/*",
    "!dist/**/*.map",
```

---

For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.

Fix in Codex Fix in Claude Code

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in d862ac4 with !dist/**/*.map in files. To check it, I created a stale dist/stale-dummy.js.map and dist/client/stale-dummy.d.ts.map. Before the change, npm pack --dry-run --workspace @terminal49/sdk listed both. After the change it lists no .map files, and the pack keeps its 54 files, including dist/index.js and dist/index.d.ts.

A dist built before source maps were disabled keeps its .map files, and
dist/**/* would still pack them. Exclude them explicitly.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@dodeja
dodeja merged commit 15e409e into main Oct 19, 2026
24 of 26 checks passed
@dodeja
dodeja deleted the chore/trim-packages branch October 19, 2026 03:54

This branch was successfully deployed

2 active (1 outdated) deployments
Preview — 2292fcf6 Deployed Oct 19, 2026 by vercel[bot]
staging - docs — 2c9772f2 Deployed Oct 19, 2026 by mintlify[bot]
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