Skip to content

ci(docs) Update the docs pages and builds - #96

Merged
tony merged 1 commit into
masterfrom
docs-publisher-30af469ec
Nov 10, 2026
Merged

tony merged 1 commit into
masterfrom
docs-publisher-30af469ec

Conversation

@tony

@tony tony commented Nov 10, 2026

Copy link
Copy Markdown
Contributor

Pin only the shared port builder and publisher to 30af469ec547f55bd6121fdd7bcd1259928f81b0 from c5b56f2b90002281adb95616a3e523e0a192937c. All other workflow bytes, library contents, triggers, permissions and language/source/version inputs remain unchanged.

  • Draw the Core player on the server at the frame its script first shows, the tmux before the first call, with its controls bar in place at its first count, so binding the script moves nothing; a reader with no script, and one who asked for less motion until the script binds, see the finished frame (CorePlayer.astro, ReplayControls.astro, core-player.css)
  • Drop the Core player's info button, its popover and its no-script note on how the run was recorded; the controls bar keeps its other buttons (CorePlayer.astro, ReplayControls.astro)
  • Drop the "Library revision" line from an example's setup details and the "Generated from the source" line under the API pages that had one (HomeExample.astro, [...slug].astro)
  • Put the Core player's Error handling and Cleanup toggles in a toolbar row at the bottom of its code panel, below the code and outside the part that scrolls, where they sat in a row above it, so toggling moves no edge of the player; and let the step dots of its controls bar scroll inside a rail with a button at each end to page them, where they were spread across the bar and crowded on a tight one (HomeExample.astro, core-player.css, ReplayControls.astro, replay-player.ts, mcp-replay.css)
  • Draw the badges of the staged source guides on the site, from data the build holds (a version badge from the registry, the LuaRocks, Hex and Maven Central ones included, a static badge from its own text), as SVG files served from the site's own origin, where each was an image fetched from img.shields.io on every page view; a GitHub Actions status badge, whose value is a live result the build cannot know, is dropped with its link (badges.mjs, stage-port-docs.mjs, rehype-site-root.mjs)
  • Keep the API reference sidebar and the sticky member bars at their height when an on-screen keyboard opens, where Chrome on iOS shrank the window under it and the sidebar and the bars shrank with it: while a field has focus the pages measure the tallest height seen at this width (stable-viewport.ts, api-tree.ts, ApiPageContents.astro)
  • List OCaml among the ports of the site: in the port picker of the site header and in the Compiled & native group of the ports list; OCaml's own pages are published by its own repository, not by this caller (shell.js, ports.ts, port-families.ts)
  • List Haskell among the ports of the site: in the port picker of the site header and in the Compiled & native group of the ports list; Haskell's own pages are published by its own repository, not by this caller (shell.js, ports.ts, port-families.ts)
  • List Perl among the ports of the site: in the port picker of the site header and in the Scripting & web group of the ports list; Perl's own pages are published by its own repository, not by this caller (shell.js, ports.ts, port-families.ts)
  • Pin the port build's GitHub actions to commits of the releases it used by tag (checkout v7.0.1, setup-node v7, pnpm/action-setup v6), and have the build ask the registry whether a port excludes MCP before it generates MCP data, which no existing port does (port-docs.yml, build-site.sh)
  • List Clojure among the ports of the site: in the port picker of the site header and in the JVM group of the ports list; Clojure's own pages are published by its own repository, not by this caller (shell.js, ports.ts, port-families.ts)
  • List Common Lisp among the ports of the site: in the port picker of the site header and in the Compiled & native group of the ports list; Common Lisp's own pages are published by its own repository, not by this caller (shell.js, ports.ts, port-families.ts)
  • List Erlang among the ports of the site: in the port picker of the site header and in the BEAM group of the ports list; Erlang's own pages are published by its own repository, not by this caller (shell.js, ports.ts, port-families.ts)
  • Drop the link at the end of the port's landing page back to the port root, whose address redirects to the landing page the reader is on (index.astro)

On a cold load the Core player was drawn at its last call and the script reset it to the first a moment later, and the controls bar appeared and pushed the player down, so the page jumped. Pages told a reader how they were made (the revision, sandbox and generator of a recording, a library revision under an example, a generator under an API page), which belongs in the commit that refreshed the data. The Core player's Error handling and Cleanup toggles took a row of their own above the code, and its step dots were spread across the controls bar, so on a tight bar a long program's dots crowded until a finger could not tell them apart. The badges of the source guides were images hotlinked from img.shields.io and GitHub Actions, so every reader's browser waited on a third party for them. Chrome on iOS shrinks the window height under the on-screen keyboard, so the API reference sidebar and the sticky member bars shrank when a reader focused the search field. The site header's port picker and the ports list offered only the ports that had documentation before OCaml, Haskell, Perl, Clojure, Common Lisp and Erlang. The port build ran GitHub actions by floating tag, so a retagged release would have changed what builds this port's pages. The landing page ended with "All versions and install instructions", a link to the port root, which redirects back to the page the reader was on.

The exact required CI and root merge receipts of the shared checkpoint must be verified before this operator runs. This PR does not claim an owner build or publication pass. Root reviews this exact caller diff, actual repository-required checks and reviews before merge; optional native estate checks are not a new universal gate.

Execution route: controlled_real_pin_merge_push. Root separately schedules reviewed merges and exact source requests from the actual workflow state. If the current active workflow already publishes the intended source on merge, retain that actual event and do not issue a duplicate request. Future source/native/run identities will be bound to actual events.

