Commit Graph
255 Commits
Author SHA1 Message Date
Tam Nhu Tran c6d2e71ec2 fix(dashboard): align droid config diagnostics with factory paths
- replace ~/.config/factory/config.json diagnostics with legacy ~/.factory/config.json

- keep ~/.factory/settings.json as the primary BYOK source in UI + API payload

- update droid dashboard tests and frontend typings for legacyConfig
2026-02-25 23:26:23 +07:00
Tam Nhu Tran bc079bc886 feat(dashboard): add dedicated Factory Droid diagnostics page
- add /droid route under a new Compatible CLIs sidebar section

- expose /api/droid/diagnostics and /api/droid/settings/raw for install and BYOK visibility

- include read-only settings.json viewer plus model/provider breakdown

- add unit coverage for droid dashboard service parsing and path logic
2026-02-25 22:59:15 +07:00
Tam Nhu Tran f1567c0090 fix(droid): avoid interactive model arg prompt pollution
- persist selector in ~/.factory/settings.json as settings.model

- stop injecting '-m custom:...' for interactive droid launches

- improve provider inference for localhost /v1 and qwen/deepseek/kimi

- add regression tests for adapter, provider, and config manager
2026-02-25 22:14:00 +07:00
Tam Nhu Tran 60b1c043c7 feat(droid): align BYOK provider mapping for ccsd
- add Droid provider resolver aligned with Factory BYOK schema

- persist and normalize CCS_DROID_PROVIDER across CLI and dashboard flows

- use Droid managed selector aliases with safe legacy fallback

- add unit coverage for provider inference and selector usage

Closes #632
2026-02-25 20:58:35 +07:00
Tam Nhu Tran b658b20709 fix(help): align cliproxy status and provider filter docs
- replace incorrect root help command example for provider-filtered status

- add parity regression test for cliproxy quota provider guidance
2026-02-25 17:01:41 +07:00
Tam Nhu Tran 8d95de9fd3 fix(cli): improve cliproxy target parsing edge cases
- support POSIX -- terminator so dash-prefixed variant names remain positional

- export variant parser for direct unit tests

- add --target parsing coverage for API and cliproxy arg parsers
2026-02-25 17:01:32 +07:00
Tam Nhu Tran ac1c744239 fix(cliproxy-sync): honor profile settings paths and targets
- resolve settings file from profile.settingsPath instead of reconstructing by name

- skip non-claude targets for local claude-api-key sync semantics

- add mapper regression tests for both behaviors
2026-02-25 17:01:22 +07:00
Tam Nhu Tran 2e8c7a3691 test(web-server): cover profile and variant target parsing
- export route target parsers for direct unit coverage

- verify accepted and rejected target payloads for both route modules
2026-02-25 17:01:06 +07:00
Tam Nhu Tran 2bd3c40c7a fix(targets): sanitize invalid persisted target values
- fallback unknown persisted targets to claude in profile listing and runtime resolution

- add regression test for invalid profile target fallback
2026-02-25 17:00:49 +07:00
Tam Nhu Tran 8a2a7c3eb0 feat(runtime): run cliproxy profiles on droid
- execute cliproxy profiles on droid using resolved proxy env credentials

- enforce auth/service preconditions and block Claude-only management flags

- allow dotted profile names in droid adapter/config manager
2026-02-25 15:52:40 +07:00
Tam Nhu Tran 3dacb39deb feat(api): add --target to api command
- parse and validate --target claude|droid on api create flow

- show target in API and CLIProxy list tables and usage output

