Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
249 commits
Select commit Hold shift + click to select a range
66bfb6e
docs: 7.0.4 stable — winget stubs, NuGet/docs, PERF-GATES note
justcoding121 Sep 1, 2026
8c56ce2
Merge pull request #1012 from justcoding121/release/docs-winget-7.0.4…
justcoding121 Sep 1, 2026
aff2b8d
feat(inspector): Help menu About dialog and channel-aware updates
justcoding121 Sep 1, 2026
a1ebde4
ci(release): Authenticode-sign Windows assets via Azure Artifact Sign…
justcoding121 Sep 2, 2026
bae2429
feat(packaging): install trust formats (DMG, AppImage, deb/rpm, GPG, …
justcoding121 Sep 2, 2026
bc786ff
fix(release): notarize containers only; patchelf .so filter; clear ex…
justcoding121 Sep 2, 2026
a8f9a6b
fix(packaging): GPG pubkey + AppImage CI for polished beta (#1017)
justcoding121 Sep 2, 2026
c1725e9
fix(packaging): AppImage output path + required desktop icon (#1018)
justcoding121 Sep 2, 2026
044b5e4
packaging: fill Flathub/Homebrew from polished beta; add catalog smok…
justcoding121 Sep 2, 2026
d3c0324
fix(packaging): Flatpak icon + brew tap smoke (#1020)
justcoding121 Sep 2, 2026
f366a47
chore: bump VersionPrefix to 7.0.5 for signed stable (#1021)
justcoding121 Sep 2, 2026
5febd1c
packaging: retarget catalogs to signed v7.0.5 (#1022)
justcoding121 Sep 2, 2026
762e0b6
docs(packaging): refresh Flathub/winget PR links; fix Inspector Licen…
justcoding121 Sep 2, 2026
be6926a
fix(flatpak): satisfy Flathub finish-args linter (#1024)
justcoding121 Sep 2, 2026
703806a
chore(packaging): Inspector-only Flathub setup; drop CLI Flatpak (#1026)
justcoding121 Sep 3, 2026
590039c
ci: add flatpak-builder-lint smoke workflow (#1025)
justcoding121 Sep 3, 2026
60f5b03
fix(updates): stop false same-version reinstalls across Inspector, CL…
justcoding121 Sep 3, 2026
b89eb32
fix(inspector): gate session menus and improve status feedback
justcoding121 Sep 3, 2026
1115da0
fix(inspector): make session search scope honest for spill and retention
justcoding121 Sep 3, 2026
64da912
Improve OS and Firefox root CA trust UX across platforms.
justcoding121 Sep 3, 2026
bbca41f
Improve Firefox quit, Snap/Flatpak discovery, and Windows trust prompts.
justcoding121 Sep 3, 2026
7895c7e
Update documentation
github-actions[bot] Sep 3, 2026
407f728
fix(ci): retry DocFX publish without add-and-commit stash conflicts.
justcoding121 Sep 3, 2026
506ac0e
Update documentation
github-actions[bot] Sep 3, 2026
b6d9094
feat(inspector): add theme selection and polish light/dark UX
justcoding121 Sep 3, 2026
8789af6
feat(inspector): transient status feedback and grid selection polish
justcoding121 Sep 3, 2026
a81f066
feat(inspector): unify proxy exclusions UX across Inspector, library,…
justcoding121 Sep 3, 2026
8ceb4c2
fix(inspector): improve selection and accent button contrast.
justcoding121 Sep 4, 2026
651ffe4
feat: make MITM exclusion lists overridable via Merge/Replace.
justcoding121 Sep 4, 2026
f49d923
fix(inspector): use default font sizes in exclusions dialog.
justcoding121 Sep 4, 2026
844f3ec
fix(inspector): tidy Help/Options menus for updates and exclusions.
justcoding121 Sep 4, 2026
609ebfc
fix(inspector): keep details pane closed after clear; prompt for CA e…
justcoding121 Sep 4, 2026
e80d649
fix(inspector): support PEM when exporting the root CA certificate.
justcoding121 Sep 4, 2026
93e4d02
fix(inspector): cover root CA .cer/.pem export formats in tests.
justcoding121 Sep 4, 2026
0ab99ba
fix(inspector): load DER CA export via X509CertificateLoader in tests.
justcoding121 Sep 4, 2026
affff1d
feat: resolve client process IDs on Linux and macOS in Inspector.
justcoding121 Sep 4, 2026
1e76ed3
fix(inspector): harden macOS menus, CA trust, and local HTTP/3.
justcoding121 Sep 4, 2026
ab69484
fix(inspector): set Application.Name for macOS menu bar.
justcoding121 Sep 4, 2026
e351540
fix(proxy): harden macOS login-keychain SSL trust for MITM.
justcoding121 Sep 5, 2026
688f7e0
fix(inspector): Mac SSL trust wait dialog and current-OS trust copy.
justcoding121 Sep 5, 2026
137406e
chore: ignore local H3 upgrade probe tooling.
justcoding121 Sep 5, 2026
dbfa3af
fix(packaging): ship OS desktop icons for Linux deb/rpm and macOS bun…
justcoding121 Sep 5, 2026
3e8dd5d
fix(proxy): load app-local MsQuic for macOS Debug CLI/Inspector.
justcoding121 Sep 5, 2026
7e43610
docs: correct remasure spelling to remeasure.
justcoding121 Sep 5, 2026
3e0ab49
fix(linux): route Chrome through Inspector system proxy and make CA i…
justcoding121 Sep 5, 2026
7788830
test(inspector): click every menu command via headless UI automation
justcoding121 Sep 5, 2026
fe707ca
fix(linux): apply system proxy on every desktop without crashing Insp…
justcoding121 Sep 5, 2026
b64557c
fix(proxy): validate Chrome/Firefox policy formats and verify OS prox…
justcoding121 Sep 5, 2026
5d235c8
fix(proxy): separate H2 SoftGrow from SoftPick and cut origin ReadLoo…
justcoding121 Sep 5, 2026
011ef88
Merge branch 'develop' of https://github.com/justcoding121/titanium-w…
justcoding121 Sep 5, 2026
3ee6985
fix(proxy): bypass Git HTTPS forges when system proxy is enabled
justcoding121 Sep 5, 2026
79497f9
revert(proxy): drop Git forge hosts from factory OS bypass
justcoding121 Sep 5, 2026
09c3247
feat(inspector): add File → Exit menu item
justcoding121 Sep 5, 2026
c3bfdb6
fix(linux): harden system proxy apply and keep browser restart guidance
justcoding121 Sep 5, 2026
acb7d91
fix(linux): route Chrome via profile Preferences when system proxy is on
justcoding121 Sep 5, 2026
e1415cc
fix(linux): instantly switch Chrome proxy on enable and Inspector exit
justcoding121 Sep 5, 2026
939b313
fix(proxy): raise cleartext H2 SoftGrow to 8 under SoftPick=SETTINGS.
justcoding121 Sep 5, 2026
a0590c7
feat(inspector): pin allowed Store apps and add check/uncheck all.
justcoding121 Sep 5, 2026
7fb6eef
fix(macos): make Firefox honor Inspector system proxy and root CA
justcoding121 Sep 5, 2026
64f6c9e
fix(linux): cover Chrome, Edge, and Firefox for system proxy and CA
justcoding121 Sep 5, 2026
55f0505
test(proxy): block OS cert UI in unit suites; add Windows browser E2E.
justcoding121 Sep 5, 2026
75ddd5f
test(inspector): add desktop probe; harden unit cert silence.
justcoding121 Sep 5, 2026
6411646
fix(ci): add Mac MITM H3→H1 plain Full gate floor 0.60.
justcoding121 Sep 5, 2026
343a02d
fix(probe): launch Firefox with temp system-proxy profile.
justcoding121 Sep 5, 2026
365745a
docs(wiki): paste Mac compare-product tables from SoftGrow SoftPick r…
justcoding121 Sep 5, 2026
fa99334
perf(h2): index :path under HPACK and skip nested encode lock on origin.
justcoding121 Sep 5, 2026
1c092c8
fix(inspector): stop Allow Store apps Check all from hanging.
justcoding121 Sep 5, 2026
5fc0fac
test(probe): capture Edge and Safari via macOS system proxy.
justcoding121 Sep 5, 2026
88678f4
docs(proxy): note SoftGrow TLS=24 A/B rejected for Mac H1→H2.
justcoding121 Sep 5, 2026
49ae22e
chore(packaging): drop Flatpak/Flathub support for Inspector
justcoding121 Sep 5, 2026
10de8f5
docs: drop Flathub mention from download page
justcoding121 Sep 5, 2026
2c209ee
feat(cli): add OS service install and nested command help.
justcoding121 Sep 5, 2026
f808a38
perf(proxy): Mac H2 origin inline body + SoftGrow SoftPick TLS.
justcoding121 Sep 5, 2026
ae0906c
perf(proxy): keep SoftGrow TLS=16 with inline body (SoftPick/8 reject…
justcoding121 Sep 5, 2026
3e0476f
feat(qa): add CliQaProbe solo CLI matrix and fix TLS leaf load.
justcoding121 Sep 5, 2026
e13f69b
fix(qa): rename conf dialect steps and tighten CliQaProbe asserts.
justcoding121 Sep 5, 2026
3677c22
perf(proxy): SoftGrow SoftPick for TLS and cleartext origin H2.
justcoding121 Sep 5, 2026
1ac72f5
docs(proxy): note SoftCap/4 SoftGrow rejected vs SoftPick on long Mac…
justcoding121 Sep 5, 2026
30f0de0
perf(proxy): replace origin H2 ConcurrentDictionary with stream-id ta…
justcoding121 Sep 5, 2026
9469a84
docs(proxy): reject SoftGrow=min(SoftCap,32); keep SoftPick after str…
justcoding121 Sep 5, 2026
9148d3f
fix(qa): Mac SoftPick pool dig tooling and compare-product floors.
justcoding121 Sep 5, 2026
22d3d03
perf(proxy): MaxOrigin=1 under SoftPick SoftGrow for Mac dual-TLS H2.
justcoding121 Sep 5, 2026
efa4fd7
perf(proxy): Offer H1→H2 ALPN seed only when origin pool is empty.
justcoding121 Sep 5, 2026
1dc622f
chore(probe): fold SystemTrustProbe into InspectorDesktopProbe.
justcoding121 Sep 5, 2026
5782cce
fix(qa): stabilize desktop probe shutdown and CliQaProbe TLS.
justcoding121 Sep 5, 2026
8d364a8
fix(qa): lower Mac MITM Full÷Reverse floors after Offer-once remasure.
justcoding121 Sep 5, 2026
f999297
perf(proxy): brief FrameWriter drain spin to coalesce MaxOrigin=1 HEA…
justcoding121 Sep 6, 2026
00c0408
fix(proxy): rewrite TLS-terminate Host and accept untrusted MITM orig…
justcoding121 Sep 6, 2026
1ea8e73
test(qa): restore CliQaProbe TLS client Host as localhost.
justcoding121 Sep 6, 2026
7fab83f
fix(cli): make macOS service install work from a dotnet-hosted CLI.
justcoding121 Sep 6, 2026
881df72
feat(qa): add Inspector chrome walk and CLI elevation UX.
justcoding121 Sep 6, 2026
7205e51
test(qa): run CliQaProbe Linux services as login user with sudo.
justcoding121 Sep 6, 2026
489606a
fix(qa): point YARP H3 origin destinations at localhost.
justcoding121 Sep 7, 2026
08d5b9b
perf(http3): cache identical origin QPACK request blocks.
justcoding121 Sep 7, 2026
91b5678
feat(qa): add nginx proxy_ssl HTTPS-origin reverse peers.
justcoding121 Sep 7, 2026
fbcbc51
docs(perf): add practical reverse RPS bar charts for README and website.
justcoding121 Sep 7, 2026
024bd68
docs: drop the dense Performance chart caption from the README.
justcoding121 Sep 7, 2026
8c81e16
feat(cli): add update --remove-plus and probe Plus update coverage.
justcoding121 Sep 7, 2026
bfafbf2
docs: clarify README and home pages for adopters.
justcoding121 Sep 7, 2026
58fb440
docs: use expansion (ACRONYM) on first mention.
justcoding121 Sep 7, 2026
3e0ac40
docs: clarify RPS and CLI edition “best for” copy.
justcoding121 Sep 7, 2026
9345d6c
docs: align site and wiki with v7.0.5 and schema 7.1.
justcoding121 Sep 7, 2026
1b975bb
docs: clarify YARP is from Microsoft in README Performance.
justcoding121 Sep 7, 2026
1e3d68b
Add gRPC-JSON transcoding for Plus with CLI config and Inspector supp…
justcoding121 Sep 7, 2026
637dd66
Add Map Local file-backed AutoResponder rules to Inspector.
justcoding121 Sep 7, 2026
cea2fd9
Add Map Remote URL rewrite rules to Inspector.
justcoding121 Sep 7, 2026
f2c7cc7
Add Copy as curl and fetch for Inspector sessions.
justcoding121 Sep 7, 2026
a1c51b2
Add offline Session Diff for Inspector captures.
justcoding121 Sep 7, 2026
f5d5ac9
Add GraphQL operationName matching for Inspector tools.
justcoding121 Sep 7, 2026
f31b56f
Add richer route transform operations to the CLI engine.
justcoding121 Sep 7, 2026
7257006
Add opt-in JSON access logs for CLI runs.
justcoding121 Sep 7, 2026
2ad85b6
Reload CLI routes and clusters on SIGHUP without dropping listeners.
justcoding121 Sep 7, 2026
bb0e805
Add Plus circuit breaker outlier ejection for failing destinations.
justcoding121 Sep 7, 2026
59a610f
Add Plus bounded connection retries for idempotent methods.
justcoding121 Sep 7, 2026
9173ab6
Add Plus API key and HTTP Basic authentication.
justcoding121 Sep 7, 2026
1098442
Add Plus CORS preflight and Access-Control response headers.
justcoding121 Sep 7, 2026
343a4f8
Add Inspector protobuf wire-format decode on inspect.
justcoding121 Sep 7, 2026
b288a10
Add first-class WebSocket and SSE viewers to Inspector.
justcoding121 Sep 7, 2026
0bd0600
Add gRPC-JSON streaming frames and optional gzip compression.
justcoding121 Sep 7, 2026
3f4a747
Add Inspector network throttle profiles for capture.
justcoding121 Sep 7, 2026
15670cf
Add CLI E2E and CliQaProbe coverage for transforms, access logs, relo…
justcoding121 Sep 7, 2026
67e4aec
Register Inspector E2E and desktop probe scenarios for capture tools.
justcoding121 Sep 7, 2026
b49be4c
Refresh Performance.md RPS tables @ 024bd68d and raise product gates …
justcoding121 Sep 7, 2026
80eb308
Include nginx proxy_ssl HTTPS-origin peers in practical RPS charts.
justcoding121 Sep 7, 2026
a416eee
Fix SIGHUP parent forward and native JSON Plus dialect drop.
justcoding121 Sep 7, 2026
a5ecfb1
Cut MITM Lite tax with COW baselines and inline H2 dispatch.
justcoding121 Sep 7, 2026
dac4111
Fix nullable MITM relay helpers for GHA TreatWarningsAsErrors.
justcoding121 Sep 7, 2026
3797cfe
Cut more MITM Lite alloc tax on the H2 hot path.
justcoding121 Sep 7, 2026
5585864
Fix MITM Lite gate for MutationCount-only COW baselines.
justcoding121 Sep 7, 2026
f1f0c00
Defer HeaderCollection ReadOnlyDictionary wrappers until first access.
justcoding121 Sep 7, 2026
b27b252
Honor COW append-log baselines in AllowsCompressedRelay.
justcoding121 Sep 7, 2026
f268fe6
Fix reverse H3→H3 flush stall and cut H2 MITM Lite frame-loop tax.
justcoding121 Sep 7, 2026
ef2652b
Reuse H2 MyHeaderListener and match pseudos by bytes.
justcoding121 Sep 7, 2026
160ec2f
Defer Response and InternalDataStore until first use on sessions.
justcoding121 Sep 7, 2026
071dcda
Tighten lazy Response init and shrink HeaderCollection maps.
justcoding121 Sep 7, 2026
7a667a2
Keep HttpHeader bytes in MITM append-log HPACK finish.
justcoding121 Sep 7, 2026
9b8c7bd
Defer H2 MITM re-encode frame header buffer until needed.
justcoding121 Sep 7, 2026
c1ff68c
Avoid eager Response materialization on H3 Locked checks.
justcoding121 Sep 7, 2026
27d2967
Skip origin QUIC FlushAsync on Darwin for H3 reverse RPS.
justcoding121 Sep 7, 2026
b82d08e
Revert Darwin-only skip of origin QUIC FlushAsync.
justcoding121 Sep 8, 2026
ef1fa64
Cut H2 MITM Lite tax with sync relay finish and header-map swap.
justcoding121 Sep 8, 2026
7ec5359
Extend H2 MITM sync finish to Full static append-relay.
justcoding121 Sep 8, 2026
6ee422a
Share HPACK static-table HttpHeader instances on indexed decode.
justcoding121 Sep 8, 2026
79daa7d
Intern common HTTP/2 method strings on MITM header decode.
justcoding121 Sep 8, 2026
b944541
Flush H3 client stream before CompleteWrites on verbatim relay.
justcoding121 Sep 8, 2026
ae55b7e
Pack QUIC FIN on the last H3 frame write without skipping Flush.
justcoding121 Sep 8, 2026
148122b
Cut H2 MITM response Lite tax with sync static finish.
justcoding121 Sep 8, 2026
701305e
Cut H3→H3 MITM Lite tax with QPACK capture before BeforeResponse.
justcoding121 Sep 8, 2026
4c19d5d
Reuse SessionEventArgs across H2 MITM streams on one connection.
justcoding121 Sep 8, 2026
e3da48e
Revert "Reuse SessionEventArgs across H2 MITM streams on one connecti…
justcoding121 Sep 8, 2026
ba9302b
Patch H2 :scheme in place on mixed-transport compressed relay.
justcoding121 Sep 8, 2026
e7e41ef
Lower product MITM gates to Lite 0.65 / Full 0.55.
justcoding121 Sep 8, 2026
f606c30
Harden RPS failure paths, split oversized files, and clear Inspector …
justcoding121 Sep 8, 2026
4b04781
Fix solution Release build on Linux/macOS CI.
justcoding121 Sep 8, 2026
ddc3a87
Unblock Windows warnaserror and Linux E2E-UI after the Inspector split.
justcoding121 Sep 8, 2026
73e7eee
Close the access-log writer before tests read the NDJSON file.
justcoding121 Sep 8, 2026
33e4c63
Read the CLI access log with FileShare.ReadWrite in E2E.
justcoding121 Sep 8, 2026
158e80b
Apply Via on reverse intercept and keep HTTP/2 frame-writer drain unc…
justcoding121 Sep 8, 2026
d8706aa
Relay live Content-Length on the H11→H2 fast path so POST bodies are …
justcoding121 Sep 8, 2026
53951fe
Fix H2 body-pipe lifecycle races and UDP-only self-loop false positives.
justcoding121 Sep 8, 2026
035e1ef
Update documentation
github-actions[bot] Sep 8, 2026
5e2eca3
Clear Sonar reliability and security debt without touching the RPS su…
justcoding121 Sep 8, 2026
e5a89e3
Give Forced H3 the full connect timeout instead of the 3s Alt-Svc fai…
justcoding121 Sep 8, 2026
7fd1423
Update documentation
github-actions[bot] Sep 8, 2026
5a1cfa4
Cover remaining Unix trust, Inspector, and CLI paths on the Windows c…
justcoding121 Sep 8, 2026
ab6d518
Silence CA1416 in CLI service-manager coverage so Release --warnaserr…
justcoding121 Sep 8, 2026
1ff3e37
Skip launchd StatusAsync off macOS so Windows CI does not P/Invoke libc.
justcoding121 Sep 8, 2026
e290dfb
Drop the always-true null check that Sonar rates as a new-code bug, a…
justcoding121 Sep 8, 2026
8fe130d
Cover leftover Inspector, Unix-trust, and CLI helper paths on the Win…
justcoding121 Sep 8, 2026
b18a0bd
Cover remaining validator, static-file, trust-recovery, and Unix help…
justcoding121 Sep 8, 2026
cfa68f0
Clear remaining Sonar new-code smells and cover leftover Inspector, H…
justcoding121 Sep 8, 2026
0c996e5
Update documentation
github-actions[bot] Sep 8, 2026
e1238f6
Clear remaining Sonar new-code bugs and smells, and cover leftover gR…
justcoding121 Sep 8, 2026
512c5d2
Cover leftover Inspector snapshot fill and capture commands, and add …
justcoding121 Sep 9, 2026
e90a009
Keep DesktopShell catch-path coverage from launching a file manager o…
justcoding121 Sep 9, 2026
b01790b
Cover the HTTP/3 to HTTP/1.1 TCP fast path against a local origin, pl…
justcoding121 Sep 9, 2026
f4faa54
Send the HTTP/3 TCP fast-path probe with a Host header HttpListener a…
justcoding121 Sep 9, 2026
c1293db
Exercise HTTP/3 to HTTP/1.1 session forwarding against a local origin…
justcoding121 Sep 9, 2026
f3b87ba
Add Chocolatey packages for CLI and Inspector with auto-publish on re…
justcoding121 Sep 9, 2026
2913f8e
Stop Composer E2E waits from matching the in-flight busy status so Ex…
justcoding121 Sep 9, 2026
a7c2fa6
Include H2 TLS→h2c in the practical reverse RPS chart.
justcoding121 Sep 9, 2026
24e85f8
Remove the basic console screenshot from the README.
justcoding121 Sep 9, 2026
66cf4f2
Tidy README screenshots: drop the Screenshots heading and show the co…
justcoding121 Sep 9, 2026
16968fc
Move the Inspector screenshot under the Installation Inspector section.
justcoding121 Sep 9, 2026
5f284a5
Show the Inspector screenshot above stable downloads so the desktop a…
justcoding121 Sep 9, 2026
02b4216
Cover more Sonar new-code paths toward the 80% new_coverage gate.
justcoding121 Sep 9, 2026
b12b0e9
Show one Linux practical RPS chart on the home page so performance is…
justcoding121 Sep 9, 2026
89f1e79
Add another Sonar new-code coverage batch for H2 helpers, H3 MITM, an…
justcoding121 Sep 9, 2026
b325c67
Cover remaining Trust, Firefox, H3 bridge, and TCP factory seams for …
justcoding121 Sep 9, 2026
07266cb
Fix new Sonar S2699 smells and add a small Happy-Eyeballs/cert covera…
justcoding121 Sep 9, 2026
e3455d9
Push Sonar new_coverage over the last fraction under 80%.
justcoding121 Sep 9, 2026
434b7ab
Cover StatusCodeBytes default branch and ResponseMayHaveBody edges fo…
justcoding121 Sep 9, 2026
fbfa76b
Cover CertificateManager IsSelfSigned and related helpers for the las…
justcoding121 Sep 9, 2026
7b346e1
Bound RPS ramp arms so a stuck MsQuic/bombardier/READY wait cannot bu…
justcoding121 Sep 9, 2026
f9f428c
Lead README with performance and Inspector, and point CLI users at se…
justcoding121 Sep 9, 2026
8094eb0
Present winget and Chocolatey as pick-one options so users do not run…
justcoding121 Sep 9, 2026
486e259
Lower product RPS gates to MITM Lite/Full ≥0.50 and reverse TWP÷YARP …
justcoding121 Sep 9, 2026
84b225f
Hard-fail RPS gate steps on workflow_dispatch too so gate misses show…
justcoding121 Sep 9, 2026
a3843a8
Fold README edition download links into the product column so the tab…
justcoding121 Sep 9, 2026
0e7cdc9
Buffer Plus response cache in BeforeResponse so fills work without se…
justcoding121 Sep 9, 2026
1d0a0df
Keep PolyForm Noncommercial off product copy so MIT Core and CLI are …
justcoding121 Sep 9, 2026
ec3e536
Add HAProxy and Envoy as Linux/macOS RPS terminate peers.
justcoding121 Sep 9, 2026
3854302
Lower product TWP÷YARP gate to 0.75 and refresh Performance wiki @ 84…
justcoding121 Sep 9, 2026
63bc1b9
Fix HAProxy and Envoy RPS peer startup on Linux.
justcoding121 Sep 9, 2026
c0e40a0
Fix HAProxy trailing newline and Envoy YAML list indentation.
justcoding121 Sep 9, 2026
9a4ac6e
Fix duplicate conf variable in HAProxy/Envoy host startup.
justcoding121 Sep 9, 2026
209ec6c
Ignore broken Chrome apt mirrors on Linux RPS runners.
justcoding121 Sep 9, 2026
19085e9
Tolerate Chrome apt hash mismatches on Linux RPS installs.
justcoding121 Sep 9, 2026
d59bab2
Also tolerate Chrome apt failures in HAProxy and libmsquic install st…
justcoding121 Sep 9, 2026
9da62a1
Fix Envoy virtual_host YAML indent (illegal map under scalar name).
justcoding121 Sep 9, 2026
803a69b
Fix Envoy TLS/QUIC YAML: nest typed_config under transport_socket.
justcoding121 Sep 9, 2026
f1ca48b
Enable HAProxy and Envoy HTTP/3 on GHA Linux
justcoding121 Sep 9, 2026
97466f9
Enable HAProxy and Envoy HTTP/3 on GHA macOS
justcoding121 Sep 9, 2026
8d22273
Fix macOS HAProxy USE_QUIC check under pipefail
justcoding121 Sep 9, 2026
68ab49a
Avoid redundant H3 CompleteWrites after STREAM+FIN + Flush. (#1027)
justcoding121 Sep 9, 2026
d210a31
Publish HAProxy/Envoy RPS peers into wiki tables and charts.
justcoding121 Sep 10, 2026
e786b87
Fix product-matrix YARP/H2 arm mapping and regenerate reverse PNGs fr…
justcoding121 Sep 10, 2026
1a1d78f
Add product-possible nginx/HAProxy/Envoy reverse wires for the full 5…
justcoding121 Sep 10, 2026
9a2b3a1
Shard RPS arms by comparison group and finish compare-grpc.
justcoding121 Sep 10, 2026
241b13a
Fix macOS RPS artifact shard names for Bash 3.2.
justcoding121 Sep 10, 2026
6a990a4
Lower reverse TWP÷YARP product gate from 0.75 to 0.70.
justcoding121 Sep 10, 2026
e57b9a3
Merge practical RPS charts into one 10-cluster image per OS.
justcoding121 Sep 10, 2026
06270cd
Align website performance gate copy with TWP÷YARP 0.70 floor.
justcoding121 Sep 10, 2026
c34915e
Simplify performance copy for general readers.
justcoding121 Sep 10, 2026
1e064c2
Publish wiki Performance tables and charts from GHA CSV batch.
justcoding121 Sep 10, 2026
8520a2b
Pack chart bars: omit 0 / n/a peers so clusters have no empty slots.
justcoding121 Sep 10, 2026
b87b458
Widen packed chart bars to fill each cluster when peers are omitted.
justcoding121 Sep 10, 2026
f5fde34
Make docs consumer-friendly and harden RPS peer hosts.
justcoding121 Sep 10, 2026
b0e51e8
Keep packed chart bar width fixed when 0 / n/a peers are omitted.
justcoding121 Sep 10, 2026
2dbcea8
Fix Envoy H3 bootstrap YAML: quote alt-svc with single quotes.
justcoding121 Sep 10, 2026
a5ba276
Enable HAProxy limited-quic for OpenSSL QUIC compat builds.
justcoding121 Sep 10, 2026
1ab31ad
Frame tiny-GET H2\leftrightarrow H2 as Titanium best case, not typica…
justcoding121 Sep 10, 2026
486c9e7
Simplify docs jargon for general readers.
justcoding121 Sep 10, 2026
15351b8
Fix Envoy alt-svc: response_headers_to_add belongs on Route, not Rout…
justcoding121 Sep 10, 2026
4723e22
Point install docs at Download for all OS; drop unpublished package m…
justcoding121 Sep 10, 2026
c6f1b9e
Cover MITM static-rebuild rejects and control-plane parse edges for t…
justcoding121 Sep 10, 2026
4075973
Close Linux H3 peer gaps: localhost dual-stack + QuicTLS HAProxy.
justcoding121 Sep 10, 2026
66a9fac
Drop RPS best-case framing from README and website.
justcoding121 Sep 10, 2026
bec67e8
Fix Linux Envoy H3 cliff and overlay peer-fix wiki merges.
justcoding121 Sep 10, 2026
9088609
Harden Envoy H3 under load: single QUIC conn + larger breakers.
justcoding121 Sep 10, 2026
35eaeb5
Enlarge practical RPS chart legend and axis fonts so product labels s…
justcoding121 Sep 10, 2026
bc02e32
Revert Envoy-only H3 load workarounds for fair peer comparisons.
justcoding121 Sep 10, 2026
beb3631
Publish H2/H3 peer RPS and order practical charts H1→H2→H3→workloads.
justcoding121 Sep 10, 2026
60d696f
Simplify practical chart footer: wires, workloads, runner shape.
justcoding121 Sep 10, 2026
903a0c6
Practical chart: use GET 64 KiB H1 TLS→H1c instead of POST.
justcoding121 Sep 10, 2026
2aaa8ac
Docs: practical chart uses GET 64 KiB H1 TLS→H1c, not POST.
justcoding121 Sep 10, 2026
37dd70d
Split practical RPS into tiny-GET and 64 KB charts.
justcoding121 Sep 10, 2026
bdd6d1e
Drop wiki product-matrix and heavier RPS charts; keep practical chart…
justcoding121 Sep 10, 2026
311fe6a
Harden TLS leaf E2E against QUIC flakes; Chocolatey copyright and NC …
justcoding121 Sep 10, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
47 changes: 47 additions & 0 deletions .github/actions/azure-artifact-sign/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
name: Azure Artifact Sign
description: Sign PE/MSI files with Azure Artifact Signing (OIDC via azure/login in the caller)

inputs:
files:
description: Comma or newline-separated absolute paths to sign
required: true
endpoint:
description: Artifact Signing account endpoint
required: true
signing-account-name:
description: Artifact Signing account name
required: true
certificate-profile-name:
description: Certificate profile name
required: true
description:
description: Authenticode description
required: false
default: Titanium Web Proxy

runs:
using: composite
steps:
- name: Sign files
uses: azure/artifact-signing-action@v2
with:
endpoint: ${{ inputs.endpoint }}
signing-account-name: ${{ inputs.signing-account-name }}
certificate-profile-name: ${{ inputs.certificate-profile-name }}
files: ${{ inputs.files }}
file-digest: SHA256
timestamp-rfc3161: http://timestamp.acs.microsoft.com
timestamp-digest: SHA256
description: ${{ inputs.description }}
description-url: https://github.com/justcoding121/titanium-web-proxy
# azure/login already established Azure CLI; skip slower credential types.
exclude-environment-credential: true
exclude-workload-identity-credential: true
exclude-managed-identity-credential: true
exclude-shared-token-cache-credential: true
exclude-visual-studio-credential: true
exclude-visual-studio-code-credential: true
exclude-azure-cli-credential: false
exclude-azure-powershell-credential: true
exclude-azure-developer-cli-credential: true
exclude-interactive-browser-credential: true
51 changes: 51 additions & 0 deletions .github/workflows/chocolatey-publish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
name: chocolatey-publish

on:
workflow_dispatch:
inputs:
release_tag:
description: 'GitHub release tag (e.g. v7.0.5 or v7.0.5-beta)'
required: true
type: string

permissions:
contents: read

jobs:
publish:
runs-on: windows-latest
steps:
- name: Require CHOCOLATEY_API_KEY
env:
CHOCOLATEY_API_KEY: ${{ secrets.CHOCOLATEY_API_KEY }}
shell: pwsh
run: |
if ([string]::IsNullOrWhiteSpace($env:CHOCOLATEY_API_KEY)) {
throw 'CHOCOLATEY_API_KEY repository secret is not set.'
}

- uses: actions/checkout@v6

- name: Pack and push chocolatey packages
env:
CHOCOLATEY_API_KEY: ${{ secrets.CHOCOLATEY_API_KEY }}
RELEASE_TAG: ${{ inputs.release_tag }}
shell: pwsh
run: |
$ErrorActionPreference = 'Stop'
$tag = $env:RELEASE_TAG.Trim()
if ($tag -notmatch '^v') { $tag = "v$tag" }
pwsh ./tools/packaging/chocolatey/bump-packages.ps1 -Tag $tag
$cliAsset = "https://github.com/$env:GITHUB_REPOSITORY/releases/download/$tag/Titanium.Cli-win-x64.zip"
$msiAsset = "https://github.com/$env:GITHUB_REPOSITORY/releases/download/$tag/TitaniumInspector-win-x64.msi"
Invoke-WebRequest -Method Head -Uri $cliAsset -UseBasicParsing | Out-Null
Invoke-WebRequest -Method Head -Uri $msiAsset -UseBasicParsing | Out-Null
Push-Location tools/packaging/chocolatey/titanium-cli
choco pack --output-directory .
Pop-Location
Push-Location tools/packaging/chocolatey/titanium-inspector
choco pack --output-directory .
Pop-Location
Get-ChildItem tools/packaging/chocolatey -Recurse -Filter *.nupkg | ForEach-Object {
choco push $_.FullName --source https://push.chocolatey.org/ --api-key $env:CHOCOLATEY_API_KEY
}
52 changes: 37 additions & 15 deletions .github/workflows/dotnetcore.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ jobs:
runs-on: windows-latest
timeout-minutes: 60
permissions:
# write: Publish Documentation (EndBug/add-and-commit) pushes DocFX output to develop.
# write: Publish Documentation pushes DocFX output to develop.
# GITHUB_TOKEN with contents:read cannot push (403 github-actions[bot]).
contents: write
# SonarCloud / PR decoration when token is present
Expand Down Expand Up @@ -134,22 +134,42 @@ jobs:
shell: pwsh
run: .\.sonar\scanner\dotnet-sonarscanner end /d:sonar.token="$env:SONAR_TOKEN"

- name: Update Documentation
if: github.ref == 'refs/heads/develop'
run: docfx .github/docfx.json

# DocFX output races other develop pushes (incl. concurrent "Update documentation").
# Sync to origin/develop, regenerate, commit docs-only, retry push — never fail the
# job on stash/rebase conflicts from EndBug/add-and-commit autostash.
- name: Publish Documentation
if: github.ref == 'refs/heads/develop'
uses: EndBug/add-and-commit@a94899bca583c204427a224a7af87c02f9b325d5 # v9
with:
default_author: github_actions
message: Update documentation
committer_name: GitHub Actions
committer_email: actions@github.com
# Only commit DocFX output -- never Sonar/coverage/tool install artifacts
add: 'docs'
# DocFX often races another develop push; rebase instead of failing the job.
pull: '--rebase --autostash'
shell: pwsh
run: |
git config user.name "github-actions[bot]"
git config user.email "41898282+github-actions[bot]@users.noreply.github.com"

for ($attempt = 1; $attempt -le 5; $attempt++) {
Write-Host "Publish documentation attempt $attempt"
git fetch origin develop
if ($LASTEXITCODE -ne 0) { throw "git fetch failed" }
git reset --hard origin/develop
if ($LASTEXITCODE -ne 0) { throw "git reset failed" }
docfx .github/docfx.json
if ($LASTEXITCODE -ne 0) { throw "docfx failed" }
git add -- docs
if (-not (git status --porcelain -- docs)) {
Write-Host "No documentation changes to publish."
exit 0
}
git -c user.name="github-actions[bot]" -c user.email="41898282+github-actions[bot]@users.noreply.github.com" `
commit --author="github-actions <41898282+github-actions[bot]@users.noreply.github.com>" `
-m "Update documentation"
if ($LASTEXITCODE -ne 0) { throw "git commit failed" }
git push origin HEAD:develop
if ($LASTEXITCODE -eq 0) {
Write-Host "Documentation published."
exit 0
}
Write-Host "Push rejected (develop moved); retrying..."
Start-Sleep -Seconds (2 * $attempt)
}
throw "Failed to publish documentation after retries"

# Cross-OS Inspector + Plus dashboard UI gates (Headless / Visual / Playwright).
# Inspector unit suite stays on Windows `build` only except Inspector-Stress (below).
Expand Down Expand Up @@ -426,6 +446,8 @@ jobs:

# Product zips stay on release.yml (v* tags). After beta/stable merge, create/move the
# version tag and dispatch release.yml (GITHUB_TOKEN tag pushes do not re-trigger workflows).
# release.yml also packs/pushes Chocolatey (titanium-cli / titanium-inspector) after the
# GitHub Release exists — no separate chocolatey step here.
cut-product-tag:
if: github.event_name == 'push' && (github.ref == 'refs/heads/beta' || github.ref == 'refs/heads/stable')
needs: [build, ui-portable, rps-publish-gate, rps-peer-gate]
Expand Down
50 changes: 50 additions & 0 deletions .github/workflows/packaging-catalog-smoke.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
# Validate Homebrew formula against a published release tag.
# Used for beta dry-run before stable catalog submit.
name: packaging-catalog-smoke

on:
workflow_dispatch:
inputs:
release_tag:
description: 'GitHub release tag (e.g. v7.0.4-beta or v7.0.5)'
required: true
type: string
run_homebrew:
description: 'Smoke brew install from in-repo formula'
required: true
type: boolean
default: true

permissions:
contents: read

jobs:
homebrew:
if: inputs.run_homebrew
runs-on: macos-latest
timeout-minutes: 30
steps:
- uses: actions/checkout@v6

- name: Smoke brew install from tap
env:
RELEASE_TAG: ${{ inputs.release_tag }}
run: |
set -euo pipefail
FORMULA=tools/packaging/homebrew/titanium.rb
test -f "$FORMULA"
# Formula version must match tag without leading v (e.g. 7.0.4-beta).
EXPECTED="${RELEASE_TAG#v}"
grep -q "version \"$EXPECTED\"" "$FORMULA"
# Homebrew rejects bare paths; install via the published custom tap (kept in sync).
export HOMEBREW_NO_REQUIRE_TAP_TRUST=1
brew tap justcoding121/titanium
brew update || true
# Prefer in-repo formula content for the version under test by copying into a local tap.
LOCAL_TAP="$(brew --repository)/Library/Taps/justcoding121/homebrew-titanium"
mkdir -p "${LOCAL_TAP}/Formula"
cp "$FORMULA" "${LOCAL_TAP}/Formula/titanium.rb"
brew install --formula justcoding121/titanium/titanium
titanium version
brew test justcoding121/titanium/titanium
brew uninstall --formula justcoding121/titanium/titanium || true
Loading
Loading