commit b2c696cba2f27ea1f874e195c08227ae00b5bc9c
parent 417afda560d3dfc9ce24d83f21a98ea126696598
Author: I Mean I'm Just Saying <imeanimjustsaying@kiwifarms.st>
Date: Wed, 30 Sep 2026 10:07:43 -0400
homepage: /source/git/* is X-Robots-Tag: noindex, like the raw tree (review M1, ruled); pinned in headers.test.ts, with the pages' own types kept
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Diffstat:
2 files changed, 20 insertions(+), 0 deletions(-)
diff --git a/homepage/app/lib/headers.test.ts b/homepage/app/lib/headers.test.ts
@@ -101,3 +101,19 @@ test("the raw tree is text, its pages HTML, its binaries their own type — each
assert.match(served(RULES, "/source/tree/a.svg", "image/svg+xml").get("content-security-policy")!, /default-src 'none'/);
assert.equal(served(RULES, "/source/manifest.json", "application/json").get("content-type"), "application/json");
});
+
+test("the history pages (release 15 slice SG) are not indexed, like the raw tree, and keep their own types", () => {
+ const cases: Array<[string, string]> = [
+ ["/source/git/log.html", "text/html"],
+ ["/source/git/commit/0123456789abcdef0123456789abcdef01234567.html", "text/html"],
+ ["/source/git/atom.xml", "application/xml"],
+ ["/source/git/style.css", "text/css"],
+ ];
+ for (const [p, type] of cases) {
+ const h = served(RULES, p, type);
+ assert.equal(h.get("x-robots-tag"), "noindex", p);
+ assert.equal(h.get("content-type"), type, `${p} keeps its type: no /source/tree rule applies`);
+ }
+ assert.equal(served(RULES, "/source/tree/README.md", "text/markdown").get("x-robots-tag"), "noindex");
+ assert.equal(served(RULES, "/source/", "text/html").get("x-robots-tag"), null, "the /source/ page itself is indexed");
+});
diff --git a/homepage/public/_headers b/homepage/public/_headers
@@ -47,3 +47,7 @@
! Content-Type
Content-Type: image/svg+xml
Content-Security-Policy: default-src 'none'; style-src 'unsafe-inline'
+# The history pages (stagit, sourceHistory.ts) are HTML by extension, and kept
+# out of search indexes like the raw tree (ruled, release 15 slice SG).
+/source/git/*
+ X-Robots-Tag: noindex