Tags give the ability to mark specific points in history as being important
-
v0.6.0
protectedRelease: @dunn.dev/reference v0.6.04b2f0976 · ·@dunn.dev/reference v0.6.0 A minor. The published chrome changes under every site that imports it: the figure box, the light warning colour, and the web-starter template. The reference-check component reads the contracts from main by default. Every consumer ran against main and this release before the tag, and none turned red. The figure box hugs the figure. .cat-explainer is as wide as its drawing, with 8px of padding and clear: both, and the diagrams leaf states the 660 canvas the estate draws on. A diagram of one concept grows taller and stays one figure. A pair is for two mechanisms. The light warning colour reads as text. --warning in the light theme is #a0602f, which clears 4.5:1 on the surface colour. The dark theme is unchanged. The standards are contracts. Each standard's SKILL.md is a CONTRACT.md that says why each assertion exists, how to satisfy it, and which deviations it expects. The list of what a standard checks is generated from its check.sh, so the page and the check agree. Procedure moved to the skills that act on it. A contract says when it applies. design-system governs a repo that renders a web surface: an Astro config, a global.css or site.css, or an index.html. A bootc image repo reads N/A with no deviation to keep. container-publishing, package-publishing and image-cleanup declare applicability the same way, and a Rust crate is a publisher only when its pipeline publishes. Pipeline accepts the cairn and immutable catalogs. An include of gitlab.com/dunn.dev/cairn/pipeline or immutable/pipeline pinned to a bare major passes, and the @latest and @main bans cover both catalogs. Checks read live lines. A commented-out include does not satisfy a check, and a comment that mentions @latest does not fail one. container-publishing finds a Dockerfile as well as a Containerfile. A waiver names one rule. When a contract checks the same file twice, the second rule carries its own id: file-lacks:.gitlab-ci.yml:main for pipeline's @main ban, file-contains:.gitlab-ci.yml:release-create for package-publishing's release. A deviation that names the bare id waives the first rule only. The guard fails a check.sh that repeats a path without a distinct id. The contracts match the catalog. The pipeline component table lists what the catalog ships. Renovate config extends the estate preset. package-publishing carries a Rust composition, container-publishing names the bootc signing invariants and the job that enforces them, and the consumer example pins reference_ref to main. Installing the package locally needs no token, because the registry serves anonymous reads. The site checks its own routes. llms.txt routes by task, each route says when the task is done, and the page catalogue stays. Principles are one page with an anchor each, and the old leaf URLs redirect. The diagram specimens live on a gallery page. A route or relative link that resolves to nothing fails the build, and _lib.sh and the repository scripts are served beside the check.sh files that source them, so a fetched check.sh runs. Pages carry canonical and social preview tags, the mark specimens have accessible names, and text responses declare utf-8. web-starter builds. The template pins the TypeScript major @astrojs/check supports, and a pipeline job installs and builds it on every change. tokens/colors.json no longer ships. Its export went in v0.5.0 and nothing reads it.
-
v0.5.0
protectedRelease: @dunn.dev/reference v0.5.08d2f110b · ·@dunn.dev/reference v0.5.0 A minor because the published chrome moves under every consumer, and because six export subpaths are gone. Sites pick both up on their own bump: a caret range on a 0.x version pins the minor. One prose measure, and .page tables styled. .page-lede and .section-prose cap at a 40rem measure, so body text stops running the full width of a wide window. .page tables take the estate's rules. Code wraps, and .page pre scrolls inside itself instead of pushing the page sideways, which is what put six pages into horizontal overflow at 390px. .cat-explainer ships in site.css. The design-system contract prescribed three container rules for inline-SVG diagrams and then asked every site to keep its own copy in the [slug].astro layout. They are published chrome now. Tokens-only sites keep the local block: tutti does not import site.css, because its own chrome collides with the canonical class names. llms.txt routes, llms-full.txt is retired. The agent surface was a 113KB dump with no reader found for it. llms.txt is a routing spine now, pointing at each page's index.md and at each standard's check.sh and templates. The page list is derived from the nav, so a page can no longer 404 on its own index.md. Diagram rules, adopted and attributed. Connector, node-treatment and type-ramp rules are adapted from cathrynlavery/diagram-design (MIT, Cathryn Lavery) at commit 4451ead, restated for the estate's 720-wide inline SVGs. The design/diagrams page carries the attribution and the licence. Forty-four drawn specimens. One for each type in that typology, a consultant variant of the quadrant, and the estate's own originals. Each is an SVG file rather than markup inlined in the page. The gallery groups them and states the editorial rules that keep an inline SVG legible. Six exports removed. Breaking. ./tokens/colors.css, ./tokens/typography.css, ./tokens/spacing.css, ./tokens/motion.css, ./tokens/colors.json, and ./tokens/typography.md, whose target has never been in git. Each measured at zero importers across every repo in the namespace that declares the dependency. The four token files still ship, because tokens/index.css imports them by relative path. What is gone is the promise that a consumer may reach past index.css and name one directly. The plugin manifests are gone. .claude-plugin/plugin.json and marketplace.json described a plugin that did not exist, and the Start page they pointed at went with them.
-
v0.4.2
protectedRelease: @dunn.dev/reference v0.4.20c190830 · ·@dunn.dev/reference v0.4.2 Fixes the journal treatment's palette. Both changes are confined to journal/journal-base.css; tokens/, mark/, site.css and the repository templates are untouched. Pin the complete semantic token set on body.journal. The journal is a light-only treatment, but it re-pinned only twelve tokens. tokens/colors.css declares dark values on :root, so every semantic token the block left unpinned inherited its DARK value down into body.journal while --bg stayed cream — dark status colours, near-black input chrome and cold grey borders on warm paper for any visitor whose system is set to dark. Fourteen tokens were diverging: --nav-bg, --border-strong, --callout-warning/tip/todo, --danger(+subtle), --success(+subtle), --warning(+subtle), --input-bg/border/focus. Verified in a browser under emulated system-dark, before and after. Raise --text-muted to AA, and floor muted type at 0.68rem. --text-muted carries eyebrows, stat labels, captions and pagenav — body-sized text and smaller. #8a7660 measured 4.03:1 on --bg and 3.61:1 on --surface, below the 4.5:1 threshold on both grounds. Now #7a6650: 5.07:1 and 4.55:1, same hue and chroma, one step darker. .wt-stat-label goes 0.62rem to 0.68rem; AA at ~10px uppercase mono is still hostile reading, so the colour and the size floor work together. Consumer impact: journal consumers (works, cycle) will see all muted text darken one step and stat labels grow slightly. Non-journal consumers are unaffected — nothing they import changed.
-
v0.4.1
protectedRelease: @dunn.dev/reference v0.4.14a581292 · ·v0.4.1 Same content as v0.4.0, released through a working pipeline. v0.4.0 published @dunn.dev/reference@0.4.0 to the registry and then failed at cosign, so it carries no signature, SBOM, attestation or Release page. Fixed in dunn.dev/pipeline 4.4.1: node-publish now signs to a Sigstore bundle rather than the sig+cert pair cosign 3.x rejects. Carries the 16-24px mark badge tier, the terminal-glyph recipe, checkable catalog-design principles, make check honouring .deviations.yaml, and the jq -er conflation fixes.
-
v0.4.0
protectedf5519de5 · ·v0.4.0 New: mark/mark-badge{,-light,-dark}.svg, a 16-24px tier. The tiers stopped at mark-medium (48-64px), so anything smaller reached for a display-size asset and rendered as a hairline: the r2.5 vertex rings are sub-pixel below ~28px. Geometry is mark.svg verbatim; only weight, node treatment and a 0.2 duotone fill differ. Also: terminal-glyph recipe, checkable catalog-design principles, make check honouring .deviations.yaml, and jq -er conflation fixes in check_gitlab_setting and check_json_key. -
v0.3.0
protectedRelease: @dunn.dev/reference v0.3.06fc4b073 · ·v0.3.0 — promote converged estate site chrome into site.css CTA button pair, 2-col tile card grid + install list, paper-card diagram frame, hero tagline; --text-md token. Estate sites consume this instead of vendoring forks. Additive, non-breaking.
-
0.2.0
protectedRelease: @dunn.dev/reference 0.2.0861a87ae · ·0.2.0 Three new standards + CI uplift to dunn.dev/pipeline 2.3.0: - container-publishing: Containerfile FROM uses ci-runtime-go|node catalog base; .gitlab-ci.yml uses container-image@X.Y.Z catalog include. - package-publishing: any publish-shaped CI also includes slsa-attest + release-create. - image-cleanup: container_expiration_policy.enabled at project level. Reference's own CI now publishes @dunn.dev/reference via catalog node-publish + node-sbom + slsa-attest + release-create. Tarball cosign sign-blob; SBOM + SLSA v1.0 attest attach to the GitLab Release.
-
0.1.0
protectedc6019795 · ·0.1.0 — initial publish First release of @dunn.dev/reference. Folds in everything design.dunn.dev used to publish (tokens, chrome, mark, journal) plus reference's own contracts (repository, pipeline, design-system) and their templates. Exports map: tokens/index.css, colors.css, typography.css, spacing.css, motion.css tokens/colors.json, typography.md site.css, mark/*, journal/{JournalRail.astro, journal-base.css, types} repository/templates/* Consumers in the dunn.dev group can install via the project's GitLab npm registry. CI_JOB_TOKEN handles auth within the group; locally, configure .npmrc with a personal access token.