mokhtar
22abcd9b7b
release: nix flake with tag-pinned hashes, reproducible tarballs (milestone 40)
...
flake.nix fetches the release tarballs and carries their SRI hashes in a generated block. The cut tool builds the release locally with the toolchain gates.yml pins, in a normalized nine-variable environment, writes the hashes into flake.nix, and commits it with build.zig.zon as the single bump commit. The package job verifies the pins on the bump commit and the publish job verifies them again on the tag, before anything is uploaded.
The tarballs are written by dist_stage (std.tar.Writer, flate gzip) instead of the runner's tar and gzip, and -ffile-prefix-map keeps checkout paths out of the C objects; two checkouts at different absolute paths produce byte-identical archives. nxdns version, /api/version and the admin footer report the version only: the bump commit cannot know its own sha.
2026-09-08 21:45:22 +02:00
mokhtar
272655f60c
storage: version querylog.db and migrate it in place, never reset a healthy file
...
querylog.db carries a schema version; migrations run at startup as one transaction after a vacuumed 0600 backup, and every failure refuses startup (exit 2, no systemd restart loop) instead of starting empty. corruption is the only automatic recreate left. the cut gate now requires a fixture-proven migration or an explicit versioned break with restore instructions, and locks shipped migration files and fixtures byte-for-byte.
2026-08-28 17:56:19 +02:00
mokhtar
c8470724ce
overview: one endpoint, live projections and a response cache (m36)
2026-08-27 17:48:20 +02:00
mokhtar
c99a37d170
milestone 31: concurrent upstream exchanges, dot session reuse, queue metrics
2026-08-22 19:54:02 +02:00
mokhtar
623667e475
milestone 30: overview as a dashboard, explicit health contract, period aggregations
2026-08-22 16:45:15 +02:00
mokhtar
addf24f92c
query log batching: one transaction per flush interval, not per query
Gates / frontend (push) Successful in 1m18s
Gates / test (push) Successful in 2m46s
Gates / test-aarch64 (push) Successful in 7m33s
Gates / package (push) Successful in 5m34s
Gates / container (push) Successful in 17s
CI / gates (push) Successful in 16m16s
Gates / frontend (push) Successful in 1m8s
Gates / container (push) Successful in 9s
Release / gates (push) Successful in 9m15s
Release / guard (push) Successful in 19s
Gates / test (push) Successful in 1m34s
Gates / test-aarch64 (push) Successful in 6m46s
Gates / package (push) Successful in 39s
Release / publish (push) Failing after 4m7s
2026-08-20 20:57:11 +02:00
mokhtar
037f209179
milestone 27: diagnostics — operational failures land in one curated log, resolved history purgeable
Gates / frontend (push) Successful in 1m33s
Gates / test (push) Successful in 1m48s
Gates / test-aarch64 (push) Successful in 7m10s
Gates / package (push) Successful in 5m31s
Gates / container (push) Successful in 15s
CI / gates (push) Successful in 14m51s
2026-08-20 20:05:59 +02:00
mokhtar
e0a7cd8a6b
milestone 26: upstream health answers for the selected period
2026-08-17 18:21:56 +02:00
mokhtar
1e97c80f6b
rename web/ to admin/, along with the web-named build and cli identifiers
2026-08-16 00:17:58 +02:00
mokhtar
5b3d1cd65c
docs: unwrap hand-wrapped prose repo-wide
Gates / frontend (push) Successful in 1m2s
Gates / test (push) Successful in 1m38s
Gates / package (push) Successful in 5m5s
Gates / test-aarch64 (push) Successful in 6m30s
Gates / container (push) Successful in 15s
CI / gates (push) Successful in 13m30s
2026-08-15 16:27:36 +02:00
mokhtar
3c794b645b
milestone 25: client names learned over reverse dns
Gates / test (push) Successful in 2m58s
Gates / frontend (push) Successful in 3m57s
Gates / test-aarch64 (push) Successful in 8m20s
Gates / package (push) Successful in 7m27s
Gates / container (push) Successful in 17s
CI / gates (push) Successful in 19m9s
2026-08-15 11:18:44 +02:00
mokhtar
21c5ce1f36
filter: separate the compiled bodies in the checksum, a name moving between them was invisible
2026-08-14 02:09:25 +02:00
mokhtar
1bce81eea0
milestone 24: persist and surface the unsupported-line count
2026-08-13 20:44:27 +02:00
mokhtar
21571e448e
schema: collapse config.db to a single baseline, ddl_v1 stays editable until v0.1
2026-08-13 19:14:54 +02:00
mokhtar
2ab7c1f1de
milestone 21: abp list exceptions and a regex rule kind
2026-08-13 19:14:47 +02:00
mokhtar
65f76d4427
milestone 23 s3: plan names stylex and react aria
2026-08-12 22:50:34 +02:00
mokhtar
cdacc560b7
milestone 14: build, package, sign and publish releases
2026-08-08 12:38:29 +02:00
mokhtar
8c3328562e
milestone 13 discrepancies: redact credentials from urls in logs, metrics and cli output
2026-08-07 00:45:17 +02:00
mokhtar
16c9de2414
milestone 13: restructure docs to diataxis, tutorial, every command executed
2026-08-02 18:02:58 +02:00
mokhtar
bdb6ffab7a
milestone 11: systemd and docker packaging, operator and architecture docs, config and api reference, docs drift guards
2026-08-02 15:24:10 +02:00
mokhtar
59d94df722
milestone 5: blocklist filtering, local records and conditional forwarding
2026-08-01 16:43:55 +02:00
mokhtar
b609176a0b
project plan, values, milestone 1 spec, zig 0.16 api research
2026-07-31 23:16:57 +02:00