]> git.giacomolli.uk - onehouse/log
onehouse
2 hours agoBuild typed MQTT publications
Anderson A. Giacomolli [Tue, 10 Nov 2026 20:52:01 +0000 (17:52 -0300)]
Build typed MQTT publications

Typed builders and parsers cover every wire operation, including ordered
command batches and expiring hub diagnostics. Publications carry their
delivery rules and command response metadata, so callers need no topic
or envelope construction. Strict closed payloads reject unsupported
fields while event objects keep complete application data.

Issue: 8fa2f25

3 hours agoCheck the width of comment lines
Anderson A. Giacomolli [Tue, 10 Nov 2026 20:49:21 +0000 (17:49 -0300)]
Check the width of comment lines

bin/check fails on a Go comment line over 80 columns, counted as
bin/reflow counts them, with tabs as 8 columns. gofumpt does not wrap
comments, and the line length linter would also count code lines, so a
long comment line passed every check.

3 hours agoDefine wire addresses and envelopes
Anderson A. Giacomolli [Tue, 10 Nov 2026 20:42:52 +0000 (17:42 -0300)]
Define wire addresses and envelopes

The protocol package validates versioned topics, message metadata, and
subscription filters. Canonical IDs and fixed publication intervals let
callers share one wire contract without a broker dependency. Tests use
testify, with its dependencies pinned in the Nix package.

Issue: 8fa2f25

5 hours agoAdd Nix-built Go program and agent rules
Anderson A. Giacomolli [Tue, 10 Nov 2026 18:36:03 +0000 (15:36 -0300)]
Add Nix-built Go program and agent rules

OneHouse starts as a program that prints its name, with the rules and
tools for all later work. The program gives the Nix package a binary
that the install check can run, so the build pipeline is tested before
the first feature.

The agent guide and its skills hold the rules for Go code,
documentation, checks, commits, and issues. The scripts in bin/ format
and check the repository with the tools from the pinned flake, and the
commit hook rejects a message that breaks the message rules.