Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions specs/016-visual-redesign/tasks.md
Original file line number Diff line number Diff line change
Expand Up @@ -164,3 +164,4 @@ Items from the redesign review, one pull request each, in order.
- [x] R-01 PR #58 merged: matrix and feature baselines refreshed
- [x] R-02 Small fixes: `.notice`, `.notice.caution` and `.card.notice` tint in oklab, not oklch (the toggle notice in `ChainPage.astro` keeps its local tint in the kind's ink); the link after "in the" on `/explorer/` and after "See" on `/standards/` no longer loses its space to HTML compression; the entry-format `pre` on `/contribute/` is focusable (axe scrollable-region-focusable)
- [x] R-02a Imagery on the new system (asked on the R-02 pull request): the social card (`public/og.png`) redrawn as the home hero on flat tokens with the real matrix, replacing the pre-redesign card (glow, shadow, dot grid, slogan); the Apple touch icon on `--ground`; the README hero and how-it-works pictures on the new tokens without glow, shadow, gradient or dot grid, with MatrixThumb's marks and the home headline. The favicon and `public/brand/` already match the supplied logo and are unchanged
- [x] R-03 Nav wording: the primary and footer navigation read Servers, Standards, Explorer, Breaches, Contribute (Scanner stays in the footer); every `<Crumbs>` trail, the page-foot cross link on `/standards/` and the 404 buttons use the same words; `/mcp/` and `/standards/` take Servers and Standards as `<title>` and eyebrow. "Atlas" stays the product word in ledes and body copy
4 changes: 2 additions & 2 deletions src/components/ChainPage.astro
Original file line number Diff line number Diff line change
Expand Up @@ -58,10 +58,10 @@ function arrow(from: string, to: string) {
trail={
toggle
? [
{ href: "/explorer/", label: "Delegation chain explorer" },
{ href: "/explorer/", label: "Explorer" },
{ href: `/explorer/${scenario.id}/`, label: scenario.title },
]
: [{ href: "/explorer/", label: "Delegation chain explorer" }]
: [{ href: "/explorer/", label: "Explorer" }]
}
current={toggle ? toggle.name : scenario.title}
/>
Expand Down
2 changes: 1 addition & 1 deletion src/components/MatrixPage.astro
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ const classWords = (counts: { value: string; count: number }[], label: Record<st

<div class="wrap">
<header class="page-head">
<p class="eyebrow">MCP auth atlas</p>
<p class="eyebrow">Servers</p>
<h1>Who supports what in <span class="nowrap">MCP Authorization</span></h1>
<p class="lede">
The public MCP servers we list, against what MCP Authorization {matrix.revision.id} requires
Expand Down
14 changes: 7 additions & 7 deletions src/layouts/Base.astro
Original file line number Diff line number Diff line change
Expand Up @@ -29,11 +29,11 @@ const footerGroups = [
{
title: "Explore",
links: [
{ href: "/mcp/", label: "MCP auth atlas" },
{ href: "/mcp/", label: "Servers" },
{ href: "/mcp/scanner/", label: "Scanner" },
{ href: "/standards/", label: "Agent auth atlas" },
{ href: "/explorer/", label: "Delegation chain explorer" },
{ href: "/breaches/", label: "Breach anatomy" },
{ href: "/standards/", label: "Standards" },
{ href: "/explorer/", label: "Explorer" },
{ href: "/breaches/", label: "Breaches" },
],
},
{
Expand Down Expand Up @@ -61,12 +61,12 @@ const footerGroups = [
const nav = [
{
href: "/mcp/",
label: "MCP auth atlas",
label: "Servers",
match: (p: string) => p.startsWith("/mcp/"),
},
{
href: "/standards/",
label: "Agent auth atlas",
label: "Standards",
match: (p: string) => p.startsWith("/standards/"),
},
{
Expand All @@ -76,7 +76,7 @@ const nav = [
},
{
href: "/breaches/",
label: "Breach anatomy",
label: "Breaches",
match: (p: string) => p.startsWith("/breaches/"),
},
{
Expand Down
4 changes: 2 additions & 2 deletions src/pages/404.astro
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@ import Base from "@/layouts/Base.astro";
</header>
<p class="cta">
<a class="button" href="/">Go to the home page</a>
<a class="button quiet" href="/mcp/">MCP auth atlas</a>
<a class="button quiet" href="/standards/">Agent auth atlas</a>
<a class="button quiet" href="/mcp/">Servers</a>
<a class="button quiet" href="/standards/">Standards</a>
</p>
<p class="muted">
Followed a broken link on this site? Please{" "}
Expand Down
2 changes: 1 addition & 1 deletion src/pages/breaches/[id].astro
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ const label = (url: string) => {

<Base title={v.title} description={v.summary.trim()} path={`/breaches/${v.id}/`}>
<div class="wrap">
<Crumbs trail={[{ href: "/breaches/", label: "Breach anatomy" }]} current={v.id} />
<Crumbs trail={[{ href: "/breaches/", label: "Breaches" }]} current={v.id} />
<header class="page-head">
<p class="eyebrow">Breach anatomy</p>
<h1>{v.title}</h1>
Expand Down
2 changes: 1 addition & 1 deletion src/pages/mcp/changes/[from]/[to].astro
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ const FeatureLine = (f: Feature) => ({ name: f.name, id: f.id, party: PARTY_LABE
path={`/mcp/changes/${from}/${to}/`}
>
<div class="wrap">
<Crumbs trail={[{ href: "/mcp/", label: "MCP auth atlas" }]} current={`Changes ${from} to ${to}`} />
<Crumbs trail={[{ href: "/mcp/", label: "Servers" }]} current={`Changes ${from} to ${to}`} />
<header class="page-head">
<p class="eyebrow">Revision diff</p>
<h1>
Expand Down
2 changes: 1 addition & 1 deletion src/pages/mcp/features/[id].astro
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ const supersededBy = data.features.find((f) => f.supersedes === feature.id);
path={`/mcp/features/${feature.id}/`}
>
<div class="wrap">
<Crumbs trail={[{ href: "/mcp/", label: "MCP auth atlas" }]} current={feature.name} />
<Crumbs trail={[{ href: "/mcp/", label: "Servers" }]} current={feature.name} />
<header class="page-head">
<p class="eyebrow">{PARTY_LABEL[feature.party]} / {CATEGORY_LABEL[feature.category]}</p>
<h1>{feature.name}</h1>
Expand Down
2 changes: 1 addition & 1 deletion src/pages/mcp/index.astro
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ const revision = currentRevision(data);
---

<Base
title="MCP auth atlas"
title="Servers"
description={`Which public MCP servers support which features of the MCP Authorization specification, revision ${revision.id}. Every cell cites an observation.`}
path="/mcp/"
>
Expand Down
2 changes: 1 addition & 1 deletion src/pages/mcp/revisions/[revision].astro
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ if (currentRevision(getDataset()).id === revision) return Astro.redirect("/mcp/"
path={`/mcp/revisions/${revision}/`}
>
<div class="wrap">
<Crumbs trail={[{ href: "/mcp/", label: "MCP auth atlas" }]} current={`Revision ${revision}`} />
<Crumbs trail={[{ href: "/mcp/", label: "Servers" }]} current={`Revision ${revision}`} />
</div>
<MatrixPage revisionId={revision} />
</Base>
2 changes: 1 addition & 1 deletion src/pages/mcp/scanner/index.astro
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ const ladder = [
path="/mcp/scanner/"
>
<div class="wrap">
<Crumbs trail={[{ href: "/mcp/", label: "MCP auth atlas" }]} current="Scanner" />
<Crumbs trail={[{ href: "/mcp/", label: "Servers" }]} current="Scanner" />
<header class="page-head">
<p class="eyebrow">Scanner</p>
<h1>What a server's metadata says, measured every night</h1>
Expand Down
2 changes: 1 addition & 1 deletion src/pages/mcp/servers/[id].astro
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ const classes = [
noindex={Boolean(server.withdrawn)}
>
<div class="wrap">
<Crumbs trail={[{ href: "/mcp/", label: "MCP auth atlas" }]} current={server.name} />
<Crumbs trail={[{ href: "/mcp/", label: "Servers" }]} current={server.name} />
<header class="page-head">
<p class="eyebrow">Server</p>
<h1>{server.name}</h1>
Expand Down
2 changes: 1 addition & 1 deletion src/pages/mcp/servers/[id]/scan.astro
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ const gradeWord = view.grade.letter ? `grade ${view.grade.letter}` : view.grade.
<div class="wrap">
<Crumbs
trail={[
{ href: "/mcp/", label: "MCP auth atlas" },
{ href: "/mcp/", label: "Servers" },
{ href: `/mcp/servers/${server.id}/`, label: server.name },
]}
current="Scan report"
Expand Down
2 changes: 1 addition & 1 deletion src/pages/standards/[id].astro
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ const repoFile = `https://github.com/letsauthlab/letsauth/blob/main/data/specs/$
noindex={spec.maturity === "withdrawn"}
>
<div class="wrap">
<Crumbs trail={[{ href: "/standards/", label: "Agent auth atlas" }]} current={spec.name} />
<Crumbs trail={[{ href: "/standards/", label: "Standards" }]} current={spec.name} />
<header class="page-head">
<p class="eyebrow">{BODY_LABEL[spec.body]} / {FAMILY_LABEL[spec.family]}</p>
<h1>{spec.name}</h1>
Expand Down
6 changes: 3 additions & 3 deletions src/pages/standards/index.astro
Original file line number Diff line number Diff line change
Expand Up @@ -29,13 +29,13 @@ const repo = "https://github.com/letsauthlab/letsauth";
---

<Base
title="Agent auth atlas"
title="Standards"
description={`The standards map for agent authorization: ${nodes.length} specifications, drafts and EU acts from ${bodies.length} publishing bodies and the ${relations.length} relations between them, each with its maturity and dated revisions.`}
path="/standards/"
>
<div class="wrap">
<header class="page-head">
<p class="eyebrow">Agent auth atlas</p>
<p class="eyebrow">Standards</p>
<h1>The standards that decide how agents are authorized, and how they relate</h1>
<p class="lede">
This map shows the specifications for agent authorization and the typed relations
Expand Down Expand Up @@ -180,7 +180,7 @@ const repo = "https://github.com/letsauthlab/letsauth";
<p class="page-foot__links">
<a href="/standards/data.json">Download the map as JSON</a>
<a href={`${repo}/tree/main/data`} rel="noopener">Browse the data</a>
<a href="/mcp/">MCP auth atlas</a>
<a href="/mcp/">Servers</a>
</p>
</footer>
</div>
Expand Down
Binary file modified tests/e2e/__screenshots__/explorer.spec.ts/scenario-phone.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified tests/e2e/__screenshots__/feature-page.spec.ts/feature-phone.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified tests/e2e/__screenshots__/spec-page.spec.ts/spec-phone.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion tests/e2e/foundation.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,7 @@ test.describe("foundation pages", () => {
const current = page
.getByRole("navigation", { name: "Primary" })
.locator('a[aria-current="page"]');
await expect(current).toHaveText("Breach anatomy");
await expect(current).toHaveText("Breaches");
await expect(current).toBeInViewport({ ratio: 1 });
expect(await current.evaluate((el) => getComputedStyle(el).borderBottomWidth)).toBe("2px");
});
Expand Down
Loading