- add parser unit tests for target success and failure cases
2026-02-25 15:51:54 +07:00
Kai (Tam Nhu) TranandGitHub ed8d352391 Merge pull request #626 from kaitranntt/kai/fix/agy-model-reset-sonnet46
fix(cliproxy): prevent agy model reset and add sonnet 4.6 models
2026-02-24 12:23:35 -05:00
Tam Nhu Tran bebb7582cf fix(cliproxy): prevent agy model reset and add sonnet 4.6 models 2026-02-25 00:12:49 +07:00
Tam Nhu Tran 4fed74c64b feat(auth): add opt-in shared context groups across accounts 2026-02-24 23:54:03 +07:00
Tam Nhu Tran 4eb2be79fc fix(cliproxy): prevent blank page in remote mode 2026-02-24 00:47:40 +07:00
Tam Nhu Tran 68405239cd fix: resolve package.json version conflict from main merge 2026-02-24 00:12:56 +07:00
Tam Nhu Tran 0aed60febb fix(ci): enforce parity gate and stabilize test execution 2026-02-23 23:53:09 +07:00
Kai (Tam Nhu) TranandGitHub 8cdb67842f Merge pull request #612 from unclemimo/fix/shared-skills-symlink-scan
fix(web-server): detect symlinked shared entries
2026-02-23 11:42:40 -05:00
Kai (Tam Nhu) TranandGitHub 1f56460527 Merge pull request #614 from kaitranntt/kai/feat/601-shared-memory
feat(memory): share project memory across account instances
2026-02-23 11:41:52 -05:00
Tam Nhu Tran c98e58383c Merge remote-tracking branch 'origin/dev' into pr-612-review
# Conflicts:
#	src/utils/claude-config-path.ts
#	src/web-server/shared-routes.ts
2026-02-23 23:30:03 +07:00
Tam Nhu Tran c6c44d0341 fix(memory): use async fs APIs to satisfy maintainability gate 2026-02-23 23:29:22 +07:00
Tam Nhu Tran 498b66d9cc fix(web-server): harden shared route symlink scanning 2026-02-23 23:22:29 +07:00
Tam Nhu Tran e2623e632c feat(memory): share project memory across account instances 2026-02-23 23:18:34 +07:00
Tam Nhu Tran be96b84e61 fix(codex): canonicalize dashboard presets and migrate suffixed settings 2026-02-23 22:52:44 +07:00
innovatiasandClaude Opus 4.6 e3dbc67634 fix(web-server): detect symlinked shared entries
Handle shared skills and agents when entries are symlinked directories.
Also avoid classifying root markdown files in skills/agents as commands.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-23 22:08:53 +07:00
Kai (Tam Nhu) TranandGitHub 3901e23485 Merge pull request #607 from kaitranntt/kai/fix/604-cannot-set-auto-approve
fix(persist): add auto-approve permission flags
2026-02-22 12:09:51 -05:00
Tam Nhu Tran 29cceb3a88 fix(persist): harden persist restore safety and edge cases 2026-02-23 00:05:47 +07:00
Kai (Tam Nhu) TranandGitHub b3ce680b58 Merge pull request #609 from kaitranntt/kai/fix/602-codex-model-suffix
fix(cliproxy): keep canonical codex model ids in settings
2026-02-22 11:46:12 -05:00
Tam Nhu Tran a81176da79 fix(cliproxy): keep canonical codex model ids in settings 2026-02-22 23:40:45 +07:00
Tam Nhu Tran 742b5ed580 fix(cliproxy): normalize codex effort aliases without reasoning proxy 2026-02-22 23:12:23 +07:00
Tam Nhu Tran 61bcd4df5e fix(persist): resolve CI gate and review test gaps 2026-02-22 23:01:38 +07:00
Tam Nhu Tran e3255e5615 fix(persist): add auto-approve permission flags 2026-02-22 22:51:40 +07:00
Tam Nhu Tran 34292ca7f8 fix(cliproxy): prevent false remote timeout on reachable proxy 2026-02-22 22:38:50 +07:00
Tam Nhu Tran ca58cb5a08 fix(cliproxy): harden quota guards and review follow-ups 2026-02-22 02:35:07 +07:00
Tam Nhu Tran 8c790f41ff fix(cliproxy): close remaining quota edge-case gaps 2026-02-22 02:12:40 +07:00
Tam Nhu Tran d47620592d Merge remote-tracking branch 'origin/dev' into fix/548-claude-quota-balance
# Conflicts:
#	src/commands/cliproxy/help-subcommand.ts
#	src/commands/cliproxy/index.ts
#	src/commands/cliproxy/quota-subcommand.ts
2026-02-22 01:24:44 +07:00
Tam Nhu Tran 2385d9028a feat(cliproxy): add Claude quota windows and account failover 2026-02-22 01:19:02 +07:00
Kai (Tam Nhu) TranandGitHub 06a4f3f131 Merge pull request #599 from kaitranntt/fix/598-gemini-3-1-pro-preview
fix(cliproxy): support gemini-3.1-pro-preview alias routing
2026-02-22 00:57:30 +07:00
Tam Nhu Tran 63619cb9dc fix(cliproxy): harden antigravity alias generation 2026-02-22 00:35:20 +07:00
Tam Nhu Tran 653f8092ae fix(cliproxy): add gemini 3.1 preview alias compatibility 2026-02-22 00:14:15 +07:00
Kai (Tam Nhu) TranandGitHub 4c7501fe39 Merge pull request #596 from kaitranntt/feat/refactor-hardcode-dx-one-pr
refactor(core): centralize hardcoded paths and command/provider sources
2026-02-21 10:40:51 +07:00
Tam Nhu Tran 343ec959fc fix(core): resolve edge cases and hardcoded drift 2026-02-21 10:32:19 +07:00
Tam Nhu Tran 6429781e8f fix(cliproxy): normalize provider-aware Claude model IDs 2026-02-21 02:14:09 +07:00
Tam Nhu Tran 6074fcb0b6 fix(refactor): address PR review follow-up findings 2026-02-21 01:44:44 +07:00
Tam Nhu Tran 04e4e61b68 fix(test): pin real child_process passthrough refs
- bind real spawn/spawnSync/execSync before module mocking

- avoid potential rebinding recursion or mock passthrough drift in CI

- keeps non-Claude process execution untouched during test mocks
2026-02-20 23:41:20 +07:00
Tam Nhu Tran 873b7adb70 fix(test): scope child_process mock to test lifecycle
- register child_process module mock in beforeAll instead of module load

- keep passthrough for non-Claude commands and restore after suite

- avoids cross-suite side effects that stalled cursor daemon CI tests
2026-02-20 23:36:22 +07:00
Tam Nhu Tran 5b164a6486 fix(test): prevent child_process mock cross-test leakage
- mock only Claude command spawns and pass through real child_process for others

- add missing ChildProcess-compatible fields (pid/unref) on mock child

- stabilizes cursor daemon and ccsd alias tests in CI parallel execution
2026-02-20 23:24:11 +07:00
Tam Nhu Tran e32192177b Merge remote-tracking branch 'origin/dev' into kai/fix/588-nested-session-guard 2026-02-20 23:04:59 +07:00
Tam Nhu Tran 80a84edf1f test(delegation): add regression coverage for claudecode stripping
- verify case-insensitive CLAUDECODE removal helper behavior

- cover execClaude env merge, override, no-key, and Windows paths

- cover headless executor spawn env sanitization behavior

Refs #588
2026-02-20 23:01:09 +07:00
Tam Nhu Tran 8201204380 fix(quota): address ghcp review follow-ups 2026-02-20 22:53:49 +07:00