Skip to content

basou: Name 04 merged, ask to keep board/ out of a public build, name a repo by its name in the commits line, and keep a table's notes in view on a narrow screen - #386

Merged
takashi-matsuyama merged 3 commits into
mainfrom
board/c1-fixes
Oct 23, 2026

Conversation

@takashi-matsuyama

Copy link
Copy Markdown
Member

From a report on a board made from scratch with basou board guide and init (board_version 3) in a workspace that is one repo, which is also what its public site is built from. Text and display only: no format, record or input changes.

What changes

  • 04 is merged, not production. The guide's rule for the stages said "04 (merged, in production)"; where a merge deploys at once, production is 05. It now says "04 (merged)", as the guide's other step, the English template and the reference do. board init's Japanese meaning of 04 is now the word for merged.
  • With no board declared, the guide asks to keep board/ out of a public build. Step 1 checked only who can read the repo on GitHub. When the repo is also what a public site or package is built from, it now asks too that board/ stays out of what is built and published (a generator that copies the repo's root publishes the records), and to ask the operator when that cannot be checked.
  • A milestone's date is a day in the board's time zone. The guide, init's comment and the reference say so, and that .basou/decisions.md dates a decision by its UTC day, which can be a day apart from a milestone that refs it.
  • A first record's triggers. The guide's axis line for a first record says its triggers are the letters axis.reasons gives, and a too when the components were registered for it (registering clears (a), but (a) led to the review).
  • The board page names a repo by its name in "Commits since the start", as the repos table does. A workspace that is one repo drew it as . 205. A repo with no name, or a record whose repos cannot be read, keeps the path.
  • Below 600px, a table's notes stay in view. An observation's notes row spans the table, which scrolls inside the page on a phone, so its right part was cut off. A scroll is now a size container there, and a note's list sticks to its left edge and is as wide as the scroll (100cqw; 100vw, which counts a page scrollbar too, stays only as the fallback for a browser without container units). The notes cell keeps no right padding, which a sticky element cannot cross.
  • Reference: **/ matches no directory too (src/**/*.ts matches src/a.ts); a regular expression in board.yaml is written in single quotes, since in double quotes YAML refuses "\d", and turns "\b" or "\t" into a control character, which a measure's pattern and a section's start and end take without a word and an http observation's patterns refuse.

Checked

  • pnpm build, pnpm typecheck, pnpm lint (the same 5 warnings and 1 info as main), pnpm lint:lang, pnpm lint:paths, pnpm test:scripts, pnpm test (core 2977 + 1 skipped, sdk 67, cli 1602): each exit 0.
  • Each new test fails on the code of main.
  • The notes in a headless browser, on a board with four observation notes, at 375, 599, 601, 800 and 1280px, with overlay scrollbars and with a 15px classic one:
    • At 375px main drew each note 516px wide in a 343px scroll (173px cut off; 188px past a 328px scroll with the classic scrollbar). This branch draws it as wide as the scroll (343px, or 328px), ending at its edge, and at its left edge (0px) scrolled to the end; at 599px likewise.
    • From 601px up, the notes are drawn as on main.
    • Every scroll on the page has the same width and content width as on main, at every width and with either scrollbar: the size container changes no other box.
  • A convergent review (one round) found four low findings, all fixed here: the classic scrollbar above, which patterns take a control character, the host's zone when a board declares none, and a repo at the path __proto__ in the commits line.
  • YAML: this project's parser refuses "\d", reads "\b" as a backspace, and reads '\d' and "\\d" as \d.

… a repo by its name in the commits line, and keep a table's notes in view on a narrow screen

- The guide's rule for the stages says 04 is merged, without "in
  production": where a merge deploys at once, production is 05. board init's
  Japanese meaning of 04 is now the word for merged, not for production.
- With no board declared, the guide's first step asks too that board/ stays
  out of what is built and published when this repo is also what a public
  site or package is built from, and to ask the operator when that cannot be
  checked: a generator that copies the repo's root publishes the records.
- The guide and board init's comment say a milestone's date is a day in the
  board's time zone, and that decisions.md dates a decision by its UTC day.
- The guide's axis line for a first record says its triggers name the
  letters axis.reasons gives, and "a" too when the components were
  registered for it.
- The board page's commits since the start names a repo by its name, as the
  repos table does: a workspace that is one repo drew it as ".".
- Below 600px, a table's notes stick to the left edge of its scroll and wrap
  at the width in view, so none is cut off on the right.
- The reference says "**/" matches no directory too, how to write a regular
  expression in board.yaml (single quotes, or every backslash doubled), and
  that a milestone's date is a day in the board's time zone.
… scroll

A sticky note moves only inside its cell, and the cell's right padding of
10px kept it that far short of the left edge when the table was scrolled to
its end. Below 600px the notes cell keeps no right padding. Measured in a
headless browser on a board with four observation notes: at 375px each note
is 343px wide, ends at the scroll's right edge, and stays at its left edge
(0px) scrolled to the end; at 800px and 1280px the notes are drawn as
before. The tests are formatted as biome prints them.
…'s zone dates a milestone, and say which patterns refuse a control character

- Below 600px a scroll is a size container, and a note's width is 100cqw:
  100vw counts a page scrollbar too, so where the browser draws one (15px in
  a headless browser at 375px) a note was that much wider than its scroll,
  cut off on the right and then on the left at the end. The note is now as
  wide as the scroll with either kind of scrollbar; 100vw stays as the
  fallback for a browser that knows no container units.
- The guide's milestone line says the board's time zone is effort.time_zone,
  or this host's when the board declares none, as the reference does.
- The reference says a control character a double-quoted "\b" or "\t" makes
  is taken without a word by a measure's pattern and a section's start and
  end, and refused by an http observation's patterns.
- The commits line keeps a repo at the path __proto__ as a key of its own.
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