Skip to content

watch: --ca-cert trusts a reverse proxy's local CA - #66

Merged
avrabe merged 2 commits into
mainfrom
watch-ca-cert
Oct 29, 2026
Merged

avrabe merged 2 commits into
mainfrom
watch-ca-cert

Conversation

@avrabe

@avrabe avrabe commented Oct 28, 2026

Copy link
Copy Markdown
Contributor

warte watch against https://<host>/warte failed live with invalid peer certificate: UnknownIssuer: the reverse proxy serves a certificate from its own local CA (Caddy tls internal).

  • --ca-cert <pem> (or WARTE_CA_CERT) adds that CA to the trusted roots, alongside the built-in ones. There is deliberately no switch to skip verification.
  • A file with no PEM certificate is rejected up front (exit 1, "no PEM certificate in the file"). reqwest accepts an empty bundle silently, so the failure would otherwise show up later as a confusing TLS error.

Verified live against the ground-station host with its proxy's root CA: no change within 2 s → exit 3 with the JSON and a cursor. Without the CA → exit 1, UnknownIssuer.

Oracle: the CLI test now also checks that a non-PEM --ca-cert exits 1 with that message. cargo test and clippy -D warnings are green.

🤖 Generated with Claude Code

https://claude.ai/code/session_01KEjmjacA37doyazDSdB8ez

avrabe and others added 2 commits October 28, 2026 23:50
Live on the ground-station host the CLI failed with UnknownIssuer: the
reverse proxy serves a certificate from its own local CA (Caddy tls
internal). --ca-cert <pem> / WARTE_CA_CERT trusts that CA in addition to
the built-in roots; there is deliberately no switch to skip verification.
A file with no certificate fails up front instead of as a TLS error later
(reqwest accepts an empty bundle silently).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KEjmjacA37doyazDSdB8ez
@avrabe
avrabe merged commit 97978ab into main Oct 29, 2026
4 checks passed
@avrabe
avrabe deleted the watch-ca-cert branch October 29, 2026 00:36
avrabe added a commit that referenced this pull request Oct 29, 2026
… unmount unauthenticated /api/ws and /api/events (#68)

REQ-QUEUE-001/002 and REQ-CI-004 had passing tests with markers but were
still 'implemented'; rivet verify promotes them on that evidence.
DD-WATCH-001 is accepted (shipped in #65/#66).

/api/ws and /api/events broadcast agent heartbeats and access-right
changes without authentication, and nothing used them. Owner decision
2026-10-29: unmount them now, move REQ-REALTIME-001 to v1.5.0 to return
with auth. Oracle: both answer 404.

rivet release status v1.4.1: cuttable.


Claude-Session: https://claude.ai/code/session_01KEjmjacA37doyazDSdB8ez

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant