Skip to content

hiiu decisions

Propose the answers analysis cannot compute, or check an existing decisions document against the repo and refuse a contradiction.

hiiu decisions [path]
hiiu decisions --decisions <file> [path]

Some things are not in the repository at any depth: which app in the monorepo, who the persona is, which routes matter enough that a denied request on one should fail a build. This command handles those.

It has two jobs, and the flag picks which.

Arguments and flags

[path] The repo or app directory to decide about. Default .
--decisions <file> Check this decisions document against the repo instead of proposing one

Every global flag also applies.

Proposing

With no flag it proposes, and that verb is the whole point. A proposal is not a confirmation: it is a well-informed starting position that a human is expected to read and change. Nothing is written anywhere.

hiiu decisions ./apps/web

Checking

With --decisions <file> it does the opposite job: it reads a document you already have and checks it against the repository as it is now.

hiiu decisions --decisions ./decisions.json ./apps/web

A contradiction is exit 3, and the message names it. That is how a decisions file which was correct last quarter fails loudly when the repo moves under it, instead of quietly building the wrong app for a month.

Exit codes

Code When
0 Proposed, or checked and consistent
3 Not a supported frontend app, or the document contradicts the repo

Example

hiiu decisions --json | jq '.decisions'