why: On a cold load the Core player was drawn at its last call and the
script reset it to the first a moment later, and the controls bar
appeared and pushed the player down, so the page jumped. Pages told a
reader how they were made (the revision, sandbox and generator of a
recording, a library revision under an example, a generator under an API
page), which belongs in the commit that refreshed the data. The Core
player's Error handling and Cleanup toggles took a row of their own
above the code, and its step dots were spread across the controls bar,
so on a tight bar a long program's dots crowded until a finger could not
tell them apart. The badges of the source guides were images hotlinked
from img.shields.io and GitHub Actions, so every reader's browser waited
on a third party for them. Chrome on iOS shrinks the window height under
the on-screen keyboard, so the API reference sidebar and the sticky
member bars shrank when a reader focused the search field. The site
header's port picker and the ports list offered only the ports that had
documentation before OCaml, Haskell, Perl, Clojure, Common Lisp and
Erlang. The port build ran GitHub actions by floating tag, so a retagged
release would have changed what builds this port's pages. The landing
page ended with "All versions and install instructions", a link to the
port root, which redirects back to the page the reader was on.

what:
- Draw the Core player on the server at the frame its script first
  shows, the tmux before the first call, with its controls bar in place
  at its first count, so binding the script moves nothing; a reader with
  no script, and one who asked for less motion until the script binds,
  see the finished frame (`CorePlayer.astro`, `ReplayControls.astro`,
  `core-player.css`)
- Drop the Core player's info button, its popover and its no-script note
  on how the run was recorded; the controls bar keeps its other buttons
  (`CorePlayer.astro`, `ReplayControls.astro`)
- Drop the "Library revision" line from an example's setup details and
  the "Generated from the source" line under the API pages that had one
  (`HomeExample.astro`, `[...slug].astro`)
- Put the Core player's Error handling and Cleanup toggles in a toolbar
  row at the bottom of its code panel, below the code and outside the
  part that scrolls, where they sat in a row above it, so toggling moves
  no edge of the player; and let the step dots of its controls bar
  scroll inside a rail with a button at each end to page them, where
  they were spread across the bar and crowded on a tight one
  (`HomeExample.astro`, `core-player.css`, `ReplayControls.astro`,
  `replay-player.ts`, `mcp-replay.css`)
- Draw the badges of the staged source guides on the site, from data the
  build holds (a version badge from the registry, the LuaRocks, Hex and
  Maven Central ones included, a static badge from its own text), as SVG
  files served from the site's own origin, where each was an image
  fetched from img.shields.io on every page view; a GitHub Actions
  status badge, whose value is a live result the build cannot know, is
  dropped with its link (`badges.mjs`, `stage-port-docs.mjs`,
  `rehype-site-root.mjs`)
- Keep the API reference sidebar and the sticky member bars at their
  height when an on-screen keyboard opens, where Chrome on iOS shrank
  the window under it and the sidebar and the bars shrank with it: while
  a field has focus the pages measure the tallest height seen at this
  width (`stable-viewport.ts`, `api-tree.ts`, `ApiPageContents.astro`)
- List OCaml among the ports of the site: in the port picker of the site
  header and in the Compiled & native group of the ports list; OCaml's
  own pages are published by its own repository, not by this caller
  (`shell.js`, `ports.ts`, `port-families.ts`)
- List Haskell among the ports of the site: in the port picker of the
  site header and in the Compiled & native group of the ports list;
  Haskell's own pages are published by its own repository, not by this
  caller (`shell.js`, `ports.ts`, `port-families.ts`)
- List Perl among the ports of the site: in the port picker of the site
  header and in the Scripting & web group of the ports list; Perl's own
  pages are published by its own repository, not by this caller
  (`shell.js`, `ports.ts`, `port-families.ts`)
- Pin the port build's GitHub actions to commits of the releases it used
  by tag (checkout v7.0.1, setup-node v7, pnpm/action-setup v6), and
  have the build ask the registry whether a port excludes MCP before it
  generates MCP data, which no existing port does (`port-docs.yml`,
  `build-site.sh`)
- List Clojure among the ports of the site: in the port picker of the
  site header and in the JVM group of the ports list; Clojure's own
  pages are published by its own repository, not by this caller
  (`shell.js`, `ports.ts`, `port-families.ts`)
- List Common Lisp among the ports of the site: in the port picker of
  the site header and in the Compiled & native group of the ports list;
  Common Lisp's own pages are published by its own repository, not by
  this caller (`shell.js`, `ports.ts`, `port-families.ts`)
- List Erlang among the ports of the site: in the port picker of the
  site header and in the BEAM group of the ports list; Erlang's own
  pages are published by its own repository, not by this caller
  (`shell.js`, `ports.ts`, `port-families.ts`)
- Drop the link at the end of the port's landing page back to the port
  root, whose address redirects to the landing page the reader is on
  (`index.astro`)

Shared source: libtmux/docs
From: c5b56f2b90002281adb95616a3e523e0a192937c
To:   30af469ec547f55bd6121fdd7bcd1259928f81b0
@tony
tony merged commit dc88f3d into master Nov 10, 2026
12 of 15 checks passed
@tony
tony deployed to docs-preview-cleanup November 10, 2026 08:34 — with GitHub Actions Active

This branch was successfully deployed

1 active and 1 inactive deployments
docs-preview-cleanup — 731cfa0b Deployed Nov 10, 2026 by tony via cleanup #73
docs-preview — 731cfa0b Deployed Nov 10, 2026 by tony via publish (pr-96, pr, false, docs-preview, true) / publish #347
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant