FluxCD
d18f8ee2cd
chore: update towerops image to git.mcintire.me/graham/towerops-web:main-1771100169-10ec67f
2026-02-14 20:18:49 +00:00
FluxCD
10ec67f6f6
chore: update towerops image to git.mcintire.me/graham/towerops-web:main-1771099899-db40a3e
2026-02-14 20:15:46 +00:00
db40a3e5b7
feat: show human-readable sync status messages for integrations
...
- Added last_sync_message field to integrations schema
- Gaiia sync: shows item counts on success, friendly error on failure
- Preseem sync: shows AP/device counts on success, friendly error on failure
- Error messages translated from technical errors to user-friendly text
- Message displayed on integration card next to status badge
- Exposed in REST API response
2026-02-14 14:11:02 -06:00
FluxCD
ddae90f06c
chore: update towerops image to git.mcintire.me/graham/towerops-web:main-1771099595-0f7e91a
2026-02-14 20:10:45 +00:00
5917190efe
feat: add NetBox integration with sync direction, entity selection, and filtering
...
- Three sync modes: NetBox→TowerOps (pull), TowerOps→NetBox (push), Bidirectional
- Configurable entity sync: devices, sites, IP addresses, interfaces
- Optional filters by device role, site, and tag (comma-separated)
- NetBox client with test connection, CRUD operations
- Radio card UI for sync direction, checkbox cards for entity selection
- Credentials stored encrypted (URL, API token, sync config)
2026-02-14 14:09:01 -06:00
FluxCD
880259874c
chore: update towerops image to git.mcintire.me/graham/towerops-web:main-1771099404-7d38958
2026-02-14 20:06:43 +00:00
0f7e91af0c
ui: remove Agents from top-level nav, accessible via org settings tab
2026-02-14 14:03:49 -06:00
FluxCD
7d3895817b
chore: update towerops image to git.mcintire.me/graham/towerops-web:main-1771099096-a028695
2026-02-14 20:02:58 +00:00
e73988303f
disable tzdata in prod
2026-02-14 14:02:18 -06:00
FluxCD
458b4babc9
chore: update towerops image to git.mcintire.me/graham/towerops-web:main-1771098943-05737be
2026-02-14 19:58:44 +00:00
a028695d3b
format
2026-02-14 13:57:25 -06:00
35fc993db0
ui: remove border above nav tabs on org and user settings
2026-02-14 13:57:03 -06:00
FluxCD
05737befa5
chore: update towerops image to git.mcintire.me/graham/towerops-web:main-1771098635-ea7d82a
2026-02-14 19:54:41 +00:00
FluxCD
60fdd76ab4
chore: update towerops image to git.mcintire.me/graham/towerops-web:main-1771098371-6e85d61
2026-02-14 19:50:38 +00:00
ea7d82a489
fix: make Configure button toggle - clicking again collapses the form
2026-02-14 13:48:22 -06:00
FluxCD
6e85d61101
chore: update towerops image to git.mcintire.me/graham/towerops-web:main-1771098078-950f4d9
2026-02-14 19:45:38 +00:00
00a0e73821
fix: only show Gaiia webhook config when Configure is clicked
2026-02-14 13:45:18 -06:00
392b1e135c
fix: trace page crash - detected_at → changed_at to match ConfigChangeEvent schema
2026-02-14 13:44:07 -06:00
FluxCD
c59e91cc8a
chore: update towerops image to git.mcintire.me/graham/towerops-web:main-1771097820-44be203
2026-02-14 19:41:37 +00:00
950f4d9ae0
fix: implement Gaiia webhook signature verification per their spec
...
- Header: X-Gaiia-Webhook-Signature with t=timestamp,v1=signature format
- Signed payload: timestamp.body (not just body)
- 5-minute timestamp tolerance to prevent replay attacks
- Updated tests to match new 4-arity verify_signature/4
2026-02-14 13:37:26 -06:00
FluxCD
44be203e73
chore: update towerops image to git.mcintire.me/graham/towerops-web:main-1771097548-afa58df
2026-02-14 19:36:35 +00:00
9b5647a055
fix: Gaiia webhook secret is user-pasted from Gaiia, not auto-generated; update setup instructions
2026-02-14 13:34:32 -06:00
86acb04353
feat: add help sections for insights, map, API tokens, REST/GraphQL APIs; remove Gaiia webhook secret UI, update setup to use All Events
2026-02-14 13:33:27 -06:00
596b404baf
docs: add Network Insights, Network Map, API Tokens, REST API, and GraphQL API sections to help page
2026-02-14 13:32:48 -06:00
FluxCD
42f7f41584
chore: update towerops image to git.mcintire.me/graham/towerops-web:main-1771097398-b74c890
2026-02-14 19:32:36 +00:00
afa58df888
fix: add Permissions-Policy header to suppress browsing-topics warning
...
Added Permissions-Policy header with browsing-topics=() to suppress console
warnings about unrecognized Privacy Sandbox API features. Header is now applied
in all environments (dev and prod) while other security headers remain
production-only.
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-14 13:31:08 -06:00
FluxCD
b74c890b1d
chore: update towerops image to git.mcintire.me/graham/towerops-web:main-1771097218-e6a4b27
2026-02-14 19:29:36 +00:00
FluxCD
e6a4b27737
chore: update towerops image to git.mcintire.me/graham/towerops-web:main-1771097039-30e0322
2026-02-14 19:26:34 +00:00
FluxCD
30e032207f
chore: update towerops image to git.mcintire.me/graham/towerops-web:main-1771096857-26dc35f
2026-02-14 19:23:35 +00:00
FluxCD
26dc35f58a
chore: update towerops image to git.mcintire.me/graham/towerops-web:main-1771096678-7c9d014
2026-02-14 19:20:33 +00:00
FluxCD
7c9d014c6b
chore: update towerops image to git.mcintire.me/graham/towerops-web:main-1771096497-ecfa150
2026-02-14 19:17:35 +00:00
FluxCD
ecfa1500ec
chore: update towerops image to git.mcintire.me/graham/towerops-web:main-1771096328-99da7e0
2026-02-14 19:14:33 +00:00
FluxCD
99da7e0299
chore: update towerops image to git.mcintire.me/graham/towerops-web:main-1771096058-5df5c97
2026-02-14 19:11:33 +00:00
FluxCD
933cb7fc5f
chore: update towerops image to git.mcintire.me/graham/towerops-web:main-1771095731-cb0c6e7
2026-02-14 19:08:24 +00:00
5df5c97c45
feat: add geographic location to sites with geocoding, address fields, and Leaflet.js network map
2026-02-14 13:07:14 -06:00
2ea849d622
feat: add developer and product links to marketing footer
2026-02-14 13:07:14 -06:00
74f112642d
feat: make network insights actionable with affected device links and metadata
2026-02-14 13:07:14 -06:00
3284f0bce6
fix: increase walker concurrent test timeout, prefix unused vars, add heex to dialyzer ignore
2026-02-14 13:07:14 -06:00
FluxCD
cb0c6e79fb
chore: update towerops image to git.mcintire.me/graham/towerops-web:main-1771095546-66ea0e2
2026-02-14 19:01:44 +00:00
FluxCD
66ea0e256b
chore: update towerops image to git.mcintire.me/graham/towerops-web:main-1771095367-61dfe82
2026-02-14 18:58:42 +00:00
FluxCD
61dfe82ca9
chore: update towerops image to git.mcintire.me/graham/towerops-web:main-1771095194-d26a070
2026-02-14 18:55:44 +00:00
FluxCD
d26a0701cb
chore: update towerops image to git.mcintire.me/graham/towerops-web:main-1771094551-f837178
2026-02-14 18:52:49 +00:00
FluxCD
f8371783cf
chore: update towerops image to git.mcintire.me/graham/towerops-web:main-1771094368-530bf01
2026-02-14 18:42:07 +00:00
FluxCD
530bf01bba
chore: update towerops image to git.mcintire.me/graham/towerops-web:main-1771094191-9f0211f
2026-02-14 18:39:04 +00:00
FluxCD
9f0211f140
chore: update towerops image to git.mcintire.me/graham/towerops-web:main-1771094000-c59a852
2026-02-14 18:36:07 +00:00
c59a852e22
fix: resolve typing violation and ETS cache race in tests
...
- Use pattern match assertion in towerops_native_test to satisfy type checker
- Clear ETS whitelist cache in brute_force_test setup to prevent cross-test leakage
2026-02-14 12:32:43 -06:00
146f5745cf
fix: resolve compilation errors, test failures, and credo issues
...
- Escape HEEx template braces in GraphQL/API docs with raw(~S[...])
- Fix test assertions for updated marketing copy and UI text
- Extract helper functions in GraphQL resolvers to reduce nesting depth
- Create shared ErrorHelpers module for API controllers
- Fix ETS race condition in brute force whitelist cache for async tests
- Fix property test generators to use ASCII instead of printable unicode
- Add alert_severity helper to site_live/show
- Update accounts fixtures for explicit user confirmation
2026-02-14 12:23:10 -06:00
FluxCD
ed7542b94a
chore: update towerops image to git.mcintire.me/graham/towerops-web:main-1771090131-e9e1a29
2026-02-14 17:31:28 +00:00
eb76f9475e
feat: add GraphQL API with Absinthe, full schema, resolvers, and documentation
2026-02-14 11:28:57 -06:00
59a786d8de
docs: add API documentation for all new endpoints
2026-02-14 11:28:57 -06:00