For: /llms.txt is the first thing an outside agent reads. It lists public repositories (llmsRepos, src/web/standards.ts:257), and today it answers with only the total app time (production: server-timing: app;dur=1.7), so a slow answer cannot say which part is slow.
Done:
[ ] llmsTxt wraps llmsRepos(ctx.app.db) in timePhase(ctx.request, "repos", …) and the text build in timePhase(ctx.request, "render", …) (src/core/route_timing.ts).
[ ] A new test/llms-txt-timing.test.ts makes one public and one private repository. It asserts both phase names in server-timing, and that the body names the public repository and not the private one. The phase assertion fails without the change.
[ ] The body and content type are unchanged.
Files: src/web/standards.ts (this function only), test/llms-txt-timing.test.ts.
Risk: #5375 edits sitemapXml in the same file; touch only llmsTxt.
For: /llms.txt is the first thing an outside agent reads. It lists public repositories (
llmsRepos, src/web/standards.ts:257), and today it answers with only the totalapptime (production:server-timing: app;dur=1.7), so a slow answer cannot say which part is slow.Done:
llmsTxtwrapsllmsRepos(ctx.app.db)intimePhase(ctx.request, "repos", …)and the text build intimePhase(ctx.request, "render", …)(src/core/route_timing.ts).server-timing, and that the body names the public repository and not the private one. The phase assertion fails without the change.Files: src/web/standards.ts (this function only), test/llms-txt-timing.test.ts. Risk: #5375 edits
sitemapXmlin the same file; touch onlyllmsTxt.