-
c772485f92
deploy slice B + F: deploy/ artifacts + image-build + container smoke CI + tag-push publish (#26)
docs/deployment-topology-spec
Aaron D. Lee
2026-07-06 19:53:32 +00:00
-
1bc36c21b2
fix(smoke): enable Plan A assertions (ASSERT_ENGINE_REPLY + ASSERT_ZERO_DROPS)
deploy-b/packaging-ci
Aaron D. Lee
2026-07-06 15:42:43 -04:00
-
3aa9fa4e29
ci: publish-images.yml — slice F tag-push image publish (deploy-F §6.3)
Aaron D. Lee
2026-07-06 15:41:14 -04:00
-
6be53af5f3
ci: smoke-compose + smoke-reload jobs — T2 four-service boot + caddy reload-during-call (deploy-B §9)
Aaron D. Lee
2026-07-06 15:36:53 -04:00
-
142933c067
ci: smoke job — all-in-one TLS sim call through real edge->FOB WS path (deploy-B §9)
Aaron D. Lee
2026-07-06 15:34:33 -04:00
-
219df74466
ci: image-build job — builds the four first-party Docker images (deploy-B §6.1)
Aaron D. Lee
2026-07-06 15:32:24 -04:00
-
abb7e1428d
feat(deploy/smoke): all-in-one + compose + reload-during-call smoke harness (deploy-B §9)
Aaron D. Lee
2026-07-05 23:02:51 -04:00
-
4714ca4da7
feat(deploy): compose.yaml — T2 reference deployment (deploy-B §2.2)
Aaron D. Lee
2026-07-05 22:52:32 -04:00
-
1d007d99c6
docs(deploy): .env.example — all RUTSTER_* vars documented (deploy-B §6.2)
Aaron D. Lee
2026-07-05 22:46:04 -04:00
-
7bab5f5561
feat(deploy): Caddyfile — tuned timeouts, honest X-Forwarded, stream_close_delay 24h (deploy-B §3.2)
Aaron D. Lee
2026-07-05 22:38:34 -04:00
-
1688612b8c
chore(deploy): .dockerignore — prune build context (deploy-B §6.1)
Aaron D. Lee
2026-07-05 22:32:31 -04:00
-
c612a0d305
feat(deploy): multi-stage Dockerfile producing four first-party images (deploy-B §6.1)
Aaron D. Lee
2026-07-05 22:24:36 -04:00
-
-
838ecdf5e6
deploy slice C+D+E (binary features): rustls Phase 1 + /metrics + ValkeyEventSink (#25)
Aaron D. Lee
2026-07-06 14:58:43 +00:00
-
2217c7bf7a
feat(smoke): assert-lifecycle-event-lands-in-Valkey-stream hook (deploy-C §5.6, deploy-B smoke harness)
deploy-c/binary-features
Aaron D. Lee
2026-07-06 03:17:04 -04:00
-
e6dc6fda14
feat(valkey_sink): ValkeyEventSink -- first Valkey consumer (deploy-C §5.6)
Aaron D. Lee
2026-07-06 03:04:10 -04:00
-
2ac33cc01b
fix(deps): pin redis to 0.27 (MSRV 1.70, works with 1.85 toolchain)
Aaron D. Lee
2026-07-06 02:29:55 -04:00
-
9c28b2328b
chore(deps): add redis 1.3.0 (aio + streams + tokio-comp) workspace dep (deploy-C §5.6)
Aaron D. Lee
2026-07-06 02:26:54 -04:00
-
ab4fdb3b2f
feat(metrics): hand-rolled Prometheus /metrics on own listener (deploy-C §5.5)
Aaron D. Lee
2026-07-06 02:15:52 -04:00
-
36bbe70b7b
feat(media_thread): admission_rejects + event_sink_drops extend MediaStats (deploy-C §5.5)
Aaron D. Lee
2026-07-06 01:55:16 -04:00
-
61fcc730cc
feat(main): TLS listener wiring + SIGHUP hot-reload (deploy-C §5.4)
Aaron D. Lee
2026-07-06 01:46:06 -04:00
-
55065c569d
feat(serve_tls): NodeLayAcceptor + serve_tls_with_nodelay (deploy-C §5.4)
Aaron D. Lee
2026-07-06 01:26:19 -04:00
-
5d14215053
feat(config): tls_cert_path / tls_key_path env parsers (deploy-C §5.4)
Aaron D. Lee
2026-07-06 00:55:24 -04:00
-
66006400bf
chore(deps): add axum-server 0.8 (tls-rustls) workspace dep (deploy-C §5.4)
Aaron D. Lee
2026-07-06 00:35:23 -04:00
-
-
0c307acdb5
deploy slice G (docs + ADR-0011): docs/deploy/ tree + ADR-0011 Proposed (#23)
Aaron D. Lee
2026-07-06 04:07:15 +00:00
-
7e2ae6d2d2
deploy slice A: engine hygiene — TCP_NODELAY + WS pings + trunk config (#24)
Aaron D. Lee
2026-07-06 04:06:20 +00:00
-
83d827d350
feat(trunk): trusted-proxy posture — RUTSTER_TRUSTED_PROXIES + public-URL reconstruction helper (deploy-A §5.3)
deploy-a/engine-hygiene
Aaron D. Lee
2026-07-05 23:52:22 -04:00
-
49a5d8c91c
test(sim): WS-frame send→recv p99 assertion — the TCP_NODELAY tripwire (deploy-A §5.1)
Aaron D. Lee
2026-07-05 23:30:20 -04:00
-
90ba131ad9
fix(trunk): derive TwiML Stream URL from RUTSTER_TWILIO_WEBHOOK_BASE; wire twilio_credentials into startup (deploy-A §5.3)
Aaron D. Lee
2026-07-05 23:16:43 -04:00
-
55466130a5
docs: QUICKSTART points at deploy/quickstart-docker.md as the fast path (slice-G)
deploy-g/docs-adr-0011
Aaron D. Lee
2026-07-05 23:11:47 -04:00
-
0e415c7480
docs(deploy): certificates.md — ACME paths, /data persistence, wildcard traps (slice-G)
Aaron D. Lee
2026-07-05 23:04:57 -04:00
-
6c8c754cb1
docs(deploy): reverse-proxies.md — BYO nginx/HAProxy/Traefik tuned-timeout configs (slice-G)
Aaron D. Lee
2026-07-05 22:56:34 -04:00
-
a0b3e248f5
docs(deploy): aws.md — ALB appendix: three mandatory overrides, never NLB-TLS (slice-G)
Aaron D. Lee
2026-07-05 22:47:46 -04:00
-
ac3670b962
feat(trunk): app-level WS ping on the media-stream WS, RUTSTER_WS_PING_SECS default 20 (deploy-A §5.2)
Aaron D. Lee
2026-07-05 22:43:59 -04:00
-
33c3a145b0
docs(deploy): homelab.md — CGNAT truth: PSTN-only behind tunnels, VPS+WireGuard graduation (slice-G)
Aaron D. Lee
2026-07-05 22:40:34 -04:00
-
1be6112148
docs(deploy): quickstart-docker.md — T1 docker run + T2 compose, zero to first call (slice-G)
Aaron D. Lee
2026-07-05 22:33:23 -04:00
-
285f2055ba
docs(deploy): topologies.md — three blessed shapes + decision guide (slice-G)
Aaron D. Lee
2026-07-05 22:22:34 -04:00
-
186149cf15
feat(serve): TCP_NODELAY on every accepted HTTP/WS socket (deploy-A §5.1)
Aaron D. Lee
2026-07-05 22:20:11 -04:00
-
-
538b059f76
docs(adr): ADR-0011 deployment topology — one binary, three blessed shapes (Proposed) (slice-G)
Aaron D. Lee
2026-07-05 22:15:02 -04:00
-
-
fae9fcc82a
docs(plans): four deployment-epoch implementation plans (slices A–G)
Aaron D. Lee
2026-07-05 21:37:17 -04:00
-
12af2f88b3
docs(spec): deployment topology — one binary, three blessed shapes
Aaron D. Lee
2026-07-05 14:31:25 -04:00
-
6340e638d5
fix: pin transitive deps for Rust 1.85 MSRV compatibility (#22)
main
Aaron D. Lee
2026-07-05 17:05:15 +00:00
-
3ad10f9255
fix: pin transitive deps for Rust 1.85 MSRV compatibility
fix/pin-rcgen-0.14.7-for-1.85-msrv
Aaron D. Lee
2026-07-05 13:03:44 -04:00
-
-
431eee3727
fix(trunk): move T8 #[ignore] full-e2e stub to binary crate tests (#21)
Aaron D. Lee
2026-07-05 16:33:43 +00:00
-
df5b11ae37
fix(trunk): move T8 #[ignore] full-e2e stub to binary crate tests
fix/move-t8-stub-to-binary-crate
Aaron D. Lee
2026-07-05 12:33:05 -04:00
-
7815a8b9fc
Merge branch 'main' of ssh://git.adlee.work:2222/alee/rutster
Aaron D. Lee
2026-07-05 12:22:00 -04:00
-
-
-
-
ee3938864b
slice-4½: rutster-sim seed + CI-regressed thresholds (S1-S8) (#18)
Aaron D. Lee
2026-07-05 16:21:07 +00:00
-
e5bf6a3fcc
docs(sim): rustdoc backtick-fix for angle-bracketed type names + URL linkify
slice-4-half/sim-harness-dev-a
Aaron D. Lee
2026-07-05 03:36:48 -04:00
-
8e3a390e41
ci(sim): sim-bench CI job + threshold assertion tests (slice-4½ S7)
Aaron D. Lee
2026-07-05 03:34:41 -04:00
-
151e27a249
docs(sim): scenario pack + LEARNING.md pointers (slice-4½ S8)
Aaron D. Lee
2026-07-05 03:28:02 -04:00
-
da63d58f61
feat(sim): TickLagGauge -- per-tick wall-clock measurement (slice-4½ S6)
Aaron D. Lee
2026-07-05 03:26:23 -04:00
-
6da8e4095a
feat(sim): ConcurrencyRunner -- N concurrent SimCalls + SweepReport aggregation (slice-4½ S5)
Aaron D. Lee
2026-07-05 03:20:37 -04:00
-
ca30bcd48d
feat(sim): SimCall + ScenarioRunner -- drives scenario against FOB reflex loop (slice-4½ S4)
Aaron D. Lee
2026-07-05 03:15:13 -04:00
-
ab3ba9c11d
feat(sim): LatencyProbe -- p50/p99 kill + mouth-to-ear (slice-4½ S3)
Aaron D. Lee
2026-07-05 03:03:14 -04:00
-
6883d076ab
feat(sim): SimAudioPipe + Capture enum (slice-4½ S2)
Aaron D. Lee
2026-07-05 03:01:32 -04:00
-
b248565bce
feat(sim): rutster-sim crate skeleton + Scenario/ScenarioStep types (slice-4½ S1)
Aaron D. Lee
2026-07-05 02:55:32 -04:00
-
-
-
03465a4a07
Merge pull request 'slice-5 (rented transport, FOB half): G711Codec + TrunkSession + trunk_driver + MediaLeg + reflex-on-trunk verification (T1/T3/T4/T5/T7/T8)' (#19) from slice-5/rented-transport-dev-c into main
A.D.Lee
2026-07-05 16:15:08 +00:00
-
-
0a76cec1df
test(trunk): reflex-on-trunk verification (T7) + PSTN sim e2e (T8) — slice-5
slice-5/rented-transport-dev-c
Aaron D. Lee
2026-07-05 04:02:56 -04:00
-
a72825359c
feat(binary): MediaLeg enum + MediaCmd::RegisterTrunk variant + POST /v1/trunk/{sessions,webhook} routes + TwilioMediaStreamsServer router mount (slice-5 T5 Step A)
Aaron D. Lee
2026-07-05 03:40:54 -04:00
-
ba7d2939cd
fix(trunk): trait imports + remove unused (AudioSink/AudioSource) in session tests (T4 cleanup)
Aaron D. Lee
2026-07-05 03:36:20 -04:00
-
e94caf52bb
fix(trunk): trait imports (AudioSink, AudioSource) for trunk_driver + clippy let_and_return on test helper (slice-5 T4)
Aaron D. Lee
2026-07-05 03:33:12 -04:00
-
caf4c5ba91
feat(trunk): TrunkSession + trunk_driver::drive -- FOB-side trunk-leg tick (slice-5 T4)
Aaron D. Lee
2026-07-05 03:31:22 -04:00
-
c7d48559a5
fmt(trunk): rustfmt reflow on twilio_media_streams (T3)
Aaron D. Lee
2026-07-05 03:29:20 -04:00
-
bf47634e3b
feat(trunk): TwilioMediaStreamsServer -- axum WSS handler (slice-5 T3)
Aaron D. Lee
2026-07-05 03:28:50 -04:00
-
56f7da577b
feat(trunk): TwilioMediaStreamsServer skeleton (slice-5 T3 placeholder commit)
Aaron D. Lee
2026-07-05 03:28:01 -04:00
-
bcd775747a
feat(trunk): G711Codec — µ-law encode/decode + 8kHz↔24kHz linear-interpolated resampling (slice-5 T1)
Aaron D. Lee
2026-07-05 03:27:00 -04:00
-
-
40cc27e9f0
Merge pull request 'slice-5: add rented-transport green-zone half (T2/T6/T9/T10)' (#17) from slice-5/rented-transport-dev-b into main
A.D.Lee
2026-07-05 16:02:19 +00:00
-
-
3306214b38
test(trunk): ADR-0009 static assertion -- TwilioCredentials is trunk-local (slice-5 T10 follow-up)
Aaron D. Lee
2026-07-05 03:19:12 -04:00
-
77175aaba1
ci(trunk): twilio-live manual-trigger job + seam-gate verification + doc-link fixes (slice-5 T10)
Aaron D. Lee
2026-07-05 03:16:00 -04:00
-
e6891f2cec
docs: QUICKSTART env table + 'make a real phone call' walkthrough + README status update (slice-5 T9)
Aaron D. Lee
2026-07-05 03:10:13 -04:00
-
d19d772bd0
feat(trunk): TwilioCallControlClient (live REST impl behind twilio-live) + env parser (slice-5 T6)
Aaron D. Lee
2026-07-05 03:04:22 -04:00
-
0320ab5ce0
feat(trunk): CallControlClient trait + MockCallControlClient + TwilioCredentials (slice-5 T2)
Aaron D. Lee
2026-07-05 02:55:55 -04:00
-
-
c31e8a5069
docs: spearhead-4half-and-5 specs + plans + kickoff prompts + AGENTS.md auto-spawn update (#20)
Aaron D. Lee
2026-07-05 16:01:55 +00:00
-
ce4f65eddb
docs: spearhead-4half-and-5 specs + plans + kickoff prompts + AGENTS.md auto-spawn update
docs/spearhead-4half-5-planning-artifacts
Aaron D. Lee
2026-07-05 03:44:32 -04:00
-
-
b2a432f56d
test(trunk): ADR-0009 static assertion -- TwilioCredentials is trunk-local (slice-5 T10 follow-up)
slice-5/rented-transport-dev-b
Aaron D. Lee
2026-07-05 03:19:12 -04:00
-
72409e4b8f
ci(trunk): twilio-live manual-trigger job + seam-gate verification + doc-link fixes (slice-5 T10)
Aaron D. Lee
2026-07-05 03:16:00 -04:00
-
486af84af1
docs: QUICKSTART env table + 'make a real phone call' walkthrough + README status update (slice-5 T9)
Aaron D. Lee
2026-07-05 03:10:13 -04:00
-
a7203ab51b
feat(trunk): TwilioCallControlClient (live REST impl behind twilio-live) + env parser (slice-5 T6)
Aaron D. Lee
2026-07-05 03:04:22 -04:00
-
de0a3ffff7
feat(trunk): CallControlClient trait + MockCallControlClient + TwilioCredentials (slice-5 T2)
Aaron D. Lee
2026-07-05 02:55:55 -04:00
-
-
f8a8a2c21f
docs(adr): ratify ADR-0009 amendment (shared spend accounting) (#15)
Aaron D. Lee
2026-07-05 05:03:18 +00:00
-
465aeda789
docs(agents): point agents to CLAUDE.md for Claude review context
docs/agents-claude-md-note
Aaron D. Lee
2026-07-05 00:48:28 -04:00
-
cf49618abe
docs(adr): ratify ADR-0009 amendment — shared spend accounting
Aaron D. Lee
2026-07-05 00:39:08 -04:00
-
-
bdadfd9057
slice-5: scalability seams — addressing, admission, drain, events (review B1/M1-M7) (#14)
Aaron D. Lee
2026-07-05 04:35:38 +00:00
-
d696536bdd
slice-4 (finisher): secondary-path e2e + CI seam gate (Tasks 9.2 + 10) (#13)
slice-4-e2e-green
Aaron D. Lee
2026-07-04 17:52:26 +00:00
-
e1bcc5f158
kickoff(slice-4): finisher prompt — solo agent for Tasks 9.2 + 10
Aaron D. Lee
2026-07-04 11:38:11 -04:00
-
60b65ab893
docs(reviews): salvage June pre-pivot reviews from retired branches
Aaron D. Lee
2026-07-04 11:32:29 -04:00
-
13f4b14bee
Merge pull request 'docs: PM-mode discipline + multi-agent relay coordination protocol' (#5) from docs/pm-discipline into main
A.D.Lee
2026-07-04 15:23:34 +00:00
-
-
3c63eb6688
slice-4 (dev-a): MediaThread + session_map rewire (Task 6 + 7) (#12)
Aaron D. Lee
2026-07-04 04:37:28 +00:00
-
da6b7c9ff0
adr: +0009 spend-gate rescope +0010 spearhead 4.5 benchmark/sim; amend 0004
Aaron D. Lee
2026-07-04 00:00:31 -04:00
-
4c36a4ded3
docs(reviews): 2026-07-03 adversarial review + market feature scan
Aaron D. Lee
2026-07-04 00:00:15 -04:00
-
78435f7145
slice-4 (dev-a): Task 9 Step 1 — primary-path barge-in e2e (wedge #1) (#10)
Aaron D. Lee
2026-07-04 01:53:59 +00:00
-
0eb20b729a
docs(reviews/2026-07-03): P4 fix — sweep status staleness + re-aim fuzz/README (#11)
Aaron D. Lee
2026-07-04 01:44:27 +00:00
-
276dc5ac45
slice-4 (dev-b): TapAudioPipe::barge_in_flush + advisory_tx + MockRealtimeBrain schedule (#9)
Aaron D. Lee
2026-07-04 01:43:41 +00:00
-
bc7e8f1acd
slice-4 (dev-a): Reflex<P> + LocalVadReflex<P> (Task 2 + 2b) (#8)
Aaron D. Lee
2026-07-03 13:50:36 +00:00
-
8cde52b1d3
Merge pull request 'slice-4 (dev-a): Task 1 — AdvisoryEvent + ReflexMetrics + barge_in_flush trait' (#7) from slice-4-dev-a-reflex into main
A.D.Lee
2026-07-03 03:37:34 +00:00
-
-
d06e79cc50
docs(media): add reflex module-map entry to lib.rs catalogue (slice-4 §3.1)
Aaron D. Lee
2026-07-02 17:50:54 -04:00
-
0b054e76f4
feat(media): AdvisoryEvent + ReflexMetrics + barge_in_flush trait (slice-4 §3.1, §3.3)
Aaron D. Lee
2026-07-02 17:47:43 -04:00
-
-
3f494cb919
spec+plan(slice-4): barge-in / VAD-driven playout kill on dedicated media thread (#6)
A.D.Lee
2026-07-03 03:06:58 +00:00
-
7270a608dc
docs: require DCO signoff on every commit (fixes #6 from adversarial review)
opencode controller
2026-07-01 20:12:49 -04:00
-
aae485536e
docs: PM-mode discipline + multi-agent relay coordination protocol
opencode controller
2026-07-01 20:04:10 -04:00
-
-
c30a45232d
Slice 3 — OpenAI Realtime brain: swap echo for the brain (#4)
A.D.Lee
2026-07-01 22:25:09 +00:00