Ship docs/ in the image, so /docs is not empty in production - #4
Merged
Conversation
.dockerignore excluded docs/, so the built image had no documents to render:
every /docs/{api,cli,mcp,plugins} page answered 404 in production while the
index rendered its "deployed without its docs directory" fallback and a
perfectly healthy 200. Live on tsbb.dev the moment #3 deployed.
Nothing that boots the app in a checkout could have caught it — the files
are right there — so the guard goes on the thing that was actually wrong.
test/docs.test.ts now reads .dockerignore and fails if docs/ is excluded,
and the route warns at boot when the directory is missing, because a
documentation site that silently serves nothing is a failure with no
symptom anyone would notice from the outside.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SnsZkEBoc39vYSN2hKLAwS
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
/docs/api,/docs/cli,/docs/mcpand/docs/pluginsall answer 404 on tsbb.dev right now, from the moment #3 deployed..dockerignoreexcludeddocs/, so the built image has no documents to render. The index still answers a healthy200— it renders its "This install was deployed without its docs directory" fallback — which is why the deploy looked fine.The guard
Nothing that boots the app in a checkout could have caught this: the files are right there, and all ten docs tests passed. So the guard goes on the thing that was actually wrong.
test/docs.test.tsnow reads.dockerignoreand fails ifdocs/is excluded — verified by re-adding the line and watching it go red:The route also warns at boot when the directory is missing. A documentation site that silently serves nothing is a failure with no symptom anyone would notice from the outside, and it deserves a line in the log.
Testing
146 tests, up from 145.
pnpm typecheckclean.Note CI cannot run — the account is locked over a GitHub Actions billing issue, so every job dies in a few seconds with "The job was not started because your account is locked due to a billing issue." That is unrelated to this change; local runs are the evidence.
🤖 Generated with Claude Code
https://claude.ai/code/session_01SnsZkEBoc39vYSN2hKLAwS