Commit Graph
3539 Commits
Author SHA1 Message Date
Kai (Tam Nhu) TranandGitHub d1069fdca8 Merge pull request #1061 from walker1211/feat/browser-mcp-hover-phase11e
feat(browser): complete Browser MCP automation stack
2026-04-23 16:23:38 -04:00
Tam Nhu Tran 5081231667 test(ci): keep split browser MCP suites in slow bucket 2026-04-22 23:20:11 -04:00
Tam Nhu Tran 50fa27f0a5 test(browser): split Browser MCP hook coverage by domain 2026-04-22 23:07:50 -04:00
Tam Nhu Tran 5ff0370c1c chore: merge origin/dev into pr-1061 fix branch 2026-04-22 22:38:20 -04:00
Tam Nhu Tran e51b53fab9 chore(browser): drop phase design reports 2026-04-22 22:35:12 -04:00
Tam Nhu Tran c24033dc6b fix(browser): preserve opt-in browser settings and env isolation 2026-04-22 22:35:02 -04:00
Tam Nhu Tran 7732b2039a fix(browser): harden Browser MCP sessions and artifacts 2026-04-22 22:34:49 -04:00
github-actions[bot] 5ddf130223 chore(release): 7.73.1-dev.6 [skip ci] 2026-04-23 02:19:26 +00:00
Kai (Tam Nhu) TranandGitHub 68322d53da Merge pull request #1059 from innocarpe/fix/agent-team-with-gpt
fix(settings-profile): preserve nested model intent for agent team launches
2026-04-22 22:16:25 -04:00
Tam Nhu Tran f78c30ac50 fix(runtime): isolate nested Anthropic env across delegation paths 2026-04-22 22:09:08 -04:00
github-actions[bot] c0e524925d chore(release): 7.73.1-dev.5 [skip ci] 2026-04-23 02:06:19 +00:00
Kai (Tam Nhu) TranandGitHub 142381078e Merge pull request #1069 from sgaluza/feat/opus-4-7-adaptive-thinking
fix(cliproxy): use adaptive thinking for Opus 4.7 + add 'max' level
2026-04-22 22:03:21 -04:00
Tam Nhu Tran b3bc17639c fix(ui): surface the max thinking level in settings and help 2026-04-22 21:43:32 -04:00
Tam Nhu Tran 71deda553a fix(cliproxy): preserve adaptive thinking on opus 4.7 paths 2026-04-22 21:43:11 -04:00
github-actions[bot] d4e2ef5499 chore(release): 7.73.1-dev.4 [skip ci] 2026-04-23 01:11:23 +00:00
Kai (Tam Nhu) TranandGitHub 58de693abe Merge pull request #1072 from kaitranntt/kai/feat/1065-provider-sections
feat(cliproxy): separate core and plus provider sections
2026-04-22 21:08:25 -04:00
Tam Nhu Tran 254abd504f fix(cliproxy): keep provider sections consistent for variants 2026-04-22 20:02:54 -04:00
Tam Nhu Tran f6c86b79fc feat(cliproxy): separate core and plus provider sections 2026-04-22 19:51:20 -04:00
github-actions[bot] 0357f4fee4 chore(release): 7.73.1-dev.3 [skip ci] 2026-04-22 21:05:43 +00:00
Kai (Tam Nhu) TranandGitHub 6953a2f6b4 Merge pull request #1068 from kaitranntt/kai/chore/ci-contributor-friendly
chore(ci): contributor-friendly CI remediation
2026-04-22 17:02:43 -04:00
Tam Nhu Tran 6b5c74aa4b perf(test-bucket): only serialize slow bucket, parallelize fast
Reviewer noted `--max-concurrency=1` was applied to both buckets. Slow
bucket needs it (subprocesses, ports, shared state → flaky in parallel)
but fast bucket was unnecessarily capped. Remove the flag for fast;
keep for slow.

Verified: test:fast still green (2510 pass, 14.4s locally).
2026-04-22 16:42:45 -04:00
Tam Nhu Tran eab2b48f2c docs(test-bucket): document slowTests addition criteria
Reviewer flagged that the manual `slowTests` array silently degrades
`test:fast` if new subprocess/server/timer tests are added without being
declared slow (no literal `dist/` means auto-detection misses them).

Interim fix: explicit 5-rule criteria block in the script so contributors
know when to add a test.

