Commit Graph
962 Commits
Author SHA1 Message Date
github-actions[bot] 5f6566cd35 chore(release): 8.5.0-dev.5 2026-06-23 01:19:59 +00:00
github-actions[bot] c02c4a7d58 chore(release): 8.5.0-dev.4 2026-06-22 20:46:14 +00:00
github-actions[bot] 824935adf6 chore(release): 8.5.0-dev.3 2026-06-22 20:38:00 +00:00
github-actions[bot] ca7757b712 chore(release): 8.5.0-dev.2 2026-06-22 20:15:34 +00:00
github-actions[bot] a5149b39e9 chore(release): 8.5.0-dev.1 2026-06-22 17:43:36 +00:00
semantic-release-bot e44babd8cc chore(release): 8.5.0 [skip ci]
## [8.5.0](https://github.com/kaitranntt/ccs/compare/v8.4.0...v8.5.0) (2026-06-21)

### Features

* **api:** add Fireworks AI provider preset ([#1543](https://github.com/kaitranntt/ccs/issues/1543)) ([a472c44](https://github.com/kaitranntt/ccs/commit/a472c440156fc549c500c649ea0033220fb97e61))
* **bar:** live Codex usage sync with force refresh and spend-chart periods ([6ed5b2d](https://github.com/kaitranntt/ccs/commit/6ed5b2d62b8a3c08a2e23478c6d4078e2ebf501c))
* **config:** add opt-in output limits for spawned CLI ([#1544](https://github.com/kaitranntt/ccs/issues/1544)) ([499aec8](https://github.com/kaitranntt/ccs/commit/499aec8a9ba9eeb27c1d183a27b3336f4e8794e8))
* **errors:** P4 typed-error taxonomy adoption (0->91% locked) + erasable-syntax fix ([7234ef8](https://github.com/kaitranntt/ccs/commit/7234ef8fcf5e3cba0c42f2bf48e075dbe33b00d4))
* **hardening:** P1 maintainability metrics baseline + freshness gate ([#1561](https://github.com/kaitranntt/ccs/issues/1561)) ([95a2864](https://github.com/kaitranntt/ccs/commit/95a2864ef3492f96098c689e16086f6e1db012d2))
* **lint:** P7 enforcement gates (no-new-throw-error + max-lines) + docs ([2f94f35](https://github.com/kaitranntt/ccs/commit/2f94f35ec35bc3710c3ab1d6f1019f704e58d4c7))
* **logging:** P2 traceability foundation - requestId wrap, daemon forwarding (#NNN) ([5e1b864](https://github.com/kaitranntt/ccs/commit/5e1b8640ab517109732affd32b430ca0b769996a)), closes [#NNN](https://github.com/kaitranntt/ccs/issues/NNN)
* **logging:** P3 hotpath console.error migration + redaction gate (928->267) ([87aeb8f](https://github.com/kaitranntt/ccs/commit/87aeb8f19331b07ed056ec49913a23b5dad417e6))

### Bug Fixes

* avoid echoing invalid channel token values ([#1542](https://github.com/kaitranntt/ccs/issues/1542)) ([e3566ed](https://github.com/kaitranntt/ccs/commit/e3566ed7650b6930fd5515527831c4a3f0924cbb))
* avoid quadratic cliproxy usage hydration ([#1537](https://github.com/kaitranntt/ccs/issues/1537)) ([f74561f](https://github.com/kaitranntt/ccs/commit/f74561fe9b48c478c002daec39b8797f1dd0ede6))
* **bar:** authenticate reused local server probes ([#1546](https://github.com/kaitranntt/ccs/issues/1546)) ([f25a101](https://github.com/kaitranntt/ccs/commit/f25a1015ed35df91ed6f145e29eaa111da6b8727))
* **bar:** avoid blocking on lower-priority probes ([#1548](https://github.com/kaitranntt/ccs/issues/1548)) ([8bd289b](https://github.com/kaitranntt/ccs/commit/8bd289bfae3e60c460ad4442d5ef46da51d43d14))
* **bar:** distinguish native Codex subscription rows ([#1552](https://github.com/kaitranntt/ccs/issues/1552)) ([ba7a2ab](https://github.com/kaitranntt/ccs/commit/ba7a2abb799515447c30c99b75ef43b9362793ea))
* **bar:** preserve Gatekeeper quarantine on install ([#1534](https://github.com/kaitranntt/ccs/issues/1534)) ([c776e18](https://github.com/kaitranntt/ccs/commit/c776e184344132ad9b5bf6d7fcca88d8251e9414))
* **bar:** tolerate duplicate rows in alert pruning ([#1553](https://github.com/kaitranntt/ccs/issues/1553)) ([84ff4d5](https://github.com/kaitranntt/ccs/commit/84ff4d57a4a03ce3dfe105fab3b25c95bc45c0e5))
* **bar:** verify CCS Bar release archive digest ([#1532](https://github.com/kaitranntt/ccs/issues/1532)) ([d2848d3](https://github.com/kaitranntt/ccs/commit/d2848d39317950b36ac7038fcf22cb8e953787f9))
* bound Codex rollout tail reads ([#1547](https://github.com/kaitranntt/ccs/issues/1547)) ([06e8309](https://github.com/kaitranntt/ccs/commit/06e83091bec3cf4dff344019d02f836fdb7d2c13))
* **browser:** preserve profile-bound DevTools discovery ([#1541](https://github.com/kaitranntt/ccs/issues/1541)) ([ab6c59b](https://github.com/kaitranntt/ccs/commit/ab6c59ba354361d011e3004b9706a5ebe05ebf76))
* **cliproxy:** guard unsupported Qwen account auth ([b6ef4e5](https://github.com/kaitranntt/ccs/commit/b6ef4e5782f0dcd6dda3419c9b545dea6bfa1dcb))
* **cliproxy:** use root URL for Claude provider ([#1554](https://github.com/kaitranntt/ccs/issues/1554)) ([49a7b9d](https://github.com/kaitranntt/ccs/commit/49a7b9dc857bce7525e0b9a6be8d797b6841ca1f))
* **codex:** sanitize config override probes ([#1535](https://github.com/kaitranntt/ccs/issues/1535)) ([db44845](https://github.com/kaitranntt/ccs/commit/db44845857b62352058b07900de6c04c36c5ba27))
* **config:** update provider default models ([20e315b](https://github.com/kaitranntt/ccs/commit/20e315ba3f5f165602ec89a38e94b2c9249e7ab8))
* **cursor:** redact daemon token from dashboard start ([#1540](https://github.com/kaitranntt/ccs/issues/1540)) ([b85a3de](https://github.com/kaitranntt/ccs/commit/b85a3de26e45ffcfcd4db0f3216a41326a05f285))
* degrade WebSearch launch provisioning failures ([#1571](https://github.com/kaitranntt/ccs/issues/1571)) ([1a03985](https://github.com/kaitranntt/ccs/commit/1a0398579a974efa8adaa65446c51c5f512efa77))
* enforce tier lock during quota preflight ([#1550](https://github.com/kaitranntt/ccs/issues/1550)) ([361328c](https://github.com/kaitranntt/ccs/commit/361328c788e13fa471a1f6ced5c44411a131d503))
* handle auth-protected bar launch probes ([#1551](https://github.com/kaitranntt/ccs/issues/1551)) ([c040986](https://github.com/kaitranntt/ccs/commit/c0409862d2ab89682dae0987f872db745d798763))
* harden macOS bar launch descriptor ([#1533](https://github.com/kaitranntt/ccs/issues/1533)) ([10aff10](https://github.com/kaitranntt/ccs/commit/10aff10a67fbe7f4a9835aca8e394e3b62ae2a0c))
* harden release issue parsing ([#1536](https://github.com/kaitranntt/ccs/issues/1536)) ([74dd2f3](https://github.com/kaitranntt/ccs/commit/74dd2f38ccc1adcb4c7cd7fb825f14121b0d96b2))
* honor default target for Claude passthrough ([#1539](https://github.com/kaitranntt/ccs/issues/1539)) ([473aa08](https://github.com/kaitranntt/ccs/commit/473aa082f66a843edcea0d7ab9e9f94a2b585b67))
* ignore malformed bar analytics date keys ([#1556](https://github.com/kaitranntt/ccs/issues/1556)) ([e37a87c](https://github.com/kaitranntt/ccs/commit/e37a87c3a250c5f08793b119d7c0d41e1227bbcd))
* **logging:** harden structured trace redaction ([1462823](https://github.com/kaitranntt/ccs/commit/1462823be8c67895e81009aab0259263ae8b4097))
* **macos-bar:** launch dashboard without shell ([#1549](https://github.com/kaitranntt/ccs/issues/1549)) ([50f136a](https://github.com/kaitranntt/ccs/commit/50f136a1f0223fd4c39789ffdd273c30b1ad6b06))
* **proxy:** keep undici timeouts above the upstream request timeout ([#1524](https://github.com/kaitranntt/ccs/issues/1524)) ([8f9795b](https://github.com/kaitranntt/ccs/commit/8f9795bce24123786722d592d18dff8be59cc8d0))
* **usage:** price updated provider defaults ([34123a6](https://github.com/kaitranntt/ccs/commit/34123a62a69c7e5acd621fc54da901a6975f1709))

### Documentation

* **hardening:** finalize epic metrics + progress log (P1-P7) ([2d48488](https://github.com/kaitranntt/ccs/commit/2d484884752a6fd79ca1a891c62450333c15a4fe))

### Code Refactoring

* P5 god-file splits (test-backed, public API preserved) ([919be3c](https://github.com/kaitranntt/ccs/commit/919be3c722eed9f56f028a4929bf2ac8944d080d))
* P6 god-file splits (quota-fetcher + quota-fetcher-gemini-cli; 4 deferred) ([aecc1f7](https://github.com/kaitranntt/ccs/commit/aecc1f7217d192383d18c059690e38b47985ba18))

### Tests

* **bar:** harden bar-probe auth coverage; drop dead proxy shim ([#1555](https://github.com/kaitranntt/ccs/issues/1555)) ([3fa4a34](https://github.com/kaitranntt/ccs/commit/3fa4a342f974c3a346ba9b9d2ad3f429ae1eda0c))

### CI

* **bar:** auto-build and publish CCS Bar on main via self-hosted macOS runner ([b3a9abf](https://github.com/kaitranntt/ccs/commit/b3a9abffbce1c62957720e3fda9a83204f34757f))
2026-06-21 17:41:16 +00:00
github-actions[bot] f43cad0fbc chore(release): 8.4.0-dev.17 2026-06-21 02:27:10 +00:00
github-actions[bot] a843709135 chore(release): 8.4.0-dev.16 2026-06-20 23:58:01 +00:00
github-actions[bot] 9977c49fab chore(release): 8.4.0-dev.15 2026-06-20 20:27:30 +00:00
github-actions[bot] b811cacaef chore(release): 8.4.0-dev.14 2026-06-19 14:04:17 +00:00
github-actions[bot] 48e1c8976d chore(release): 8.4.0-dev.13 2026-06-19 03:00:30 +00:00
github-actions[bot] 813a7a043a chore(release): 8.4.0-dev.12 2026-06-19 01:38:29 +00:00
github-actions[bot] 5b6c3e87e9 chore(release): 8.4.0-dev.11 2026-06-18 23:52:27 +00:00
github-actions[bot] 27f4e89ad1 chore(release): 8.4.0-dev.10 2026-06-16 14:27:50 +00:00
github-actions[bot] 81e9bdea5d chore(release): 8.4.0-dev.9 2026-06-16 13:34:13 +00:00
github-actions[bot] a649c9568a chore(release): 8.4.0-dev.8 2026-06-16 13:12:21 +00:00
github-actions[bot] 2c812efafa chore(release): 8.4.0-dev.7 2026-06-16 12:49:43 +00:00
github-actions[bot] c83d004783 chore(release): 8.4.0-dev.6 2026-06-16 12:32:50 +00:00
github-actions[bot] 639334b40b chore(release): 8.4.0-dev.5 2026-06-16 03:32:52 +00:00
github-actions[bot] 619723e9b7 chore(release): 8.4.0-dev.4 2026-06-16 03:21:39 +00:00
github-actions[bot] c351261fe4 chore(release): 8.4.0-dev.3 2026-06-16 02:54:04 +00:00
github-actions[bot] 21e2dc1c24 chore(release): 8.4.0-dev.2 2026-06-16 02:20:52 +00:00
github-actions[bot] 5320b4f418 chore(release): 8.4.0-dev.1 2026-06-16 02:01:20 +00:00
semantic-release-bot 0d856fc0ab chore(release): 8.4.0 [skip ci]
## [8.4.0](https://github.com/kaitranntt/ccs/compare/v8.3.0...v8.4.0) (2026-06-16)

### Features

* **bar:** bundle a macOS app icon ([30ed7c4](https://github.com/kaitranntt/ccs/commit/30ed7c42b1c8a24fc10d1c788a532e1a3198a410)), closes [#1525](https://github.com/kaitranntt/ccs/issues/1525)
* **bar:** run the CCS server detached with serve/stop/status ([b5ef06a](https://github.com/kaitranntt/ccs/commit/b5ef06a4d5fe0ea2a83110947a2772b8ea87ee3f)), closes [#1526](https://github.com/kaitranntt/ccs/issues/1526)
* **bar:** self-start the server from the app and stop dropdown clipping ([64fbf2e](https://github.com/kaitranntt/ccs/commit/64fbf2e0621aca4398693de5b5ef43b9448bfecc)), closes [#1526](https://github.com/kaitranntt/ccs/issues/1526) [#1527](https://github.com/kaitranntt/ccs/issues/1527)

### Bug Fixes

* **bar:** anchor menu panel to top and stop full-screen sizing ([#1530](https://github.com/kaitranntt/ccs/issues/1530)) ([842857d](https://github.com/kaitranntt/ccs/commit/842857dec6035625b14ec81c77045b4562004575))
* **cliproxy:** resolve plus release asset variants ([#1523](https://github.com/kaitranntt/ccs/issues/1523)) ([9e9cddd](https://github.com/kaitranntt/ccs/commit/9e9cddd101dc7ae91d9e8051e6f172747a0fc1b4)), closes [#1522](https://github.com/kaitranntt/ccs/issues/1522)

### Documentation

* **bar:** document detached launch model and serve/stop/status ([#1529](https://github.com/kaitranntt/ccs/issues/1529)) ([b03e2e1](https://github.com/kaitranntt/ccs/commit/b03e2e1cb2dbc30e4a9f923ffd4bbb5bd817732c))
2026-06-16 00:12:20 +00:00
github-actions[bot] dd9b469093 chore(release): 8.3.0-dev.3 2026-06-16 00:02:23 +00:00
github-actions[bot] 9f8517bb29 chore(release): 8.3.0-dev.2 2026-06-15 23:10:10 +00:00
github-actions[bot] e26f294124 chore(release): 8.3.0-dev.1 2026-06-15 13:24:33 +00:00
semantic-release-bot af6d082f95 chore(release): 8.3.0 [skip ci]
## [8.3.0](https://github.com/kaitranntt/ccs/compare/v8.2.0...v8.3.0) (2026-06-14)

### Features

* **bar-app:** add CCS icon variants and usage analytics UI ([9b64514](https://github.com/kaitranntt/ccs/commit/9b64514a57f78ff101333caa3daa8c600a48f541))
* **bar-app:** bar-first quota card with sane time formatting ([df96779](https://github.com/kaitranntt/ccs/commit/df967792b91cd6674b39a08b38cb32eaed730ddc))
* **bar-app:** inline spend chart bars/line toggle in the Spend header ([a700a92](https://github.com/kaitranntt/ccs/commit/a700a92171cb16a4d08af7775554c5e501d7228a))
* **bar-app:** label settings clearly and confirm before quit ([26323c1](https://github.com/kaitranntt/ccs/commit/26323c13dfcca42f9ce2dc5e51faa1a65acfc47a))
* **bar-app:** legible tier chips, honest Icon label, dashboard auto-start ([11b3cd5](https://github.com/kaitranntt/ccs/commit/11b3cd5a5cc91b3a8e71a09ea22f43406e2a00a7))
* **bar-app:** per-surface usage UI, unambiguous title, hidden scrollbar ([4a633ea](https://github.com/kaitranntt/ccs/commit/4a633eac65adefab4d04a265d0993172d9fca001))
* **bar-app:** quota gauges, threshold alerts, configurable glance ([559d434](https://github.com/kaitranntt/ccs/commit/559d4340e72e8d900a20e0315f3298ca66e23992))
* **bar-app:** render native subscription accounts with quota gauges ([03077aa](https://github.com/kaitranntt/ccs/commit/03077aa9fdad5b64a22f157c2470bc816da78b4a))
* **bar-app:** retune subscription card palette for the dark theme ([5aa94b5](https://github.com/kaitranntt/ccs/commit/5aa94b5019b3a6efdea4ef5e0b8ac15affd4f966))
* **bar-app:** selectable System/Light/Dark theming ([e33da98](https://github.com/kaitranntt/ccs/commit/e33da989eb7c57f1832864e5d9680d18bce400d5))
* **bar-app:** subscription-first cockpit with detailed quota card ([0e0b912](https://github.com/kaitranntt/ccs/commit/0e0b9121878a18d1e77b8418006468991fa3c981))
* **bar-app:** tune density and add spend chart style toggle ([0b1c4e4](https://github.com/kaitranntt/ccs/commit/0b1c4e490880da83245e87f9de2118438ff42dc4))
* **bar:** add calendar month-to-date spend to analytics ([68f0231](https://github.com/kaitranntt/ccs/commit/68f0231f487a7a56e4571bc67d3171827baebaa5))
* **bar:** add ccs bar --help with docker-style help screen ([9ae6f85](https://github.com/kaitranntt/ccs/commit/9ae6f85fa7d8f204dc9821d1f9c0fde77a44cc1b))
* **bar:** add Get CCS Bar dashboard banner and ccs bar docs page ([1e7ad7e](https://github.com/kaitranntt/ccs/commit/1e7ad7e75e2edd1e36fe9651efd44c464b7f8375))
* **bar:** harden summary against provider hangs and add analytics endpoint ([78f9fc7](https://github.com/kaitranntt/ccs/commit/78f9fc7c0b4c69de48d31147b5501fb50aa99af0))
* **bar:** honest quota state and merged multi-source analytics ([5f850c4](https://github.com/kaitranntt/ccs/commit/5f850c4899a3d7f64385a72a4d1d5080206a1023))
* **bar:** native Claude Code + Codex subscription quota (safe, server-side) ([dbeb0c5](https://github.com/kaitranntt/ccs/commit/dbeb0c543a888d7bc54ed0e3ebfffa63334d1f75))
* **bar:** one-flow install with quarantine automation and launch handoff ([4eef3f7](https://github.com/kaitranntt/ccs/commit/4eef3f77a4a8210501a9dfe369ceeac581772939)), closes [#1504](https://github.com/kaitranntt/ccs/issues/1504)
* **bar:** per-window subscription quota detail + codex multi-session scan ([e96967c](https://github.com/kaitranntt/ccs/commit/e96967c22492fe312258bf6ab7f5883250cbc4be))
* **bar:** show running app version in the panel header ([3438c39](https://github.com/kaitranntt/ccs/commit/3438c3940eb0af9a680954526ba63274bf768c30))
* **catalog:** add Claude Fable 5 to Anthropic model registry ([298c89f](https://github.com/kaitranntt/ccs/commit/298c89f2c30712daaf782082903fcb7d93a0ab5e))
* **cli:** add ccs bar command for the macOS menu bar app ([205c2f3](https://github.com/kaitranntt/ccs/commit/205c2f3cd607399031c19e49f37cc64108c13def))
* **cliproxy:** claude pool gap closure - model-neutral launch, shadow warning, provider ban copy ([a257016](https://github.com/kaitranntt/ccs/commit/a257016ebb42ab7f68296188cd71267bab6fecdd)), closes [#1464](https://github.com/kaitranntt/ccs/issues/1464)
* **cliproxy:** managed drain order for account pools ([a33e126](https://github.com/kaitranntt/ccs/commit/a33e12619ee3dd7b034a952a51feae9cec69759c)), closes [#1464](https://github.com/kaitranntt/ccs/issues/1464)
* **cliproxy:** pool onboarding hints for existing multi-profile users ([0343734](https://github.com/kaitranntt/ccs/commit/0343734665d5610c84297dc50a486d703c6ff28f)), closes [#1464](https://github.com/kaitranntt/ccs/issues/1464)
* **cliproxy:** pool routing defaults and safety rails ([fdb0430](https://github.com/kaitranntt/ccs/commit/fdb043083f6a76cc3d33e830d8bd6142827c0cd6)), closes [#1464](https://github.com/kaitranntt/ccs/issues/1464)
* **cliproxy:** pool visibility in quota output and dashboard routing card ([74894f6](https://github.com/kaitranntt/ccs/commit/74894f61da26410a214e1b2af2fe8ffd18da5c30)), closes [#1464](https://github.com/kaitranntt/ccs/issues/1464)
* **dashboard:** promote CCS Bar globally ([b9356a7](https://github.com/kaitranntt/ccs/commit/b9356a7ce67d783ecbc8b2d0d4ba70e25176b660))
* **macos-bar:** add ad-hoc packaging script + Info.plist ([df4554f](https://github.com/kaitranntt/ccs/commit/df4554fe1f9a0d3d4e43e2b21f454fb862a131c5))
* **macos-bar:** add CCS Bar core (client, models, discovery) + tests ([23abf6a](https://github.com/kaitranntt/ccs/commit/23abf6a6350015dbbc97159564f5ee2678beaf6f))
* **macos-bar:** add SwiftUI MenuBarExtra app + view-model ([e7001fc](https://github.com/kaitranntt/ccs/commit/e7001fc252c4eea1075d89c2455f8fb29164fdf4))
* **quota:** add per-provider tier-lock account selection ([40f32eb](https://github.com/kaitranntt/ccs/commit/40f32ebbf06937b85f7e151169ae93399a1dca04))
* **usage:** attribute CLIProxy usage to accounts for per-account cost ([1867116](https://github.com/kaitranntt/ccs/commit/1867116472dca0d579d34cc82a3aff3268c7648a))
* **web-server:** add /api/bar/summary aggregator with force-fresh ([6d3fde9](https://github.com/kaitranntt/ccs/commit/6d3fde9ed399845a8aa757b4a7c706395e962dc6))

### Bug Fixes

* **bar-app:** periodic background refresh so the glance self-heals ([28fef67](https://github.com/kaitranntt/ccs/commit/28fef67a453fc50cbbca03d2e8b51ce63e2a983f))
* **bar-app:** settings as standalone window, real theme forcing, roomier layout ([b950b41](https://github.com/kaitranntt/ccs/commit/b950b41503352bf019b3070e84a44740750c2be1))
* **bar:** bind 'ccs bar launch' server to IPv4 loopback ([2f8745b](https://github.com/kaitranntt/ccs/commit/2f8745bc1f54f12caa773e716a03e71b6b44bec0))
* **bar:** capture click location synchronously before async panel anchoring ([54a670c](https://github.com/kaitranntt/ccs/commit/54a670c943e8599bd103421e0cdb6212b31f5f67))
* **bar:** correct the already-running reinstall hint ([3aab14c](https://github.com/kaitranntt/ccs/commit/3aab14ca85f704cfda95f3e4d3769fb6f5cca4c7))
* **bar:** harden install handoff per review ([dfc8b7d](https://github.com/kaitranntt/ccs/commit/dfc8b7d1dcca23a3c2f905b6e5e6f7bdd5195752))
* **bar:** keep header version label rightmost during refresh ([a5c4186](https://github.com/kaitranntt/ccs/commit/a5c41864b3710b31b9cd740305928f76643d9a35))
* **bar:** keep menu bar panel on the clicked screen in multi-display setups ([70dc53d](https://github.com/kaitranntt/ccs/commit/70dc53d947e54e23d7befb422fbd1f556f8b57f5)), closes [#1502](https://github.com/kaitranntt/ccs/issues/1502) [#1503](https://github.com/kaitranntt/ccs/issues/1503)
* **bar:** probe IPv6 loopback when detecting a running CCS server ([3569297](https://github.com/kaitranntt/ccs/commit/3569297b6d0b7d36d5ec24bb1e0daeadebd42b4e))
* **bar:** read app version from Info.plist and verify bar API instead of version majors ([c572d9f](https://github.com/kaitranntt/ccs/commit/c572d9f8608a14d1150b6c9cf8064fd9e6f77417)), closes [#1497](https://github.com/kaitranntt/ccs/issues/1497)
* **bar:** read codex rollout tail via fs so quota surfaces under node ([2e99b58](https://github.com/kaitranntt/ccs/commit/2e99b58d095b847d0f8862b634262ae79a5666d5))
* **bar:** resolve pre-dev review findings (security gate, honesty, correctness) ([7d3a11a](https://github.com/kaitranntt/ccs/commit/7d3a11a45278c4507070c958d8ce33c11b157c0b))
* **bar:** reuse a running CCS web-server and probe ports on the bind host ([af1a2a0](https://github.com/kaitranntt/ccs/commit/af1a2a0f5d74ec368e1edbdd936b1d8024925188)), closes [#1500](https://github.com/kaitranntt/ccs/issues/1500)
* **bar:** stage downloads and swap so reinstall never strands the user ([cf3bd8a](https://github.com/kaitranntt/ccs/commit/cf3bd8a5efb4e1166650d5a3d0d4002f59b6f3dc))
* **bar:** stop install at the manual step when quarantine clearing fails ([015cc4d](https://github.com/kaitranntt/ccs/commit/015cc4dd320728f152b13a924b9dceb1c8ea441f))
* **bar:** verify server compat before Gatekeeper steps and harden reinstall ([f68c08e](https://github.com/kaitranntt/ccs/commit/f68c08ede3188e2f58f74c50049bd72d06ad4ee6))
* **cli:** harden ccs bar install + align launch path ([63d10cb](https://github.com/kaitranntt/ccs/commit/63d10cb2d0d20d6512fe623cf7d13c3ddc669e61))
* **cliproxy:** close second-round review gaps in pool onboarding and remote env ([7b8a6f5](https://github.com/kaitranntt/ccs/commit/7b8a6f5cceabddf7a68cc66014ef0ec6eba3e96e))
* **cliproxy:** guard upstream response timeout cleanup against detached socket ([f59536a](https://github.com/kaitranntt/ccs/commit/f59536a81fd0a2ca4dc58a2e3c89b463bb57150c))
* **cliproxy:** harden account pools per pre-merge usefulness review ([1c90388](https://github.com/kaitranntt/ccs/commit/1c90388b5d16a3c8f7895f86bc9a769cb0800de3))
* **cliproxy:** silence legacy-config skip in pool opt-in prompt ([cff9008](https://github.com/kaitranntt/ccs/commit/cff9008f49643bac027de4a3f7eeb010f601ed8b))
* **macos-bar:** correct set-default key, lead account, asset name ([8350c24](https://github.com/kaitranntt/ccs/commit/8350c247333cec3494409543f4030802b8c768d5))
* **mcp:** retry Claude user config locks ([cf90f48](https://github.com/kaitranntt/ccs/commit/cf90f48240db2666186eec08dce329690d26d60e))
* **proxy:** add Anthropic passthrough mode for coding-agent-only endpoints ([b98b0df](https://github.com/kaitranntt/ccs/commit/b98b0df0846944225889167658d9d6251d28baab))
* **proxy:** route Anthropic passthrough by upstream profile ([bb9d23a](https://github.com/kaitranntt/ccs/commit/bb9d23ad6a5597eadc2b3c23a773c60b3c78ad31))
* **quota:** reject tier-lock for non-managed providers ([b9a1084](https://github.com/kaitranntt/ccs/commit/b9a1084bd4c6437e34563f10a4b6ce9b09f14224))
* **test:** restore real account modules in tier-lock to fully stop mock leak ([ad9bdd5](https://github.com/kaitranntt/ccs/commit/ad9bdd5794963b25dce2e3da49b4a0ad18b7fe75))
* **test:** run bucket paths explicitly ([27c8a95](https://github.com/kaitranntt/ccs/commit/27c8a9570ba7a3b8879539a5817e3f76bbf30d42))
* **test:** stop tier-lock mock.module leaking an empty PROVIDERS_WITHOUT_EMAIL ([0770b89](https://github.com/kaitranntt/ccs/commit/0770b8903748c83fd1debe3c7c5d489ae72b1c3a))
* **usage:** compute cost fallback lazily to stop event-loop stall ([f073434](https://github.com/kaitranntt/ccs/commit/f0734348d032d5267e1816cf908f60fd742a97e5))
* **usage:** correct per-account cost attribution ([cc7ac55](https://github.com/kaitranntt/ccs/commit/cc7ac553e326d7db84ef6ed02211a5afb58e4875))

### Documentation

* **bar:** align install docs with Info.plist version pinning and bar-API check ([e7f3ec0](https://github.com/kaitranntt/ccs/commit/e7f3ec0da1142efa1536ad3f4b95ddfdde097e25))
* **bar:** troubleshooting reflects reuse-first launch behavior ([db1d125](https://github.com/kaitranntt/ccs/commit/db1d125f83e2a967230be186ae31b2804c6c8177))

### Performance Improvements

* **bar:** probe reuse candidates concurrently to avoid launch stalls ([2fd90ff](https://github.com/kaitranntt/ccs/commit/2fd90fff9bd59b18a2dac713a24ca05363b12759))

### Tests

* **ci:** allow temporary epic branch in PR trigger assertion ([22d4c72](https://github.com/kaitranntt/ccs/commit/22d4c727172567787a7719a87bdda0c3e960011b))

### CI

* drop temporary epic branch from PR trigger ([2b7cfa3](https://github.com/kaitranntt/ccs/commit/2b7cfa32c8b7bde8cf1ab5f8f272a50fedb10c7e))
* run PR CI for account-pools epic branch ([5101e21](https://github.com/kaitranntt/ccs/commit/5101e21ecd7f7990b06ba6aad05f7d1ba888f24f))
2026-06-14 16:17:26 +00:00
github-actions[bot] ceb20a34c7 chore(release): 8.2.0-dev.11 2026-06-14 16:03:46 +00:00
github-actions[bot] 7e6e12d008 chore(release): 8.2.0-dev.10 2026-06-14 15:26:19 +00:00
github-actions[bot] 0a11db9f62 chore(release): 8.2.0-dev.9 2026-06-13 02:35:28 +00:00
github-actions[bot] 8e73ee0acc chore(release): 8.2.0-dev.8 2026-06-12 15:27:36 +00:00
github-actions[bot] 17849c4a32 chore(release): 8.2.0-dev.7 2026-06-10 19:50:44 +00:00
github-actions[bot] 39ede638d6 chore(release): 8.2.0-dev.6 2026-06-10 19:02:13 +00:00
github-actions[bot] dd82f99046 chore(release): 8.2.0-dev.5 2026-06-10 17:21:08 +00:00
github-actions[bot] 16e8531568 chore(release): 8.2.0-dev.4 2026-06-10 17:07:50 +00:00
github-actions[bot] 67d93e6722 chore(release): 8.2.0-dev.3 2026-06-10 04:22:48 +00:00
github-actions[bot] b24c943afc chore(release): 8.2.0-dev.2 2026-06-10 03:15:32 +00:00
github-actions[bot] 7537fd79b3 chore(release): 8.2.0-dev.1 2026-06-09 22:53:22 +00:00
semantic-release-bot 89414972be chore(release): 8.2.0 [skip ci]
## [8.2.0](https://github.com/kaitranntt/ccs/compare/v8.1.4...v8.2.0) (2026-06-06)

### Features

* **catalog:** add Claude Opus 4.8 to Anthropic model registry ([357ce8b](https://github.com/kaitranntt/ccs/commit/357ce8b07ad1eb12879f24d4a4b0eeb90d66bbd4))
* **cliproxy:** add Qoder as a CLIProxy provider channel ([43c8304](https://github.com/kaitranntt/ccs/commit/43c830469ad836d56db32a603b8536b26ec3a4fe))
* **cliproxy:** add qoder base config template ([85e7674](https://github.com/kaitranntt/ccs/commit/85e76742fe322ec5205c66a42c500dd768c90d28))
* **cliproxy:** add Qoder to channel catalog, model routing, and UI ([1e60fe1](https://github.com/kaitranntt/ccs/commit/1e60fe186e700ab00bd739b29085635053cba822))
* **pricing:** support per-service-tier rates; wire Opus fast mode ([878775f](https://github.com/kaitranntt/ccs/commit/878775f5b63e0f5debc563abd2d5d888a5488b80)), closes [#1](https://github.com/kaitranntt/ccs/issues/1)
* **qoder:** add model catalog entries for backend and UI ([b52c062](https://github.com/kaitranntt/ccs/commit/b52c0627ca7fa72365161b655cfaa12ba4f2fbc6))
* **qoder:** add provider logo asset and dashboard mapping ([d82cc13](https://github.com/kaitranntt/ccs/commit/d82cc13afc68603befee85f8c886d06722fc44d3))
* **qoder:** Change default models in base-qoder settings ([de5b545](https://github.com/kaitranntt/ccs/commit/de5b545ac35389c8e8878107dd70ff6e89ba6c5f))

### Bug Fixes

* add CLIProxy account reauthentication ([5f1976f](https://github.com/kaitranntt/ccs/commit/5f1976f69c447dac6b3141bc7ee2a962a355a8af))
* **analytics:** collapse profile-scope disclaimer into tooltip icon ([9130c7d](https://github.com/kaitranntt/ccs/commit/9130c7d8698442d4bb3a7ca47502ece8c99336ff)), closes [#1390](https://github.com/kaitranntt/ccs/issues/1390)
* **analytics:** price Claude Opus 4.7 thinking ([062e77e](https://github.com/kaitranntt/ccs/commit/062e77e55f05b821ff8c6c2b0380a57b5d8594f2))
* **analytics:** tighten top-bar layout (single-line trigger, grouped cluster, compact timestamp) ([bfa4c70](https://github.com/kaitranntt/ccs/commit/bfa4c704eb04b0b9b389c26dc77ba84fc2e832e8))
* avoid relative completion backend execution ([4f2dd70](https://github.com/kaitranntt/ccs/commit/4f2dd70b8c77d878c01fb3da9e0fae305cff2cf3))
* **browser:** avoid implicit explicit devtools port for config attach ([#1369](https://github.com/kaitranntt/ccs/issues/1369)) ([f985cec](https://github.com/kaitranntt/ccs/commit/f985cec3ff5de166592a06cfb9ee376436b10c1e))
* **browser:** cap click and key repeat counts in MCP ([#1367](https://github.com/kaitranntt/ccs/issues/1367)) ([c322829](https://github.com/kaitranntt/ccs/commit/c322829f44f8bf4edd43fe4d8fc97560b6fe180a))
* **browser:** handle DevTools close endpoint response ([9225218](https://github.com/kaitranntt/ccs/commit/92252189b1c2b70b71c104a9ce87d6b2fe293a7d))
* **browser:** log only matched intercepted requests ([#1366](https://github.com/kaitranntt/ccs/issues/1366)) ([8b3ba55](https://github.com/kaitranntt/ccs/commit/8b3ba5532e07af52f89cf012be63eafe2046e7b8))
* **browser:** track explicit devtools_port from config ([#1383](https://github.com/kaitranntt/ccs/issues/1383)) ([b63943e](https://github.com/kaitranntt/ccs/commit/b63943eb450b335bbce00946dfd71f2535538cc4)), closes [#1369](https://github.com/kaitranntt/ccs/issues/1369)
* **channels:** avoid secrets in --set-token argv ([#1389](https://github.com/kaitranntt/ccs/issues/1389)) ([88fbac3](https://github.com/kaitranntt/ccs/commit/88fbac3a324e409a26bcbe7cf44810b94ef134e2))
* **ci:** add always-reporting CI Gate so fork PRs stop deadlocking ([7dba36f](https://github.com/kaitranntt/ccs/commit/7dba36fb03d56da03e0abff152d7a582eb4f10fa)), closes [#1461](https://github.com/kaitranntt/ccs/issues/1461)
* **ci:** close dev-released issues on stable release ([#1396](https://github.com/kaitranntt/ccs/issues/1396)) ([52a427a](https://github.com/kaitranntt/ccs/commit/52a427a7a34faecb078af407725f9c50fc641103))
* **ci:** constrain PR-Agent GitHub App token permissions ([#1370](https://github.com/kaitranntt/ccs/issues/1370)) ([37fdf90](https://github.com/kaitranntt/ccs/commit/37fdf90e304507a3fc4e3e0066bb1856a05e74bc))
* **ci:** narrow issue reference parsing ([2a3bc68](https://github.com/kaitranntt/ccs/commit/2a3bc6807fc354ed2a55a386d5012a7536aa765e))
* **ci:** qualify docker release checkout refs ([#1374](https://github.com/kaitranntt/ccs/issues/1374)) ([cba1414](https://github.com/kaitranntt/ccs/commit/cba1414b7e5c038741f0e4a401280d0999afdf61))
* **claude-extension:** enforce private permissions for settings writes ([#1378](https://github.com/kaitranntt/ccs/issues/1378)) ([0db9705](https://github.com/kaitranntt/ccs/commit/0db9705d7509302f13816607ca055b9c387111b3))
* **cliproxy:** clean up upstream proxy on response disconnect ([#1361](https://github.com/kaitranntt/ccs/issues/1361)) ([2188cdc](https://github.com/kaitranntt/ccs/commit/2188cdc9907cf0934f074a9503501edd68f708e8))
* **cliproxy:** fall back from invalid Codex feature labels ([a0870aa](https://github.com/kaitranntt/ccs/commit/a0870aa40455ae0d1475041d533e909629e9d906))
* **cliproxy:** ignore stale executor exit code ([bcc6899](https://github.com/kaitranntt/ccs/commit/bcc68992fad7786a54ffadff5283e343a5e73084))
* **cliproxy:** infer emails from alternate token prefixes ([c0cd44e](https://github.com/kaitranntt/ccs/commit/c0cd44ecaa0546b9ca9f2ce55840c539c8bba676))
* **cliproxy:** prefer explicit Codex free fallbacks ([27e1694](https://github.com/kaitranntt/ccs/commit/27e16944808cf43210d4505993c9846fdd7309e4))
* **cliproxy:** preserve manual quota pauses ([6ecca9b](https://github.com/kaitranntt/ccs/commit/6ecca9b16fbd77cd3fe130cdd131fa90af68ae32))
* **cliproxy:** prevent management key leak on runtime proxy overrides ([#1386](https://github.com/kaitranntt/ccs/issues/1386)) ([4cf840e](https://github.com/kaitranntt/ccs/commit/4cf840ea0adeaee8370753f1bb20fb3c3cbd849f))
* **cliproxy:** redact generic token query params in oauth trace ([#1364](https://github.com/kaitranntt/ccs/issues/1364)) ([9357f4d](https://github.com/kaitranntt/ccs/commit/9357f4df26d8ce8a07db9d52d3d5b9c307206d56))
* **cliproxy:** revert to qoder/auto prefixed model in base config ([c5308de](https://github.com/kaitranntt/ccs/commit/c5308ded3b08493036cfc279b04432576f76094e))
* **cliproxy:** sanitize Codex quota labels ([4574122](https://github.com/kaitranntt/ccs/commit/457412277b1311decb660620ecdd0cdd78a90e1c))
* **cliproxy:** scrub GitLab PAT env after token-login auth ([#1360](https://github.com/kaitranntt/ccs/issues/1360)) ([e658e83](https://github.com/kaitranntt/ccs/commit/e658e838f906bebebde8484df6f492bcda737abe))
* **cliproxy:** use unprefixed auto model for qoder base config ([9a8430f](https://github.com/kaitranntt/ccs/commit/9a8430f68beef326bf43aa3686952875a0e818fa))
* **codex-auth:** narrow running Codex detection ([9eb0201](https://github.com/kaitranntt/ccs/commit/9eb0201b794d2c231416865e28b991c93982db43))
* **codex-auth:** restrict symlink fallback and harden copy path ([#1365](https://github.com/kaitranntt/ccs/issues/1365)) ([0bd2e57](https://github.com/kaitranntt/ccs/commit/0bd2e577b21401f586fb9cbee18de3baa2cfc817))
* **codex:** cap buffered upstream error response size ([#1375](https://github.com/kaitranntt/ccs/issues/1375)) ([b0a7541](https://github.com/kaitranntt/ccs/commit/b0a754179ca7bc0c0d4b70ef119fca1eef827dfc))
* **codex:** gate ccsxp config overrides ([e09e930](https://github.com/kaitranntt/ccs/commit/e09e930c38ef17dfecf000804504ab6ed4f38367))
* compare cliproxy fork release suffixes ([#1419](https://github.com/kaitranntt/ccs/issues/1419)) ([aee322e](https://github.com/kaitranntt/ccs/commit/aee322ea88e39ffb57a3b427016f5cd1339141cf))
* **config:** Update Kiro model settings in default configuration ([39656b9](https://github.com/kaitranntt/ccs/commit/39656b98262e7f1d7b3e3c29e67fed7b9cae9c95))
* **config:** use valid Kiro default model ([a06eff6](https://github.com/kaitranntt/ccs/commit/a06eff61f03678f60fb055735375f53b29cc621a))
* correct claude image analysis default model ([8842102](https://github.com/kaitranntt/ccs/commit/88421026c64b0dc86c183f6d71b38ec9e5d89920))
* create explicit CODEX_HOME with secure permissions ([#1380](https://github.com/kaitranntt/ccs/issues/1380)) ([55cd78b](https://github.com/kaitranntt/ccs/commit/55cd78bce47f219d03c7b8b7a43963f5eae182b0))
* **cursor-daemon:** auto-generate token + expose for callers ([#1384](https://github.com/kaitranntt/ccs/issues/1384)) ([b7d5ce1](https://github.com/kaitranntt/ccs/commit/b7d5ce178a46d4ade8c3cb58eb5fff7af44dc44f)), closes [1373/#1377](https://github.com/1373/ccs/issues/1377)
* **cursor-daemon:** widen safeResolve type for daemonToken ([#1385](https://github.com/kaitranntt/ccs/issues/1385)) ([ba887e0](https://github.com/kaitranntt/ccs/commit/ba887e012ac29b9764806232b30f311c2f597cf8)), closes [1373/#1377](https://github.com/1373/ccs/issues/1377)
* **cursor:** authenticate local daemon health/runtime traffic ([#1373](https://github.com/kaitranntt/ccs/issues/1373)) ([03a3011](https://github.com/kaitranntt/ccs/commit/03a30119d99753e52f4726f2f0a2078118690f3e))
* **cursor:** block cross-origin runtime probe requests ([#1371](https://github.com/kaitranntt/ccs/issues/1371)) ([e6f764c](https://github.com/kaitranntt/ccs/commit/e6f764c79b94209bcbeaabfd8ee94ae364f821e1))
* **cursor:** enforce auth token for anthropic daemon route ([#1377](https://github.com/kaitranntt/ccs/issues/1377)) ([210ab76](https://github.com/kaitranntt/ccs/commit/210ab761e2cbfcaf8d1e75757a517889479c6335))
* **dashboard:** clear local control-panel management key ([#1372](https://github.com/kaitranntt/ccs/issues/1372)) ([6c0f7ac](https://github.com/kaitranntt/ccs/commit/6c0f7ac39c17b99bd4259eb4eca35792aea31dff))
* **dashboard:** respect account last-used timeline base ([70601e6](https://github.com/kaitranntt/ccs/commit/70601e6364fd1fd0e4cce2fec922ebf33f5ca61f))
* disable docker legacy API key auth by default ([#1355](https://github.com/kaitranntt/ccs/issues/1355)) ([ab379e9](https://github.com/kaitranntt/ccs/commit/ab379e9e1387d73f2672d92c5438f6421c94f4f5))
* **docker:** pin runtime deps to committed bun lockfile ([#1358](https://github.com/kaitranntt/ccs/issues/1358)) ([aef331d](https://github.com/kaitranntt/ccs/commit/aef331d8efde63f9d9393f3d3a0d0adc16918dcb))
* forward bare Claude subcommands through the default profile ([3fbf850](https://github.com/kaitranntt/ccs/commit/3fbf8504718c38c7e675bd68c90c0acf7d13aa6c)), closes [#1218](https://github.com/kaitranntt/ccs/issues/1218) [#1404](https://github.com/kaitranntt/ccs/issues/1404)
* gate auth monitor stats polling ([#1421](https://github.com/kaitranntt/ccs/issues/1421)) ([c12174d](https://github.com/kaitranntt/ccs/commit/c12174db125ea69631a8ab530098d24040b31a3f))
* guard self-signed routing request setup ([5807328](https://github.com/kaitranntt/ccs/commit/5807328cb58e6a60637a797b046afa06262043bf))
* handle system messages in OpenAI proxy ([#1403](https://github.com/kaitranntt/ccs/issues/1403)) ([f42aee9](https://github.com/kaitranntt/ccs/commit/f42aee9a20afb7a305dc4d2d2026063d62d5e4ce))
* harden cliproxy usage cache ([6bba193](https://github.com/kaitranntt/ccs/commit/6bba193cdd742a56f3d495a3de5d478df636f444))
* harden provider alias normalization ([480f3ba](https://github.com/kaitranntt/ccs/commit/480f3ba46949b4d44b1a36fa5a6dcc2699a311d5))
* honor browser eval env override in attach config ([#1368](https://github.com/kaitranntt/ccs/issues/1368)) ([4e7894a](https://github.com/kaitranntt/ccs/commit/4e7894a3daa5105d2b9c32d456748b1e485d78b7))
* keep live catalog defaults visible ([f9dec01](https://github.com/kaitranntt/ccs/commit/f9dec01cfdc976442eddb60bd092abadf443d1b4))
* **management:** skip broken shared plugin entries ([f44b651](https://github.com/kaitranntt/ccs/commit/f44b651cd6752053e175301c8c8f911b1be882fc))
* narrow legacy GLMT base URL normalization ([#1376](https://github.com/kaitranntt/ccs/issues/1376)) ([781c84b](https://github.com/kaitranntt/ccs/commit/781c84b04b184cbb57853fa2d0cc892e45c980f2))
* normalize cliproxy v3 usage snapshots ([65adab5](https://github.com/kaitranntt/ccs/commit/65adab5bec2814a2f7deb681067892def77b03ad))
* normalize Codex provider requests ([0f0ad4e](https://github.com/kaitranntt/ccs/commit/0f0ad4e6ed2ae5949399b777c2d0f77e7a33506e)), closes [#1399](https://github.com/kaitranntt/ccs/issues/1399) [#1406](https://github.com/kaitranntt/ccs/issues/1406)
* persist codex target selections ([04dc97a](https://github.com/kaitranntt/ccs/commit/04dc97aaa4690433e1ee0409cf3edc225eaab02c))
* **persist:** bound Codex translator receipt scan ([5da6334](https://github.com/kaitranntt/ccs/commit/5da63347367564104b2cc514c94d1f1fc1519996))
* **pricing:** restore opus version order; cover 4.6/4.7 fast-tier rates ([5a79b47](https://github.com/kaitranntt/ccs/commit/5a79b475063a3451b14e8805f9b0dc05397930cb))
* **proxy:** honor backpressure in cliproxy local streaming ([#1379](https://github.com/kaitranntt/ccs/issues/1379)) ([90d5ca2](https://github.com/kaitranntt/ccs/commit/90d5ca2cbb07e46364d05e3558f177355ceed975))
* **proxy:** load pid-only profile daemon state ([216fae7](https://github.com/kaitranntt/ccs/commit/216fae7d577423e6fa13c49efe836df23dbb8af4))
* **proxy:** support opt-in OpenAI reasoning shaping ([8282ff6](https://github.com/kaitranntt/ccs/commit/8282ff68a1667efba68e23400eb7e7ec3f1af9bb))
* redact OAuth trace error messages ([14da76a](https://github.com/kaitranntt/ccs/commit/14da76abae511f020bfa67d9b2b57342ebdc27fa))
* reject symlinked cleanup directories ([920fba7](https://github.com/kaitranntt/ccs/commit/920fba7e1333ff53b7826981bf61b238091dbcf6))
* reject unsupported image analysis backends ([#1387](https://github.com/kaitranntt/ccs/issues/1387)) ([b35a23a](https://github.com/kaitranntt/ccs/commit/b35a23a6e4a1d59ae3d1a3fb754d3a31db1e5855))
* restrict Codex usage cache permissions ([c630ce8](https://github.com/kaitranntt/ccs/commit/c630ce878ea4ad22d0bfa07d71dd352392db728a))
* restrict local runtime readiness probes ([9a7b26e](https://github.com/kaitranntt/ccs/commit/9a7b26eab745f5099d57685c9a14845a4adb985e))
* **sse:** make CRLF normalization chunk-boundary safe ([#1359](https://github.com/kaitranntt/ccs/issues/1359)) ([2ec23c6](https://github.com/kaitranntt/ccs/commit/2ec23c6c3a277c9e901cbee588683f4ca7662837))
* stop ccsxp model alias parsing at option terminator ([5776e9c](https://github.com/kaitranntt/ccs/commit/5776e9c3b1ac584eebcd01c6332196acc6ff7aa4))
* surface cleanup directory read errors ([f93cb36](https://github.com/kaitranntt/ccs/commit/f93cb36da68495015428123d4407a9337740aeee))
* **test:** add qoder to PLUS_EXTRA_CLIPROXY_PROVIDERS test expectation ([dea4de4](https://github.com/kaitranntt/ccs/commit/dea4de45fd4d06f3f2c79d2fedcef18caa8fb045))
* time out stalled CLIProxy response streams ([d7d5ad2](https://github.com/kaitranntt/ccs/commit/d7d5ad2ad2170dc95b35984968dfe2362f4c7454))
* tolerate null retryable check ([54f3b68](https://github.com/kaitranntt/ccs/commit/54f3b6860a8e81b11c705bf0cbe05eeb8728e668))
* **ui:** blur account identity badges in privacy mode ([dd62027](https://github.com/kaitranntt/ccs/commit/dd62027d3f4e11274e4ada2872d942a20c4ef0ea))
* **ui:** guard invalid log detail timestamps ([4ce6669](https://github.com/kaitranntt/ccs/commit/4ce6669e26ba4c55e8ca3bc3a9590e128eee2f30))
* **ui:** preserve distinct log detail rows ([c0f5413](https://github.com/kaitranntt/ccs/commit/c0f5413523c8ae0f7cff25ea4de97c4427c5f989))
* **ui:** preserve Gemini tier fallback without entitlement ([1f7ed65](https://github.com/kaitranntt/ccs/commit/1f7ed656b2b99ed8c25909bf6a66c1dde744855e))
* **ui:** show dashboard audit logs by default ([2b59e04](https://github.com/kaitranntt/ccs/commit/2b59e040c4481d29809798b273ba3cd57915a4b6))
* **ui:** suppress privacy mode account title leaks ([f592260](https://github.com/kaitranntt/ccs/commit/f592260049a6e7345a3457d990fa952e8fb09ff3))
* validate browser flags before proxy side effects ([8114ff0](https://github.com/kaitranntt/ccs/commit/8114ff016e5c29c869692a9812b3187f2842ccae))
* validate usage profile query type ([901bad2](https://github.com/kaitranntt/ccs/commit/901bad2ec7faab8d5725a65c96a1de8cb9945b3d))
* **web-server:** stop startup local prefix sync secret leak ([#1362](https://github.com/kaitranntt/ccs/issues/1362)) ([d961644](https://github.com/kaitranntt/ccs/commit/d9616447f9c3117fd4882357373c8d820774e3a7))
* **web:** avoid runtime proxy probes on public masked settings route ([#1388](https://github.com/kaitranntt/ccs/issues/1388)) ([fec8441](https://github.com/kaitranntt/ccs/commit/fec84417a61b6cf9a3a2a65a564eaf55e294388e))
* **web:** harden localhost guard against DNS rebinding ([#1357](https://github.com/kaitranntt/ccs/issues/1357)) ([21764d5](https://github.com/kaitranntt/ccs/commit/21764d5b90c8db06f5c52a1747e2e41f65da478b))

### Hotfixes

* sync Docker release publishing fix to dev ([6ed9e09](https://github.com/kaitranntt/ccs/commit/6ed9e097e7e72c25bfe2e17f37fa248f2d0e9c0a)), closes [#1400](https://github.com/kaitranntt/ccs/issues/1400)

### Documentation

* **docker:** avoid exposing dashboard password in examples ([#1382](https://github.com/kaitranntt/ccs/issues/1382)) ([e59ee6d](https://github.com/kaitranntt/ccs/commit/e59ee6df7974964056f48759a3e68d130c580c0a))
* **docker:** harden remote token migration staging ([#1381](https://github.com/kaitranntt/ccs/issues/1381)) ([7ccea95](https://github.com/kaitranntt/ccs/commit/7ccea955ad1fcef8b880fafccac2b1a04cad564e))
* **pricing:** document legacy 4-7-thinking entry; cover tier metadata ([1fc595f](https://github.com/kaitranntt/ccs/commit/1fc595f10cda9c13fa0afd38c98c9fec1b869ae5))

### Styles

* format ccsxp config override changes ([89475e3](https://github.com/kaitranntt/ccs/commit/89475e39100ed67889943272bedf4e8494c4c06b))
* format codex target persistence changes ([ad47d0f](https://github.com/kaitranntt/ccs/commit/ad47d0f478bb5bf150f524b9ae271e2766c2bb12))
* format email fallback parsing changes ([79379a2](https://github.com/kaitranntt/ccs/commit/79379a25fe258025705088691f01f690040b053c))
* format live catalog default changes ([8261901](https://github.com/kaitranntt/ccs/commit/8261901b89a4baa351a802417ed3a1a83a75e62b))
* format provider alias normalization changes ([0ca3e4b](https://github.com/kaitranntt/ccs/commit/0ca3e4b35a356e0bbeabb3cb8b996f6eb71d70f7))
* format v3 snapshot migration changes ([b3a8ced](https://github.com/kaitranntt/ccs/commit/b3a8ced8feee587db1e3a5587b08fc0340dd140e))

### Code Refactoring

* **pricing:** derive fast-tier cache rates via buildRates helper ([254fc88](https://github.com/kaitranntt/ccs/commit/254fc88f717dd5f649aa6ffa30b1939ac3f9078f)), closes [#3](https://github.com/kaitranntt/ccs/issues/3)
* **pricing:** share Opus fast-tier rate constants ([e8057a7](https://github.com/kaitranntt/ccs/commit/e8057a70734e1d7556dbc53aec1739c73d0cf8cf))

### Tests

* **accounts:** align stale free-tier expectations with current behavior ([5157a92](https://github.com/kaitranntt/ccs/commit/5157a922a5ed0461381741d8a7b624c2dcd6f71d))
* **accounts:** align stale free-tier expectations with current grouping ([28cfc17](https://github.com/kaitranntt/ccs/commit/28cfc175bdbc28c914c171af8b1435a12b26a487))
* cover qoder base settings ([ba853b1](https://github.com/kaitranntt/ccs/commit/ba853b159b231bd97d3479701938846a83d45baa))
* **qoder:** add qoder to provider-capabilities test expectations ([4973f7a](https://github.com/kaitranntt/ccs/commit/4973f7a00f8d3d6e30efb0b59e3ed961216c26c7))
* restrict claudecode CCS_HOME cleanup ([6671423](https://github.com/kaitranntt/ccs/commit/6671423d79d7841cc2414caee252fbc67b426189))
* update proxy resolver coverage ([1f1cc05](https://github.com/kaitranntt/ccs/commit/1f1cc056ef038f491d588e56f2f81f7c0a9acfd1))
2026-06-06 22:23:37 +00:00
github-actions[bot] f5d84dcde1 chore(release): 8.1.4-dev.8 2026-06-03 15:20:04 +00:00
github-actions[bot] 288ee71c82 chore(release): 8.1.4-dev.7 2026-06-02 14:50:45 +00:00
github-actions[bot] 2368d779c7 chore(release): 8.1.4-dev.6 2026-06-02 10:55:58 +00:00
github-actions[bot] c8e0de6b02 chore(release): 8.1.4-dev.5 2026-05-30 20:24:52 +00:00
github-actions[bot] 62a4d44b58 chore(release): 8.1.4-dev.4 2026-05-30 18:57:59 +00:00
github-actions[bot] 6c57358145 chore(release): 8.1.4-dev.3 2026-05-30 18:12:27 +00:00
github-actions[bot] f76a9c03b4 chore(release): 8.1.4-dev.2 2026-05-30 17:45:54 +00:00
github-actions[bot] 6506f00d8b chore(release): 8.1.4-dev.1 2026-05-29 15:57:33 +00:00
semantic-release-bot 5b8923c85e chore(release): 8.1.4 [skip ci]
## [8.1.4](https://github.com/kaitranntt/ccs/compare/v8.1.3...v8.1.4) (2026-05-29)

### Hotfixes

* avoid Docker smoke port collisions ([#1412](https://github.com/kaitranntt/ccs/issues/1412)) ([c3d8dcb](https://github.com/kaitranntt/ccs/commit/c3d8dcbdd929e29b529c40afc965fea14af15ea1))
2026-05-29 15:52:53 +00:00
semantic-release-bot 5e8cd1035f chore(release): 8.1.3 [skip ci]
## [8.1.3](https://github.com/kaitranntt/ccs/compare/v8.1.2...v8.1.3) (2026-05-29)

### Hotfixes

* add integrated Docker healthcheck ([0e3383d](https://github.com/kaitranntt/ccs/commit/0e3383d31da6c8c882760a86890c0dd915af50db)), closes [#1400](https://github.com/kaitranntt/ccs/issues/1400)
2026-05-29 15:19:49 +00:00