Skip to content

G1: refactor(ruleset): move provisioning guidance into the compute requirements - #9

Closed
edmofro wants to merge 6 commits into
mainfrom
workhorse/g1-provisioning-hints
Closed

edmofro wants to merge 6 commits into
mainfrom
workhorse/g1-provisioning-hints

Conversation

@edmofro

@edmofro edmofro commented Sep 10, 2026

Copy link
Copy Markdown
Member

Follow-up to #7, which shipped the compute requirements section.

Two consequences in the client's action list restated server figures, and after
#7 sized those figures to the deployment the two disagreed. On a Tiny plan the
card said 2 cores / 16 GB / 480 GB while the action still said "start around
50 GB / 4 cores / 16 GB".

Both are guidance about the figures rather than work in their own right, so
they move to hints under the rows they qualify, and stop restating the numbers:

  • Virtual machines — "Aim for these figures; a virtual machine may sit
    slightly under if its host has room to grow. VM-level backups are
    recommended, and worth telling BES about for disaster planning."
  • Physical hardware — "Buy above these figures: physical hardware is hard
    to change later. Multiple disks or terabytes are not usually needed, though
    RAID helps redundancy."

Each shows only for the way of provisioning it describes; a deployment running
both kinds gets both. Retires the prov-virtualised and prov-baremetal rules.

To do that, a requirement hint can now be gated on the answers (NoteRow), the
same way the operating-system row already is, and hints are a list so a card can
carry several under one wash.

Wire change: TriggeredRequirement.note becomes notes: string[].

Verification

cargo test (70), clippy, cargo fmt --check, tsc -b, vite build, biome,
Playwright (5) — all green. Gating checked live for virtualised, baremetal and
both.

edmofro and others added 6 commits September 10, 2026 14:06
"Start the virtual machines small, and back them up" was an action in the
client's list that restated server figures, which now contradicted the sized
compute requirements. It is guidance about those figures, so it belongs under
them: requirement hints can now be gated on the answers, and the hint appears
only when the servers are virtual machines.

It no longer restates the figures it sits beneath, which is what made the two
disagree.
"Provision the physical servers generously up front" had the same problem as
its virtual-machine counterpart: an action restating figures that contradicted
the sized rows. Moved to a hint gated on physical servers, keeping the headroom
judgement and the RAID and multiple-disk guidance while dropping the figures.

A deployment running both kinds now gets both hints, which is what "Both"
means.
"It is fine to start smaller and grow into them" left it unclear whether the
figures were the target or the starting point. Say it outright: the figures are
a target rather than a day-one commitment, and name storage as the part that
can start smaller.

Read against the bare-metal hint, the pair now contrasts cleanly: grow into
these figures on a VM, buy above them on hardware.
Both hints were wordier than a hint should be, and the virtual-machine one did
not say that the figures are the recommendation. Lead with aiming for them, and
allow a VM to sit slightly under only where its host has room to grow.

The pair now reads as one contrast: aim for these on a VM, buy above them on
hardware.
"Buy above these figures" read as an instruction without saying why. State
what the figures are on hardware, and leave the buying decision to the reader:
a minimum, with more being wise to allow for growth.
@edmofro

edmofro commented Sep 11, 2026

Copy link
Copy Markdown
Member Author

Superseded by #8, which merged the identical commits into main as 64a2978.

Both branches carried the same work: workhorse/g1-2 (the card's own branch, merged via #8) and workhorse/g1-provisioning-hints (this one, pushed manually). I opened this PR not realising the card branch was being pushed and merged in parallel.

Verified redundant by content rather than by commit list: every file this branch touches is byte-identical to main, including ruleset.ron, the NoteRow engine changes, and the final "These figures are a minimum" wording. The only remaining diff is unrelated .agents/ skill-doc churn from the D1 framework update that landed on main after this branch forked.

Closing and deleting the branch.

@edmofro edmofro closed this Sep 11, 2026
@edmofro
edmofro deleted the workhorse/g1-provisioning-hints branch September 11, 2026 05:23
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