docs: App Catalog is live; record the Astro ADR and the Netlify MCP limit - #234
Merged
Conversation
…imit The site is deployed at https://veda-app-catalog.netlify.app, so replace the "pending" markers in README.md and docs/APP_CATALOG.md with the real URL. Adds an ADR for the two decisions worth defending later: choosing Astro + Pagefind over the Vite+React house stack (with the boundary — Astro here is for prose, not dashboards, so the exception doesn't become the rule), and making `limitations` and `solves` build-gated schema constraints rather than review conventions. Records three things learned wiring up the 8th Netlify site, all of which cost time and none of which are visible from the code: - The Netlify MCP server CANNOT connect a repo to a site. Its whole write surface is create-new-project (name + teamSlug only), rename, env vars, access controls and forms — no repo link, branch, base directory or build settings, and get-project can't read them back. An agent can create a bare project and nothing more; the repo connection is a UI step, which is also where it belongs, since it must be the GitHub App or PR Deploy Previews silently never appear. - The first live Pagefind query needs ~3s, not ~1s: it lazily fetches both pagefind.js and pagefind-worker.js, and a short wait looks exactly like a broken filter. - To prove search actually hits Pagefind, query a word that appears only in an MDX body. Title/description/tags are all the substring fallback can see, so a term in a title passes either way and proves nothing. Also mirrors the two Astro traps (MDX eating inline SVG, component style scoping) into .clinerules.md, which had no app-catalog rules at all.
✅ Deploy Preview for veda-github-actions canceled.
|
✅ Deploy Preview for veda-dse-hub canceled.
|
✅ Deploy Preview for veda-aws-dashboard canceled.
|
✅ Deploy Preview for veda-algorithm-catalog canceled.
|
✅ Deploy Preview for veda-projectboard-dashboard canceled.
|
✅ Deploy Preview for veda-pr-dashboard canceled.
|
✅ Deploy Preview for veda-app-catalog ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
✅ Deploy Preview for veda-leave-dashboard canceled.
|
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.
The App Catalog is deployed: https://veda-app-catalog.netlify.app
Verified against the live site before writing any of this down — 14 entries, all 14 with a
solvesline, both type facets present, and a body-only search term (threadedComments) correctly returning exactlydocs-leave-trackerthrough Pagefind, withpagefind.jsandpagefind-worker.jsfetched from the live origin.What changed
README.md/docs/APP_CATALOG.md— the "pending" markers become the real URL.docs/DECISIONS.md— a new ADR for the two decisions worth defending later:limitationsandsolvesas build-gated schema constraints, not review conventions — a review convention decays the first time someone is in a hurry..clinerules.md— had noapp-catalogrules at all; now carries the required-fields rule and both Astro traps.CLAUDE.md— live URL, plus the Netlify MCP finding below.app-catalog/src/content/catalog/docs-decisions.mdx— that entry describes what's inDECISIONS.md, and this PR changes those contents, so its description and body were stale the moment the ADR landed.Three things learned wiring up the 8th site
None visible from the code, all cost time:
create-new-project(name+teamSlugonly), rename, env vars, access controls and forms — no repo link, branch, base directory or build settings, andget-projectcan't read them back either. An agent can create a bare project and nothing more. The repo connection is a UI step, which is also where it belongs: it must be the GitHub App, or PR Deploy Previews silently never appear (the failureodsi-app-catalog's ADR §7 already recorded).pagefind.jsandpagefind-worker.js. A short wait returns "all 14 still showing", which looks exactly like a broken filter. I hit this and briefly thought search was broken on the deploy.Note on this PR
It deliberately touches one file under
app-catalog/, so Netlify actually builds a Deploy Preview instead of skipping it. A docs-only PR gets an implicit base-directory skip on every site — expected behaviour, documented inCLAUDE.md, but it would mean this PR proved nothing about whether previews work on the new site. Confirming that is the point, since a deploy-key connection would have silently lost them.