Skip to content

docs: llms.txt per kanon doc standards (closes #10) - #11

Merged
forkwright merged 1 commit into
mainfrom
docs/issue-10
Apr 19, 2026
Merged

docs: llms.txt per kanon doc standards (closes #10)#11
forkwright merged 1 commit into
mainfrom
docs/issue-10

Conversation

@forkwright

Copy link
Copy Markdown
Owner

Summary

Adds llms.txt at repo root per kanon REPO-SETUP (small workspace: required) and AGENT-DOCS (llms.txt template).

  • 55 lines, single-sentence description blockquote, H2 sections for architecture, agent entry points, standards, planning, commands, scope, license
  • Points to canonical sources (kanon forge for roadmap, kanon standards for rules) rather than duplicating them
  • Passes kanon lint with zero violations

Closes#10

Test plan

  • kanon lint llms.txt --summary clean
  • Line count within AGENT-DOCS llms.txt guidance
  • Links to existing paths/URLs only (no dead links to unscaffolded histos/hamma-derp crates - flagged as "not yet scaffolded" text, no link)

@forkwright

Copy link
Copy Markdown
OwnerAuthor

Skipped auto-merge: cargo-deny failure (real CI, not just gate-attestation). Needs investigation.

@forkwright
forkwright merged commit 0221ade into mainApr 19, 2026
8 of 9 checks passed
@forkwright
forkwright deleted the docs/issue-10 branch April 19, 2026 04:02
forkwright pushed a commit that referenced this pull request May 9, 2026
…026-05-08 audit) (#11)
Manually merged via local validation (bypass of kanon CI gate). All
gates verified locally: fmt + check + clippy + kanon lint (PR-scoped).
Admin-Bypass: security cleanup
forkwright added a commit that referenced this pull request May 29, 2026
Co-authored-by: Cody Kickertz <cody@forkwright.com>
forkwright pushed a commit that referenced this pull request May 29, 2026
…026-05-08 audit) (#11)
Manually merged via local validation (bypass of kanon CI gate). All
gates verified locally: fmt + check + clippy + kanon lint (PR-scoped).
Admin-Bypass: security cleanup
@github-actionsgithub-actionsBot mentioned this pull request Jul 16, 2026
forkwright pushed a commit that referenced this pull request Jul 28, 2026
🤖 I have created a release *beep* *boop*
---
<details><summary>0.2.0</summary>
## [0.2.0](v0.1.0...v0.2.0)
(2026-07-28)
### Features
* **_llm:** add T0 corpus per
[#667](https://github.com/forkwright/hamma/issues/667) /
[#673](https://github.com/forkwright/hamma/issues/673) fleet rollout
([#10](#10))
([0568f51](0568f51))
* **control:** instrument async control client entry points
([#37](#37))
([e80622f](e80622f)),
closes [#20](#20)
* **control:** support zstd map responses
([dd5ab90](dd5ab90))
* **dictyon:** add TCP/TLS connection, registration, and map streaming
([a311d8a](a311d8a))
* **dictyon:** control protocol types and map response parser
([dfc25c7](dfc25c7))
* **dictyon:** migrate tracing init to koinon
([e5a4260](e5a4260))
* **dictyon:** Noise IK handshake, key types, HTTP transport skeleton
([aafea4f](aafea4f))
* **dictyon:** trace wire noise transport phases
([#38](#38))
([2d80231](2d80231)),
closes [#20](#20)
### Bug Fixes
* **cargo:** track lockfile for pinned rust toolchain
([#30](#30))
([e6a2f01](e6a2f01)),
closes [#29](#29)
* **ci:** resolve cargo-deny + MSRV + binary smoke failures
([#13](#13))
([9bb4533](9bb4533))
* **ci:** waive gate attestation by PR author, not by github.actor
([#69](#69))
([764422e](764422e)),
closes [#68](#68)
* **control:** accept node id peer removals
([7debc6b](7debc6b))
* **control:** apply peer patch map deltas
([#33](#33))
([dfc3731](dfc3731))
* **core:** parse peer patch map fields
([0686a66](0686a66))
* **deps:** clear RUSTSEC-2026-0190 via anyhow lockfile bump
([#56](#56))
([2423485](2423485))
* **lint:** add non_exhaustive to public error enums, mark public-key
fields
([0355297](0355297))
* **lint:** mechanical wins — allow→expect, indexing/slicing, casts,
http→https
([9e339db](9e339db))
* **lint:** resolve clippy warnings in hamma-core and wire integration
test ([#42](#42))
([079ad5e](079ad5e))
* **lint:** suppress pub-visibility for library API surface
([6d54674](6d54674))
* **lint:** unblock kanon gate
([f93ff63](f93ff63))
* **release:** bump the internal hamma-core pin and Cargo.lock with the
release ([#71](#71))
([dfdfc35](dfdfc35)),
closes [#70](#70)
* resolve 1 lint violations via local
([#8](#8))
([0d4aa84](0d4aa84))
### Refactoring
* **dictyon:** replace expect with ? and rename test helper
([#9](#9))
([655b783](655b783))
* **lint:** split oversized modules; add hamma-core integration tests
([fa8f54f](fa8f54f))
* rename plegma→hamma, plegma-core→hamma-core
([a67f792](a67f792))
### Documentation
* add CLAUDE.md precedence preamble
(forge[#153](https://github.com/forkwright/hamma/issues/153))
([e91ebea](e91ebea))
* add CONTRIBUTING.md for 05e cutover
([#1](#1))
([9dd5f87](9dd5f87))
* add llms.txt per kanon doc standards (refs
[#10](#10))
([#11](#11))
([e869fe1](e869fe1))
* **agents:** add AGENTS.md per fleet repo-structure standard
([#40](#40))
([0382da1](0382da1))
* **hamma:** align pre-alpha status
([#6](#6))
([873a6c3](873a6c3))
* **hamma:** replace standards copy with kanon pointer
([#8](#8))
([324ff18](324ff18))
* sanitize local bootstrap docs
([4c57d40](4c57d40))
* **standards:** add canonical standards from kanon
([#1](#1))
([81e5007](81e5007))
</details>
---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
forkwright added a commit that referenced this pull request Aug 16, 2026
## Finding
`.github/workflows/ci.yml` scoped its `pull_request` trigger to
`branches: [main]`. That filter
matches the pull request's **base**, so a PR opened against any branch
other than `main` matched
nothing and **no CI run was ever created for it**.
That is not a pending check or a slow check. It is an absent one — which
renders as a PR with a calm
status area and nothing red on it, indistinguishable from a PR whose
checks all passed.
## Evidence
Two PRs shipped unverified through this in a single session:
- **`epistole` #98** — the Phase 2 SMTP send path, stacked on #97. Zero
CI runs for its entire life.
Its body asserted idempotency behaviour that no independent witness had
ever executed.
- **`pinax` #11** — 3,510 lines of pager, buffer pool and B+tree,
stacked on #10. Also zero CI. Once
rebased onto `main` and gated for the first time it produced **42
compile errors**. It had never
been compiled anywhere, by anything, and it sat open looking mergeable.
`heurema` already carries the unfiltered form, so this is not a new
convention — it is bringing this
repo to a shape the fleet already proves out.
## Why this matters
The filter withdraws verification from exactly the case that needs it
most: a dependent change
written against a contract that has not merged yet. Stacked PRs are the
shape the fleet's process
produces whenever one unit depends on another, so this silently
un-verifies the work most likely to
be built on an assumption.
It is also a live instance of `PHILOSOPHY.md` § *an instrument must be
able to be wrong*: a check
that cannot run teaches every reader to skim past its absence.
## Desired correction
Drop the `branches` filter from `pull_request` only. `push: branches:
[main]` is unchanged — that one
is correct, and is what prevents duplicate runs.
```yaml
on:
pull_request:
push:
branches: [main]
```
The class fix — a `basanos` rule so the next repo cannot inherit this —
is tracked at
forkwright/kanon#3475.
**Done when:** a PR whose base is not `main` produces an actual CI run
in this repo.
Refs forkwright/kanon#3475
Co-authored-by: forkwright <cody@forkwright.com>
Sign up for freeto 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.

docs: add llms.txt per kanon doc standards

1 participant

@forkwright