oh three seven the big tracing update
release / build (push) Successful in 4m0s

37 + 73 = 100 btw

1. tracing
   - much more tracing across agent and cc
   - metrics, logs and spans exported through otlp (grpc)
   - console logs, otlp logs and traces have independent filters now
   - follow a command from cc to agent, or a snapshot from collection to storage, in one trace
   - exporters retry temporary failures with backoff and keep queues bounded
   - prolonged collector outages can lose telemetry
   - exporter and transport diagnostics stay in console logs so exports don't generate more exports
   - check out them fields at docs/telemetry.md
   - process them with guides from docs/telemetry-recipes.md

2. more process info
   - agent and cc report process/host uptime, process RSS, CPU time and open file descriptors
   - the FD count includes files, sockets and pipes
   - host total/available memory and 1/5/15-minute load are included where supported
   - these are available through otlp now, with a UI view planned later

3. config duration now uses time strings
   - instead of `*_seconds` or `*_days` which is bullshit
   - write durations like "30s", "60d" or "1h 30m", parsed by humantime
   - check docs/config-durations.md
   - old numeric keys still load and produce a deprecation warning
   - init-config --from-config rewrites those keys into the new format and keeps your telemetry and access settings
   - api/ws numeric fields and existing numeric cli flags are unchanged

4. devices
    - clearer labels in the UI
    - rename or forget saved devices
    - remember, attach and merge keep the details dialog open
    - details stay accessible even when the device drops out of your current list filters
    - presence comes from endpoints, and unnamed devices get better fallback names
    - renaming with an invalid name returns 400, while storage failures return 500

5. backend cleanup
    - this helps with tracing
    - ~~no more~~ less long asf fns
    - related device reads share a SQLite transaction for a consistent view
    - snapshot traces show pool wait, transaction begin, row writes and commit separately
    - wake lookup searches the full fleet, including devices beyond the UI list's 1,000-row cap

6. fleet collection caching
    - reuse the grouped view until DB or connected-agent state changes
    - if changes keep interrupting a rebuild, return 503 fleet_busy so the caller can retry
    - current fleet/device/endpoint counts are also available as metrics
    - cool

7. origin auth
    - docs/origin-auth.md
    - validate Cloudflare Access tokens at the origin
    - caddy calls cc's /internal/auth/verify before proxying protected routes
    - configure [access] with the protected app's issuer and AUD
    - the signing-key URL defaults from the issuer and can be overridden
    - cache signing keys according to HTTP freshness headers and revalidate with ETag/Last-Modified
    - update the caddy config!
    - keep cc bound to loopback so requests go through caddy's auth checks
    - agent endpoints continue using their own authentication
    - closing the confirmed origin bypass requires BOTH the cc config and the caddy update

8. retention + deployment bits
    - device_retention defaults to "60d", and "0d" disables expiry
    - an agent-collected device's retention age resets whenever cc receives a snapshot containing it
    - complete snapshots immediately remove rows the agent has omitted
    - saved devices and their manually attached identifiers remain saved
    - OpenWrt UCI/environment setup, credential-entry fixes and an updated copy script

Ping, multi-CC, the process-info UI and profiling are planned for later.

all codex btw idfk what these do
there are things to do.
This commit is contained in:
lda committed 2026-10-13 02:28:32 +07:00 Verified
1 parent 7cfb4679bd
commit f6f419277c
6 files changed
+10 -10

No files matched your search

+1 -1
View File
@@ -1,6 +1,6 @@
[package]
name = "wakey-core"
version = "0.3.6"
version = "0.3.7"
edition = "2024"
publish = ["gitea"]