mokhtar
85b8be50a0
admin: overview redesign, device scope, one formatting contract (milestone 39)
...
Gates / frontend (push) Successful in 1m57s
Gates / test (push) Successful in 2m34s
Gates / test-aarch64 (push) Successful in 8m9s
Gates / package (push) Successful in 7m14s
Gates / container (push) Successful in 17s
CI / gates (push) Successful in 18m17s
Release / guard (push) Successful in 33s
Gates / test-aarch64 (push) Successful in 7m22s
Gates / container (push) Successful in 11s
Release / gates (push) Successful in 10m35s
Gates / frontend (push) Successful in 2m8s
Gates / test (push) Successful in 2m16s
Gates / package (push) Successful in 44s
Release / publish (push) Successful in 10m4s
The Overview page takes the decided visual language (specs/ui-visual-redesign.md): four centred totals with their Activity links, a smoothed area chart of total and blocked queries with point hover and a tooltip centred beside the point, a stacked client chart in eight distinct hues plus one Other band that is always a series, and a card row with the cache hit rate, the query types as a single-hue ramp ring, and the upstream breakdown. The count axis grows its margin with the widest grouped tick and draws whole-number ticks only.
GET /api/overview takes a client parameter; the scoped read uses idx_query_log_ts and the cache keeps scoped slots. The device selector beside the period selector is URL state, so a scoped view is a link, and the tile links carry the scope into Activity. The route reduces a pasted IPv6 scope to the RFC 5952 spelling the logger stores, mapped addresses included, and drops anything that is not an address. A failed device list says so under the selector with a retry.
All measured quantities go through admin/src/lib/format.ts: grouped counts, two-decimal percentages, one-decimal rates, durations as the two largest nonzero units. Identifiers, configured values and preset labels render as written; the module header states that scope. A sweep test refuses toFixed, toLocaleString, Intl.NumberFormat and padStart anywhere else.
Chrome: one 4px radius from the metrics constants, shared Card with a prominent title and a one-line description on every panel, the settings form sections on the same card with a floated legend, the sidebar grouped into Monitoring and System with a status block (protection, queries per minute on Overview, uptime), keyboard-focusable table scroll wrappers, and the accent darkened to 5.43:1 on its wash.
Not built: the spec's ranked-list primitive, which has no consumer and no API rows. Codex reviewed sessions B to D over five rounds (thirty-three findings fixed, thirteen rejected as non-quantities); the owner skipped a sixth round.
Claude-Session: https://claude.ai/code/session_01VTgx3a1zz1R78o4K55kkwR
2026-09-07 23:11:50 +02:00
mokhtar
2525b01893
admin: phosphor icons replace hand-drawn svgs and text-character glyphs
...
Release / guard (push) Successful in 39s
Gates / frontend (push) Failing after 2m25s
Gates / package (push) Skipped
Gates / container (push) Skipped
Gates / frontend (push) Failing after 1m59s
Gates / package (push) Skipped
Gates / container (push) Skipped
Gates / test-aarch64 (push) Successful in 8m18s
CI / gates (push) Failing after 11m34s
Gates / test (push) Successful in 2m18s
Gates / test-aarch64 (push) Successful in 7m23s
Release / gates (push) Failing after 18m51s
Release / publish (push) Skipped
Gates / test (push) Successful in 2m36s
health strip marks, menu ticks, chip crosses, the search magnifier, the checkbox check and the back arrows all come from @phosphor-icons/react now, pinned exactly and entered in the license ledger. changelog and version bump for 0.0.15, including the bundle budget raise to 900000 bytes.
2026-08-31 18:04:25 +02:00
mokhtar
09932b2d84
build: bump version to 0.0.14
Release / guard (push) Successful in 34s
Gates / frontend (push) Successful in 1m47s
Gates / test (push) Successful in 2m43s
Gates / test-aarch64 (push) Successful in 7m29s
Gates / package (push) Successful in 58s
Gates / container (push) Successful in 14s
Release / gates (push) Successful in 11m27s
Release / publish (push) Successful in 1m30s
2026-08-28 17:57:09 +02:00
mokhtar
dd5a9f6ab8
build: bump version to 0.0.13
Release / guard (push) Successful in 34s
Gates / frontend (push) Successful in 1m39s
Gates / test (push) Successful in 2m27s
Gates / test-aarch64 (push) Successful in 8m9s
Gates / package (push) Successful in 4m24s
Gates / container (push) Successful in 16s
Release / gates (push) Successful in 15m18s
Release / publish (push) Failing after 4m55s
2026-08-27 21:46:08 +02:00
mokhtar
6170571d23
build: bump version to 0.0.12
Release / guard (push) Successful in 35s
Gates / frontend (push) Successful in 1m40s
Gates / test (push) Successful in 2m23s
Gates / test-aarch64 (push) Successful in 7m12s
Gates / package (push) Successful in 4m18s
Gates / container (push) Successful in 16s
Release / gates (push) Successful in 14m12s
Release / publish (push) Failing after 4m57s
2026-08-27 17:49:06 +02:00
mokhtar
7cdb74ec17
build: bump version to 0.0.11
Release / guard (push) Successful in 35s
Gates / frontend (push) Successful in 1m51s
Gates / test (push) Successful in 3m20s
Gates / test-aarch64 (push) Successful in 7m30s
Gates / package (push) Successful in 5m46s
Gates / container (push) Successful in 15s
Release / gates (push) Successful in 16m54s
Release / publish (push) Failing after 4m48s
2026-08-24 18:41:46 +02:00
mokhtar
091962a996
build: bump version to 0.0.10
Release / guard (push) Successful in 38s
Gates / frontend (push) Successful in 1m40s
Gates / test (push) Successful in 2m29s
Gates / test-aarch64 (push) Successful in 7m53s
Gates / package (push) Successful in 4m17s
Gates / container (push) Successful in 15s
Release / gates (push) Successful in 14m58s
Release / publish (push) Failing after 6m21s
2026-08-24 00:05:33 +02:00
mokhtar
1f215ac623
build: bump version to 0.0.9
2026-08-22 23:32:47 +02:00
mokhtar
b6cea3f539
build: bump version to 0.0.8
Gates / frontend (push) Successful in 1m34s
Gates / test (push) Successful in 1m53s
Gates / test-aarch64 (push) Successful in 6m34s
Gates / package (push) Successful in 43s
Gates / test-aarch64 (push) Successful in 7m23s
Gates / package (push) Successful in 4m11s
Gates / container (push) Successful in 18s
CI / gates (push) Successful in 27m37s
Release / guard (push) Successful in 18s
Gates / frontend (push) Successful in 1m9s
Gates / test (push) Successful in 1m36s
Gates / container (push) Successful in 10s
Release / gates (push) Successful in 9m6s
Release / publish (push) Successful in 4m33s
2026-08-21 18:43:49 +02:00
mokhtar
324704b53f
build: bump version to 0.0.7
Gates / package (push) Successful in 41s
Gates / test (push) Successful in 1m35s
Gates / test-aarch64 (push) Successful in 6m48s
Gates / frontend (push) Successful in 1m22s
Gates / container (push) Successful in 9s
CI / gates (push) Successful in 23m18s
Gates / frontend (push) Successful in 1m8s
Gates / package (push) Successful in 40s
Release / guard (push) Successful in 17s
Gates / test (push) Successful in 1m35s
Gates / test-aarch64 (push) Successful in 6m55s
Gates / container (push) Successful in 9s
Release / gates (push) Successful in 9m23s
Release / publish (push) Successful in 4m26s
2026-08-20 22:34:13 +02:00
mokhtar
377f00a35f
changelog: 0.0.6 releases today
Release / guard (push) Successful in 22s
Gates / frontend (push) Successful in 1m30s
Gates / test (push) Successful in 1m50s
Gates / frontend (push) Successful in 1m9s
Gates / test-aarch64 (push) Successful in 6m55s
Gates / test (push) Successful in 1m34s
Gates / test-aarch64 (push) Successful in 6m9s
Gates / package (push) Successful in 3m49s
Gates / package (push) Successful in 32s
Gates / container (push) Successful in 15s
CI / gates (push) Successful in 21m28s
Gates / container (push) Successful in 9s
Release / gates (push) Successful in 20m7s
Release / publish (push) Successful in 4m26s
2026-08-17 18:22:54 +02:00
mokhtar
3ed9a57822
changelog: 0.0.5 releases today
Gates / test (push) Successful in 1m44s
Gates / frontend (push) Successful in 1m2s
Gates / test-aarch64 (push) Successful in 5m55s
Gates / package (push) Successful in 28s
Gates / container (push) Successful in 16s
CI / gates (push) Successful in 20m25s
Release / guard (push) Successful in 18s
Gates / frontend (push) Successful in 1m5s
Gates / test-aarch64 (push) Successful in 6m33s
Gates / test (push) Successful in 1m31s
Gates / package (push) Successful in 3m41s
Gates / container (push) Successful in 9s
Release / gates (push) Successful in 19m27s
Release / publish (push) Successful in 5m43s
2026-08-16 23:55:19 +02:00
mokhtar
49c7da2381
changelog: 0.0.4 releases today
Release / guard (push) Successful in 26s
Gates / frontend (push) Successful in 1m26s
Gates / test (push) Successful in 1m44s
Gates / frontend (push) Successful in 1m6s
Gates / test-aarch64 (push) Successful in 6m36s
Gates / test (push) Successful in 1m33s
Gates / test-aarch64 (push) Successful in 5m50s
Gates / package (push) Successful in 5m5s
Gates / package (push) Successful in 30s
Gates / container (push) Successful in 15s
CI / gates (push) Successful in 21m58s
Gates / container (push) Successful in 10s
Release / gates (push) Successful in 20m42s
Release / publish (push) Successful in 4m41s
2026-08-16 23:00:41 +02:00
mokhtar
efbe355070
changelog: 0.0.3 releases today
Gates / frontend (push) Successful in 1m3s
Gates / test (push) Successful in 1m39s
Gates / test-aarch64 (push) Successful in 6m28s
Gates / container (push) Successful in 18s
Release / guard (push) Successful in 1m30s
Gates / test-aarch64 (push) Successful in 5m45s
Gates / package (push) Successful in 24s
Release / gates (push) Successful in 7m54s
Gates / package (push) Successful in 5m34s
CI / gates (push) Successful in 14m5s
Gates / frontend (push) Successful in 58s
Gates / test (push) Successful in 1m29s
Gates / container (push) Successful in 10s
Release / publish (push) Successful in 9m12s
2026-08-15 12:24:05 +02:00
mokhtar
c7c1e21267
changelog: 0.0.2 releases today
Gates / frontend (push) Successful in 1m9s
Gates / test (push) Failing after 12m32s
Gates / test-aarch64 (push) Successful in 9m14s
Gates / package (push) Successful in 7m27s
Gates / container (push) Successful in 18s
CI / gates (push) Failing after 22m41s
2026-08-14 02:10:45 +02:00
mokhtar
3c38e18027
changelog and spec: dry run complete, restore 0.0.1, record deviations 25 and 26
2026-08-08 21:43:36 +02:00
mokhtar
95939fedf0
changelog: temporary 0.0.0 section for the release dry run
2026-08-08 15:35:40 +02:00
mokhtar
cdacc560b7
milestone 14: build, package, sign and publish releases
2026-08-08 12:38:29 +02:00
mokhtar
1fa82668ec
build baseline: pinned sqlite + mbedtls, static musl cross targets, cli stub
2026-07-31 23:59:39 +02:00