Tam Nhu Tran
4950be7fc0
fix(ci): harden ai review output
...
- replace raw assistant-text fallback with structured output normalization
- simplify the review prompt toward a tighter findings-only contract
- add tests for malformed output, safe fallback, and markdown escaping
2026-03-30 14:22:59 -04:00
github-actions[bot]
69cbb77924
chore(release): 7.63.0-dev.1 [skip ci]
2026-03-30 13:33:37 +00:00
Kai (Tam Nhu) Tran and GitHub
35eb2959ba
Merge pull request #857 from kaitranntt/kai/fix/856-timeline-single-account
...
fix(dashboard): connection timeline shows only one account
2026-03-30 09:31:57 -04:00
Tam Nhu Tran
4ab51945a4
test(dashboard): add regression tests for connection timeline event generation
...
Covers the shared-base-time fix to prevent one account from
dominating the timeline. 9 test cases: multi-account interleaving,
sort order, empty inputs, missing lastUsedAt, future-timestamp guard.
2026-03-30 09:21:39 -04:00
Tam Nhu Tran
d76ef5bcb3
fix(dashboard): use shared base time for connection timeline events
...
Connection Timeline sidebar showed only one account because
generateConnectionEvents() used per-account lastUsedAt as the base
timestamp. Accounts with more recent lastUsedAt dominated the
recency-sorted 100-event cap.
Use the maximum lastUsedAt across all accounts so events interleave
proportionally.
Closes #856
2026-03-30 09:12:54 -04:00
semantic-release-bot
5160e1d454
chore(release): 7.63.0 [skip ci]
...
## [7.63.0](https://github.com/kaitranntt/ccs/compare/v7.62.2...v7.63.0 ) (2026-03-30)
### Features
* add codex dashboard parity ([8c5da9f ](https://github.com/kaitranntt/ccs/commit/8c5da9f9e878196356e33a799b921b67e3396252 ))
* **codex-ui:** surface cliproxy setup guidance ([0ffde4f ](https://github.com/kaitranntt/ccs/commit/0ffde4f3a2688ea1864fab3c94d3d020d4b33a93 ))
* **codex:** add ccsxp runtime shortcut ([deb1e9d ](https://github.com/kaitranntt/ccs/commit/deb1e9d71eaa226494ec2f60a52cab20b4b0a546 ))
* **codex:** add dashboard control center ([b47aa0d ](https://github.com/kaitranntt/ccs/commit/b47aa0d28d55260e0db6d0e12791ea4a57fcd54b ))
* **codex:** harden runtime targeting and dashboard editing ([9e43bee ](https://github.com/kaitranntt/ccs/commit/9e43beec40608f178e502d1751723465189528a9 ))
* **profiles:** expose codex runtime across surfaces ([f9c1238 ](https://github.com/kaitranntt/ccs/commit/f9c1238483b0c91d701547c9ad330261a2b51fbb )), closes [#773 ](https://github.com/kaitranntt/ccs/issues/773 )
* **targets:** add native codex runtime target ([8f60820 ](https://github.com/kaitranntt/ccs/commit/8f60820f3358d878e0f4b9cd448b00690d9b4406 )), closes [#773 ](https://github.com/kaitranntt/ccs/issues/773 )
### Bug Fixes
* **ai-review:** increase max-turns to 40 and add hotfix commitlint type ([04c4d61 ](https://github.com/kaitranntt/ccs/commit/04c4d61018ec7b108d8b93d0d11a549a0cd52c71 ))
* **ai-review:** revert to single-job review with enhanced prompt ([f98530b ](https://github.com/kaitranntt/ccs/commit/f98530bc73866f57cd0ba4b51d0515eda707e039 ))
* **cliproxy:** narrow legacy gemini alias cleanup ([c4428e4 ](https://github.com/kaitranntt/ccs/commit/c4428e4176bb7244d597b5f75240aa39bf536bbf ))
* **cliproxy:** preserve manual high-minor alias clusters ([6707b7d ](https://github.com/kaitranntt/ccs/commit/6707b7d5b470375c3068950894fb7b96b8fa4bf4 ))
* **cliproxy:** prune stale control panel alias clusters ([061cd96 ](https://github.com/kaitranntt/ccs/commit/061cd9679fc56a8a0711877f57eebcd998df10b6 ))
* **codex:** align cliproxy guidance with runtime behavior ([bd1ff02 ](https://github.com/kaitranntt/ccs/commit/bd1ff02521ac75d6e06b336bc9030da084d6a8df ))
* **codex:** align runtime compatibility and dashboard types ([3c52b1a ](https://github.com/kaitranntt/ccs/commit/3c52b1ab6d0ef8fccff14113c40c287320d5b547 ))
* **codex:** harden dashboard config editing ([ebc9acf ](https://github.com/kaitranntt/ccs/commit/ebc9acf8e41fccc9ae968d40be75f1f7e4382929 ))
* **codex:** harden native alias launches ([f47ab48 ](https://github.com/kaitranntt/ccs/commit/f47ab484f3d8abd12a6d771a21beb9d50403a014 ))
* **codex:** restore version context for override failures ([643bd2a ](https://github.com/kaitranntt/ccs/commit/643bd2a5ac10e63c7ca4e0e91a856145f1935455 ))
### Documentation
* **codex:** clarify ccsxp and cliproxy setup ([318b57b ](https://github.com/kaitranntt/ccs/commit/318b57bedc12f5c3602916418b8ce08bb46d4218 ))
* **codex:** document control center behavior ([ca98184 ](https://github.com/kaitranntt/ccs/commit/ca981847b2ee889b350c78c0e691aec56cd7787d ))
* **codex:** document runtime target support ([da4bb29 ](https://github.com/kaitranntt/ccs/commit/da4bb29fd71434f2e9179a34c37257c2c5e9df30 )), closes [#773 ](https://github.com/kaitranntt/ccs/issues/773 )
### Styles
* **codex:** use monochrome sidebar icon ([09b7f66 ](https://github.com/kaitranntt/ccs/commit/09b7f66c0b69b31d2662f102fe2fb2f928cb24cd ))
### Tests
* **codex:** cover alias passthrough gaps ([c0f0f17 ](https://github.com/kaitranntt/ccs/commit/c0f0f173e07124c0875940e0d430dacadf38704c ))
2026-03-30 01:56:03 +00:00
Kai (Tam Nhu) Tran and GitHub
5dc66a5843
Merge pull request #854 from kaitranntt/dev
...
feat(release): promote dev to main
2026-03-29 21:54:18 -04:00
github-actions[bot]
2cb153534c
chore(release): 7.62.2-dev.4 [skip ci]
2026-03-30 01:28:10 +00:00
Kai (Tam Nhu) Tran and GitHub
9bc572ce7e
Merge pull request #853 from kaitranntt/kai/feat/ccsxp-codex-shortcut
...
feat(codex): add ccsxp shortcut and native cliproxy guidance
2026-03-29 21:26:26 -04:00
Tam Nhu Tran
bd1ff02521
fix(codex): align cliproxy guidance with runtime behavior
2026-03-29 21:04:59 -04:00
Tam Nhu Tran
0ffde4f3a2
feat(codex-ui): surface cliproxy setup guidance
2026-03-29 19:44:02 -04:00
Tam Nhu Tran
318b57bedc
docs(codex): clarify ccsxp and cliproxy setup
2026-03-29 19:43:46 -04:00
Tam Nhu Tran
deb1e9d71e
feat(codex): add ccsxp runtime shortcut
2026-03-29 19:43:26 -04:00
github-actions[bot]
325137fd38
chore(release): 7.62.2-dev.3 [skip ci]
2026-03-29 20:51:00 +00:00
Kai (Tam Nhu) Tran and GitHub
af46c23ecf
Merge pull request #852 from kaitranntt/kai/fix/ccsx-codex-auth
...
fix(codex): harden native alias launches
2026-03-29 16:49:14 -04:00
Tam Nhu Tran
643bd2a5ac
fix(codex): restore version context for override failures
2026-03-29 16:32:11 -04:00
Tam Nhu Tran
c0f0f173e0
test(codex): cover alias passthrough gaps
...
- add integration coverage for ccsx help and version short/long flags
- assert CODEX_MANAGED_BY_BUN is stripped from nested Codex launches
2026-03-29 16:06:16 -04:00
Tam Nhu Tran
f47ab484f3
fix(codex): harden native alias launches
...
- pass ccsx help/version flags straight through to native Codex
- strip parent Codex session env before nested launches
- avoid eager version/help probes unless config override detection is needed
2026-03-29 15:54:18 -04:00
github-actions[bot]
bcbf780f82
chore(release): 7.62.2-dev.2 [skip ci]
2026-03-29 18:44:46 +00:00
Kai (Tam Nhu) Tran and GitHub
6fc9aacc06
Merge pull request #850 from kaitranntt/kai/feat/issue-773-codex-runtime-target
...
feat: add codex runtime target and dashboard parity
2026-03-29 14:43:09 -04:00
github-actions[bot]
3cd9a827f5
chore(release): 7.62.2-dev.1 [skip ci]
2026-03-29 18:42:18 +00:00
Kai (Tam Nhu) Tran and GitHub
d32af7079e
Merge pull request #851 from kaitranntt/kai/fix/control-panel-model-noise
...
fix(cliproxy): clean stale Gemini control panel aliases
2026-03-29 14:40:41 -04:00
Tam Nhu Tran
9e43beec40
feat(codex): harden runtime targeting and dashboard editing
2026-03-29 14:18:51 -04:00
Tam Nhu Tran
6707b7d5b4
fix(cliproxy): preserve manual high-minor alias clusters
2026-03-29 14:13:23 -04:00
Tam Nhu Tran
c4428e4176
fix(cliproxy): narrow legacy gemini alias cleanup
2026-03-29 14:07:28 -04:00
Tam Nhu Tran
061cd9679f
fix(cliproxy): prune stale control panel alias clusters
...
- prune stale generated Gemini preview clusters during config regeneration
- preserve manual preview overrides on built-in Gemini alias names
- add regression coverage for stale cluster cleanup and manual pins
2026-03-29 14:07:28 -04:00
Tam Nhu Tran
09b7f66c0b
style(codex): use monochrome sidebar icon
...
- add a dedicated monochrome Codex sidebar asset
- keep the existing colored Codex icons unchanged elsewhere
2026-03-29 13:14:15 -04:00
Tam Nhu Tran
ebc9acf8e4
fix(codex): harden dashboard config editing
2026-03-29 13:14:15 -04:00
Tam Nhu Tran
ca981847b2
docs(codex): document control center behavior
...
- describe the split-view Codex dashboard and guided config surfaces
- document raw-editor guardrails, trust path rules, and reset-to-default support
- refresh related architecture and docs cross-links
2026-03-29 13:14:15 -04:00
Tam Nhu Tran
b47aa0d28d
feat(codex): add dashboard control center
...
- add guided editors for top-level settings, trust, profiles, providers, MCP, and features
- refresh raw snapshots after patch saves to avoid stale mtime conflicts
- block structured saves while raw TOML is dirty and add route plus hook coverage
2026-03-29 13:14:15 -04:00
Tam Nhu Tran
3c52b1ab6d
fix(codex): align runtime compatibility and dashboard types
2026-03-29 13:14:15 -04:00
Tam Nhu Tran
8c5da9f9e8
feat: add codex dashboard parity
2026-03-29 13:14:15 -04:00
Tam Nhu Tran
da4bb29fd7
docs(codex): document runtime target support
...
- document the ccs-codex and ccsx runtime aliases
- capture the supported v1 matrix and bridge behavior for native Codex runs
Refs #773
2026-03-29 13:14:15 -04:00
Tam Nhu Tran
f9c1238483
feat(profiles): expose codex runtime across surfaces
...
- update CLI, API, route, and dashboard surfaces to recognize the Codex runtime target
- normalize persisted codex targets back to claude so runtime-only behavior stays truthful
- add regression coverage for help text, route parsing, and profile storage normalization
Refs #773
2026-03-29 13:14:15 -04:00
Tam Nhu Tran
8f60820f33
feat(targets): add native codex runtime target
...
- add a Codex adapter, detector, runtime aliases, and compatibility matrix
- keep Codex runtime-only while preserving persisted targets for claude and droid
- cover Codex launch, reasoning, wrapper detection, and bridge routing regressions
Refs #773
2026-03-29 13:14:15 -04:00
github-actions[bot]
9307bb857f
chore(sync): merge main into dev after release [skip ci]
2026-03-29 17:10:56 +00:00
semantic-release-bot
2a46e0b0c2
chore(release): 7.62.2 [skip ci]
...
## [7.62.2](https://github.com/kaitranntt/ccs/compare/v7.62.1...v7.62.2 ) (2026-03-29)
### Bug Fixes
* **ai-review:** increase max-turns to 40 and add hotfix commitlint type ([bcbf8a2 ](https://github.com/kaitranntt/ccs/commit/bcbf8a236d0f90b3f7b85348e01bde95da03f42b ))
* **ai-review:** revert to single-job review with enhanced prompt ([fb8b26c ](https://github.com/kaitranntt/ccs/commit/fb8b26c6947c5c0359cdc6898a5a6f17fdfef703 ))
2026-03-29 17:10:39 +00:00
Tam Nhu Tran
04c4d61018
fix(ai-review): increase max-turns to 40 and add hotfix commitlint type
...
- Bump --max-turns 30→40 for comprehensive single-reviewer prompt
- Add 'hotfix' to commitlint allowed types (already in .releaserc.cjs)
2026-03-29 13:09:23 -04:00
Tam Nhu Tran
f98530bc73
fix(ai-review): revert to single-job review with enhanced prompt
...
Multi-job parallel pipeline proved too fragile for CI:
- Agent tool unavailable in claude-code-action
- 6-job workflow: artifact passing failures, turn budget exhaustion
- GLM API errors cascade across jobs
Reverts to proven single-job architecture. Keeps enhanced prompt
combining security, quality, and CCS compliance scopes.
2026-03-29 13:09:23 -04:00
Kai (Tam Nhu) Tran and GitHub
3c34574f37
Merge pull request #849 from kaitranntt/kai/hotfix-ai-review-simplify
...
fix(ai-review): revert to single-job review with enhanced prompt
2026-03-29 13:08:58 -04:00
Tam Nhu Tran
bcbf8a236d
fix(ai-review): increase max-turns to 40 and add hotfix commitlint type
...
- Bump --max-turns 30→40 for comprehensive single-reviewer prompt
- Add 'hotfix' to commitlint allowed types (already in .releaserc.cjs)
2026-03-29 13:01:55 -04:00
Tam Nhu Tran
fb8b26c694
fix(ai-review): revert to single-job review with enhanced prompt
...
Multi-job parallel pipeline proved too fragile for CI:
- Agent tool unavailable in claude-code-action
- 6-job workflow: artifact passing failures, turn budget exhaustion
- GLM API errors cascade across jobs
Reverts to proven single-job architecture. Keeps enhanced prompt
combining security, quality, and CCS compliance scopes.
2026-03-29 13:00:09 -04:00
semantic-release-bot
fa0b393def
chore(release): 7.62.1 [skip ci]
...
## [7.62.1](https://github.com/kaitranntt/ccs/compare/v7.62.0...v7.62.1 ) (2026-03-29)
### Bug Fixes
* **ai-review:** bump orchestrator max-turns 20→25 for large PR merges ([106067f ](https://github.com/kaitranntt/ccs/commit/106067fefb99844a0ee83b79cccc803fe660e664 ))
* **ai-review:** increase turn budget and improve fallback extraction ([1c4fc96 ](https://github.com/kaitranntt/ccs/commit/1c4fc96d33413efdae0223a3b7db0cab2a14bcec ))
2026-03-29 16:41:38 +00:00
Kai (Tam Nhu) Tran and GitHub
c269fb342f
Merge pull request #847 from kaitranntt/dev
...
fix(ai-review): increase turn budget and improve fallback extraction
2026-03-29 12:40:02 -04:00
github-actions[bot]
a7a70c80fd
chore(release): 7.62.0-dev.1 [skip ci]
2026-03-29 16:37:31 +00:00
Kai (Tam Nhu) Tran and GitHub
d3cd84e4a3
Merge pull request #846 from kaitranntt/kai/fix/ai-review-turn-budget-and-fallback
...
fix(ai-review): increase turn budget and improve fallback extraction
2026-03-29 12:35:52 -04:00
Tam Nhu Tran
106067fefb
fix(ai-review): bump orchestrator max-turns 20→25 for large PR merges
2026-03-29 12:33:38 -04:00
Tam Nhu Tran
1c4fc96d33
fix(ai-review): increase turn budget and improve fallback extraction
...
- Increase per-reviewer max-turns 25→40 (security review hit limit on
large PRs like codex runtime with ~5000 line diff)
- Increase orchestrator max-turns 15→20
- Improve fallback extraction: concatenate ALL assistant messages (not
just last) when reviewer hits turn limit without writing output file
- Add descriptive prefix to fallback output explaining why extraction
was needed (e.g., "hit turn limit", "no execution log")
- Ensures something meaningful is posted even when CI jobs fail
2026-03-29 12:21:28 -04:00
semantic-release-bot
c1c17b3f0d
chore(release): 7.62.0 [skip ci]
...
## [7.62.0](https://github.com/kaitranntt/ccs/compare/v7.61.1...v7.62.0 ) (2026-03-29)
### Features
* **ai-review:** parallel subagent review pipeline ([ce023aa ](https://github.com/kaitranntt/ccs/commit/ce023aa8f40bad7b6851779700bf59b8739cfb5c )), closes [#837 ](https://github.com/kaitranntt/ccs/issues/837 )
* **ai-review:** workflow-level parallel review jobs ([8c371e7 ](https://github.com/kaitranntt/ccs/commit/8c371e73a38389b579fb2ecbfea20c1f4b8d630a )), closes [#843 ](https://github.com/kaitranntt/ccs/issues/843 )
### Bug Fixes
* **ai-review:** address all review findings — restore allowedTools, add fallbacks ([36e8cc4 ](https://github.com/kaitranntt/ccs/commit/36e8cc47d934ca798d92637079ba39d101eba164 ))
* **ai-review:** use printf for subagent prompt outputs, match existing pattern ([d2510fc ](https://github.com/kaitranntt/ccs/commit/d2510fc860628ea8c10c30da8d9fb7a6d2d86297 ))
* **auth:** signal auth-required for remote access in /api/auth/check ([5a09547 ](https://github.com/kaitranntt/ccs/commit/5a09547532754da21faacb5351cc3538a9db05a4 ))
* **cliproxy:** align gemini 3.1 preset compatibility ([5ac91e0 ](https://github.com/kaitranntt/ccs/commit/5ac91e0cac6cb4acc9f26f9461943788d5c43ae6 ))
* **cliproxy:** align gemini flash pricing and dashboard imports ([2423864 ](https://github.com/kaitranntt/ccs/commit/2423864817bd045e04f76f5905c2e09c6748a687 ))
* **cliproxy:** centralize gemini compatibility and fallback hints ([2251312 ](https://github.com/kaitranntt/ccs/commit/2251312411f1e2b8f04844efa4a6ca2a07229a4e ))
* **cliproxy:** guard binary install against ETXTBSY when running ([5eac9c5 ](https://github.com/kaitranntt/ccs/commit/5eac9c584ac67382c71510489578644c81ed01f8 ))
* **cliproxy:** resolve gemini presets from live models ([934e6ab ](https://github.com/kaitranntt/ccs/commit/934e6ab52b7bc80dd3876b6fe7c75803f0392d82 ))
* **docker:** address review findings — PID guard, deleteBinary guard, blocked fallback ([7d410b2 ](https://github.com/kaitranntt/ccs/commit/7d410b26d04b72bfa77b98334a8b3fcbb4dfb3d8 ))
* **docker:** address review findings — test, docs, bcrypt path ([cd09b84 ](https://github.com/kaitranntt/ccs/commit/cd09b845daed75dde6fd4248fac8450837974513 ))
* **docker:** include docker/ assets in npm package ([50b5660 ](https://github.com/kaitranntt/ccs/commit/50b56600ddc38b85c9308cb9d541b15720aaf5ce )), closes [#829 ](https://github.com/kaitranntt/ccs/issues/829 )
* **docker:** print auth setup reminder after remote deployment ([59be7f8 ](https://github.com/kaitranntt/ccs/commit/59be7f8682c4be95886728555fd1567ea1faf7cf ))
* **docker:** register session lock from bootstrap for proxy discovery ([a0f28f8 ](https://github.com/kaitranntt/ccs/commit/a0f28f8807dff5036f94183e8f12cd0cd36505af ))
* **docker:** use export for remote env vars and increase build timeout ([60167d3 ](https://github.com/kaitranntt/ccs/commit/60167d3f2b3a1d94392d888e7cc5859372beac39 )), closes [#832 ](https://github.com/kaitranntt/ccs/issues/832 )
* **docker:** use HTTP-first proxy detection in health checks ([d7a80ed ](https://github.com/kaitranntt/ccs/commit/d7a80ed38d61204479bd8fb971b656a35e705d42 ))
* **docker:** wrap session registration in try-catch and narrow ETXTBSY guard ([e8b7ac7 ](https://github.com/kaitranntt/ccs/commit/e8b7ac730f108a2ef9393767e070c7703c16e557 ))
* harden CCS backlog sync pagination and recovery ([e661772 ](https://github.com/kaitranntt/ccs/commit/e6617726cb9fcbeefd64d57d3f001fe381099607 ))
* **ui:** hide version badge when API fails instead of showing v5.0.0 ([efe6953 ](https://github.com/kaitranntt/ccs/commit/efe6953da06263d4fdb03468f0c0f7385523cb17 ))
* **ui:** redirect to login when auth check fails from remote access ([e9fceed ](https://github.com/kaitranntt/ccs/commit/e9fceed80716b4e032e4ad0eca65b5fb005f02ae ))
* **websearch:** avoid partial settings-hook migration ([fbbdd80 ](https://github.com/kaitranntt/ccs/commit/fbbdd8083028ee6eb43d2f939212e8f63910453c ))
* **websearch:** harden settings-profile hook setup ([0e6965d ](https://github.com/kaitranntt/ccs/commit/0e6965d205c06667e9fe43205d8fadcfa4278aa7 ))
* **websearch:** install hook for settings profiles ([39a3e9d ](https://github.com/kaitranntt/ccs/commit/39a3e9dfc09eacddd1ca2e11fbc8ea7585e64bbb ))
* **websearch:** restore hook recovery and force register ([0821c68 ](https://github.com/kaitranntt/ccs/commit/0821c68559d7dac6dc3cd0bd1062f0b2889fc774 ))
### Documentation
* **docker:** add post-deployment guide for auth, token migration, and verification ([c26efae ](https://github.com/kaitranntt/ccs/commit/c26efae72ad664f9c8b5a85168704bc7fee7533f )), closes [#841 ](https://github.com/kaitranntt/ccs/issues/841 )
* **docker:** use docker cp for token migration and fix bcrypt command ([f8c43a3 ](https://github.com/kaitranntt/ccs/commit/f8c43a374d68b1e8bd1c4fd18b1ab1a903116a60 ))
### Styles
* **ai-review:** add emojis to orchestrator output format sections ([86f45c2 ](https://github.com/kaitranntt/ccs/commit/86f45c22741841db64937bc98b9a5d211340f2e4 ))
### Code Refactoring
* **ai-review:** matrix strategy + orchestrator AI merge ([97f07c2 ](https://github.com/kaitranntt/ccs/commit/97f07c2b121b85ad05a931b16fe2f348755a5e55 ))
* **ai-review:** remove redundant allowedTools, enforce subagent dispatch ([d67fa35 ](https://github.com/kaitranntt/ccs/commit/d67fa350b8bd1c2ada0577c22a70908284adcb1c ))
* **ai-review:** switch --allowedTools to --tools for actual restriction ([53ad283 ](https://github.com/kaitranntt/ccs/commit/53ad2836c4cedca8dcc819f003f1526b2cc0a31c ))
### Tests
* **auth:** verify effectiveAuthRequired logic for remote vs local access ([a23caf0 ](https://github.com/kaitranntt/ccs/commit/a23caf00513411132a7d28b12f40a51476a69790 ))
* **docker:** add regression test for bundled asset availability ([13254f2 ](https://github.com/kaitranntt/ccs/commit/13254f28a6d6170fe0a46ed2ed2326441cc2d717 ))
* **docker:** add tests for health check port detection and ETXTBSY guard ([a517c50 ](https://github.com/kaitranntt/ccs/commit/a517c506cbcb7e6993f458b24048c9ccccb9faf5 ))
* **docker:** update executor tests for export syntax and build timeout ([cbe93d4 ](https://github.com/kaitranntt/ccs/commit/cbe93d4f7643091fbdc1c0073c5e05bef4b2eac5 ))
2026-03-29 15:46:52 +00:00
Kai (Tam Nhu) Tran and GitHub
dc51cb1e2f
Merge pull request #845 from kaitranntt/dev
...
feat(release): promote dev to main — v7.62.0
2026-03-29 11:45:17 -04:00