Skip to content

tooling: opinion lint tier on; the workspace documented#142

Merged
johncarmack1984 merged 1 commit into
mainfrom
tooling/opinion-lints
Jul 7, 2026
Merged

tooling: opinion lint tier on; the workspace documented#142
johncarmack1984 merged 1 commit into
mainfrom
tooling/opinion-lints

Conversation

@johncarmack1984

Copy link
Copy Markdown
Member

The big one from the deferred ledger, done for content:

Lints: clippy::unwrap_used/panic/todo + missing_docs join the workspace floor, enforced by CI's -D warnings.

27 production unwraps eliminated for real -- the desktop data layer's conn/auth locks route through poison-recovering helpers (a panicked holder's transaction has already rolled back; the session slot is plain data), the server's rate-limit bucket map likewise, the three now_ms twins expect with the clock-before-1970 reason, and the dev tools stop panicking on empty stats/unreadable files. 143 test-module unwraps carry the test-idiom allow.

338 doc comments, written for content, none filler: vegify-core's domain model (per-100 g conventions, canonical grams, slug scopes, keyset paging), the api wire types (these flow into the generated TypeScript via specta -- bindings regenerate in this diff, +409 lines of TS docs), the client SDK, the desktop ttipc surface (per-command), the admin tool, config modules.

Full just check green; just bindings byte-stable on a second regen.

clippy::unwrap_used/panic/todo + missing_docs join the workspace lint
floor (CI's -D warnings enforces them).

Production unwraps (27) are gone for real: the desktop data layer's
conn/auth locks route through poison-recovering helpers (a panicked
holder's transaction has already rolled back; the session slot holds
plain data), the server's rate-limit bucket map does the same, the
three now_ms twins expect with the clock-before-1970 reason, and the
dev tools stop panicking on empty stats or unreadable files. The 143
test-module unwraps carry the test-idiom allow.

Every public item is now documented -- 338 doc comments across
vegify-core (the domain model: per-100 g conventions, canonical
grams, slug scopes, keyset paging), the api wire types (these flow
into the generated TypeScript via specta, so bindings regenerate in
this commit), the client SDK, the desktop data surface (the ttipc
trait, per-command), the admin tool, and the config modules.
@johncarmack1984 johncarmack1984 merged commit 4044b68 into main Jul 7, 2026
8 checks passed
@johncarmack1984 johncarmack1984 deleted the tooling/opinion-lints branch July 7, 2026 06:51
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