docs: a footer note on building with AI

The point is not a disclaimer, it is the argument: the tool is not the measure
of a project. Code nobody understands is bad code whoever typed it, and code
whose every decision can be explained is good code by the same standard.

Placed next to a link to history/ on purpose. That directory is where the
claim can be checked -- the bugs are written up in full, including the wrong
hypotheses and the measurements that killed them. An explanation you can
follow is the evidence; a byline is not.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VQ7Qx8E1q1M1bbCq8QLHS2
This commit is contained in:
Nexoniarz 2026-09-12 21:58:20 +02:00
commit b6450d866d
4 changed files with 48 additions and 0 deletions

View file

@ -41,6 +41,19 @@ python3 -m http.server 8000
Adding a document means adding one line to the `DOCS` array in `docs.js`. The Adding a document means adding one line to the `DOCS` array in `docs.js`. The
reader will only load a path that appears there. reader will only load a path that appears there.
## The two footer notes
Both pages carry two statements below the licence line, and both are meant to
be read rather than skimmed past.
The first is the flag, below. The second is about AI, and it says the thing
worth saying: the tool is not the measure. A project is good when the people
building it understand what was built. That claim is deliberately made next to
a link to `history/`, because that directory is where it can be checked — the
bugs are written up in full, including the wrong turns and the measurements
that disproved them. An explanation you can follow is the evidence; the byline
is not.
## The flag ## The flag
`Assets/pride.svg` is in the top bar and in the footer, on both pages, and it `Assets/pride.svg` is in the top bar and in the footer, on both pages, and it

View file

@ -55,6 +55,16 @@
Built by, and for, people of every orientation and gender identity. Built by, and for, people of every orientation and gender identity.
The flag stays up all year. The flag stays up all year.
</span> </span>
<span class="note" id="ai-note">
<b>On AI.</b>
Parts of SchOS were written with AI assistance, and that is not the measure
of anything. A project is good when the people building it understand what
was built, and bad when nobody does — whoever, or whatever, typed it. Vibe
your way through and you get something no one can fix. Stay in the loop and
you get a system you can explain line by line. The bug writeups in
<a href="?doc=history/kernel.md">history/</a> are where that gets
checked, including the wrong turns.
</span>
</div> </div>
</footer> </footer>

View file

@ -295,6 +295,16 @@
Built by, and for, people of every orientation and gender identity. Built by, and for, people of every orientation and gender identity.
The flag stays up all year. The flag stays up all year.
</span> </span>
<span class="note" id="ai-note">
<b>On AI.</b>
Parts of SchOS were written with AI assistance, and that is not the measure
of anything. A project is good when the people building it understand what
was built, and bad when nobody does — whoever, or whatever, typed it. Vibe
your way through and you get something no one can fix. Stay in the loop and
you get a system you can explain line by line. The bug writeups in
<a href="docs.html?doc=history/kernel.md">history/</a> are where that gets
checked, including the wrong turns.
</span>
</div> </div>
</footer> </footer>

View file

@ -576,3 +576,18 @@ body.reading footer { margin-top: auto; }
.top nav a.on { color: var(--fg); } .top nav a.on { color: var(--fg); }
.readerlink { margin-top: 2rem; } .readerlink { margin-top: 2rem; }
/* A footer note that is a paragraph rather than a credit line. Same width
discipline as body text: these are read, not scanned. */
footer .note {
flex-basis: 100%;
max-width: 54rem;
color: var(--dim);
font-size: 0.82rem;
line-height: 1.7;
}
footer .note b { color: var(--fg); font-weight: 700; }
footer .note a { color: var(--accent); }
/* The two notes sit below the identity line, not beside it. */
footer .wrap { row-gap: 1.5rem; }