Enforcement (automated perf-budget warning in push-ci.yml) tracked in
issue #1071.
2026-04-22 16:31:29 -04:00
Tam Nhu Tran a3f5aff45d docs: remove maintainer-only runner info from contributor docs
Self-hosted runner troubleshooting (`ssh docker`, `systemctl status
actions-runner`, `cliproxy` runner label) is maintainer infra. External
contributors have no access to that host and the guidance was noise.

- CLAUDE.md: drop "Self-Hosted Runner Awareness" subsection.
- CONTRIBUTING.md: rewrite queued-runner note as generic "maintainer
  infrastructure issue; leave a comment". Remove `cliproxy` runner label
  mentions from AI Review Lane.

Equivalent maintainer runbook now lives in the monorepo root CLAUDE.md,
where it's actually actionable.
2026-04-22 16:20:35 -04:00
Tam Nhu Tran 6d4dcc1174 fix(ci): keep fast bucket stable for commonjs tests 2026-04-22 16:00:39 -04:00
Tam Nhu Tran 5af639ddf7 fix(ci): tighten slow bucket guardrails 2026-04-22 15:54:07 -04:00
Tam Nhu Tran 572b184220 fix(ci): address reviewer follow-up findings 2026-04-22 15:41:35 -04:00
Sergey GaluzaandOnSteroids 45fe7ab086 feat(cliproxy): add 'max' thinking level for Claude Opus 4.7
Anthropic exposes `max` as a distinct adaptive-thinking effort above
`xhigh` on Opus 4.7. Previously the validator aliased user input `max`
down to `xhigh`, so users couldn't reach the real top-tier effort
through CCS.

Extend the validator:
- Add `max` to VALID_THINKING_LEVELS and THINKING_LEVEL_RANK (rank 6,
  above xhigh)
- Add `max` to THINKING_LEVEL_BUDGETS (65536, CCS-internal numeric
  mapping for closest-level lookups)
- Widen ThinkingSupport.maxLevel union to include 'max'

The existing `max: 'xhigh'` alias in findClosestLevel is kept as a
graceful fallback for models whose levels list does not include `max`
(e.g. Codex `gpt-5.4`), because exact-match on validLevels takes
priority — so Opus 4.7 returns `max` directly while Codex still maps
`max` -> `xhigh`.

Update the claude.claude-opus-4-7 catalog entry to expose
`['low', 'medium', 'high', 'xhigh', 'max']` with `maxLevel: 'max'`.

