{{html clean="false"}}

Contributors

Contributors' dashboard.

For the members of XWiki.StarshipContributors and the administrator. Ask Captain Bob to be added.

How we work

The Captain Bob method.

Neither agile nor waterfall: one process from the developer's desk to master.

1

Found

An issue says what is wrong or missing, with the evidence: a log, a line of code.

2

Ruled

Captain Bob decides what is to be done. Nothing is built without a ruling, and no fix nobody asked for.

3

Built

On the working branch, StarForth-v4.0.0. C99, no GNU extensions; compose in FORTH before adding a C word.

4

Verified

The acceptance protocol, below; its logs are committed under logs/.

5

Merged

A pull request into master, which runs acceptance by itself. master takes nothing else.

The acceptance protocol

In this order, one QEMU at a time, in the foreground.

make -f kernel/Makefile ARCH=amd64   clean qemu
make -f kernel/Makefile ARCH=aarch64 clean qemu
make -f kernel/Makefile ARCH=riscv64 clean qemu
make -f kernel/Makefile ARCH=amd64   clean qemu-stick-high
make -C v4 test-32

Each boot reaches [zuse@Hera] ok> with POST: PASSED and every POST check passing, and the three architectures report the same dict_hash. make ARCH=amd64,aarch64,riscv64 init installs everything this needs.

Acceptance -- the gate on every PR into masteracceptance.yml status runs
Build -- the quick check on StarForth-v4.0.0build.yml status runs
Nightly -- acceptance, images to Nexus, proofs (03:00 UTC)nightly.yml status runs

Reference

Where things are, and what not to do.

Where things are

start here

  • The repository — README.md, docs/README.md; the design record is docs/fabric/FABRIC-3.md
  • New issue — the forms: bug, work, ruling, board
  • Open features and bugs
  • Board bring-up — boards/BRINGUP.md
  • Before touching a capsule: read experiments/bare_metal/README.md — the block ranges are shared by every capsule

Rules that bite

learned the hard way

  • No new branch, no git stash, without Captain Bob's say-so.
  • Never modify a registered, tested FORTH word to fix it: the problem is in the caller.
  • ACL policy lives in ACL.4th, not in C.
  • Tags are sacred: each has the logs proving its state.
{{/html}}