Built [OnSteroids](https://onsteroids.ai)

Co-Authored-By: OnSteroids <built@onsteroids.ai>
2026-04-22 21:32:14 +02:00
Tam Nhu Tran cf5fc96b7d test(ci): cover pr workflow coverage 2026-04-22 15:23:00 -04:00
Tam Nhu Tran ddfbcb63f4 docs(contrib): align local gate shortcuts 2026-04-22 15:12:24 -04:00
Tam Nhu Tran b314cf353e fix(ci): keep release workflows on full test coverage 2026-04-22 15:12:07 -04:00
Sergey GaluzaandOnSteroids 46920dbc08 fix(cliproxy): use adaptive thinking for Claude Opus 4.7
Per Anthropic docs, Claude Opus 4.7 only supports adaptive thinking;
manual `thinking.type: "enabled"` with `budget_tokens` is rejected
with HTTP 400.

Switch the claude provider's `claude-opus-4-7` entry from
`type: 'budget'` to `type: 'levels'` with the effort tiers exposed
by the API: `low | medium | high | xhigh`. The proxy is expected to
translate these into `thinking.type: "adaptive"` with the effort
parameter.

Opus 4.6 and Sonnet 4.6 keep `type: 'budget'` for now since the
deprecated mode is still functional on those models.

Built [OnSteroids](https://onsteroids.ai)

Co-Authored-By: OnSteroids <built@onsteroids.ai>
2026-04-22 21:09:21 +02:00
Tam Nhu Tran c9eaae17c1 docs(contrib): clarify CI lanes and parity gates 2026-04-22 15:07:12 -04:00
Tam Nhu Tran b9f5783fac test(ci): cover push quality workflow 2026-04-22 15:06:55 -04:00
Tam Nhu Tran 051f78aee7 chore(ci): split dev quality checks from release automation 2026-04-22 15:05:44 -04:00
github-actions[bot] fd0e9b7c3a chore(release): 7.73.1-dev.2 [skip ci] 2026-04-22 18:45:09 +00:00
Kai (Tam Nhu) TranandGitHub 20884c94c5 Merge pull request #1066 from kaitranntt/kai/fix/1058-codex-effort-suffixes
fix: preserve codex effort suffixes in dashboard profiles
2026-04-22 14:42:04 -04:00
Tam Nhu Tran 3a63cc0431 fix: preserve supplemental codex effort variants 2026-04-22 14:31:40 -04:00
Tam Nhu Tran e2ca197397 fix: preserve codex effort suffixes in dashboard profiles 2026-04-22 14:24:00 -04:00
github-actions[bot] b376a485e0 chore(release): 7.73.1-dev.1 [skip ci] 2026-04-22 13:30:21 +00:00
Tam Nhu Tran 89a32c2ecd fix(test): stabilize suite isolation for dev pushes 2026-04-22 09:24:03 -04:00
Tam Nhu Tran e6ac91b9c7 fix(test): stabilize proxy integration server ports 2026-04-22 09:16:15 -04:00
Tam Nhu Tran 3e7ce1743b hotfix: preserve plus fallback state and guard variant updates 2026-04-22 08:52:17 -04:00
Tam Nhu Tran dd90ea7e2f hotfix: close cliproxy plus fallback gaps 2026-04-22 08:52:17 -04:00
Tam Nhu Tran b8b48a99ba hotfix(cliproxy): fallback from deleted CLIProxyAPIPlus to original backend
The upstream router-for-me/CLIProxyAPIPlus repo was deleted, breaking any
install/update path that resolved backend: plus. Existing users with
`backend: plus` saved in config.yaml hit 404s on every bootstrap.

Changes:
- Flip DEFAULT_BACKEND from 'plus' to 'original' (platform-detector.ts)
- Flip default cliproxy.backend in createEmptyUnifiedConfig() to 'original'
- Runtime 404 fallback: getConfiguredBackend() degrades 'plus' -> 'original'
  with a one-time warning, so existing installations keep working without a
  manual reconfig step
- Update CLIProxyBackend docblock to document the fallback behavior
- Update tests to match new default

Retains the 'plus' type and BACKEND_CONFIG entry for forward compatibility
once CCS self-maintains its own Plus fork.

Closes #1062
2026-04-22 08:52:17 -04:00
Wooseong Kim 2191f0a6c7 fix(settings-profile): preserve non-routing env for Claude launches
Keep settings-profile Claude launches aligned with profile-scoped
non-routing env while still stripping routing/auth values.

- build claudeRuntimeEnvVars from filtered global + settings env
- preserve CLAUDE_CODE_MAX_OUTPUT_TOKENS and model defaults for
  nested settings-profile launches
- extend browser launch regression coverage to prove global_env
  cannot reintroduce routing/auth values
2026-04-22 14:08:37 +09:00
Wooseong Kim 1fd2fb83fb fix(runtime): strip reintroduced Anthropic routing env
Prevent settings-profile Claude launches from reintroducing
routing/auth env after the final env merge.

- re-strip ANTHROPIC_BASE_URL, ANTHROPIC_AUTH_TOKEN, and
  ANTHROPIC_API_KEY after merging envVars
- preserve model-selection env such as ANTHROPIC_MODEL and
  ANTHROPIC_DEFAULT_SONNET_MODEL
- add a regression test covering explicit settings-profile
  overrides that try to reintroduce routing env

Verification:
- bun test tests/unit/utils/claudecode-env-stripping.test.ts
- bun run validate
2026-04-22 14:08:37 +09:00
Wooseong Kim 5881a505d9 fix(settings-profile): pass selective Anthropic env stripping to Claude launches 2026-04-22 14:08:37 +09:00
Wooseong Kim 9ae85b82c1 fix(runtime): strip inherited Anthropic routing env selectively 2026-04-22 14:08:37 +09:00
walker1211andClaude Opus 4.7 4cf826efa2 fix(image-analysis): clear runtime env on native-read fallback
Avoid carrying runtime API credentials and endpoint fields into native Read fallback launches.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-04-22 01:36:11 +08:00
walker1211andClaude Opus 4.7 63082d4aed fix(image-analysis): clear runtime env on native-read fallback
Avoid carrying runtime API credentials and endpoint fields into native Read fallback launches.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-04-22 01:25:32 +08:00