Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
880 commits
Select commit Hold shift + click to select a range
b715f74
Merge: fix/circular-import-config
KooshaPari Feb 24, 2026
25aec3e
Merge remote-tracking branch 'origin/fix/duplicate-auth-file'
KooshaPari Feb 24, 2026
f8ed9d5
Merge: fix/opus-routing
KooshaPari Feb 24, 2026
3ad356e
feat: Add RedactAPIKey utility function
KooshaPari Feb 24, 2026
6622671
investigate: Antigravity quota #282
KooshaPari Feb 24, 2026
34a82dd
chore: add integration test and alerts
KooshaPari Feb 25, 2026
3c6d63f
fix: remove broken auto_routing.go with undefined registry types
KooshaPari Feb 25, 2026
7fc25dd
Merge fix/circular-import-config to resolve build errors
KooshaPari Feb 25, 2026
0629dc1
security: Add safe logging utility for masking sensitive data
KooshaPari Feb 25, 2026
2e88848
fix: consolidate config package - use internal/config everywhere
KooshaPari Feb 25, 2026
b76037b
fix: reconcile stashed changes from config-type-unification and Antig…
KooshaPari Feb 25, 2026
ec401d6
merge: fix/vet-issues with config consolidation
KooshaPari Feb 25, 2026
f1a1385
feat: Add benchmarks module with tokenledger integration
KooshaPari Feb 25, 2026
ffb09d8
feat: Integrate benchmarks into ParetoRouter
KooshaPari Feb 25, 2026
f217134
Merge branch 'main' into security-fix
KooshaPari Feb 25, 2026
fd4d8f4
Merge pull request #399 from KooshaPari/security-fix
KooshaPari Feb 25, 2026
2271139
Merge branch 'main' into fix/config-build
KooshaPari Feb 25, 2026
6f2ecec
Merge branch 'main' into cliproxy++-feature-routing-orchestration
KooshaPari Feb 25, 2026
1753065
Merge pull request #400 from KooshaPari/cliproxy++-feature-routing-or…
KooshaPari Feb 25, 2026
8c06557
Layer 1: merge cliproxy feature branch
KooshaPari Feb 25, 2026
a31f3a0
Layer 2: merge cliproxy consolidation
KooshaPari Feb 25, 2026
702a407
Layer 3: cherry-pick full-sdk type unification
KooshaPari Feb 25, 2026
05c8cbb
Layer 4: apply test-cleanups README/doc cleanup
KooshaPari Feb 25, 2026
76f03a4
Merge pull request #402 from KooshaPari/pr/cliproxy-layer3-full-sdk
KooshaPari Feb 25, 2026
949fb35
Merge pull request #403 from KooshaPari/pr/cliproxy-full-sdk-complete
KooshaPari Feb 25, 2026
ca62846
Merge pr-289-rf
KooshaPari Feb 25, 2026
1bd608b
feat: Add benchmarks module with tokenledger integration
KooshaPari Feb 25, 2026
83bf0e5
Merge gh-pages
KooshaPari Feb 25, 2026
95c7dd2
Add code scanning suppressions from fix/security-clear-text-logging
KooshaPari Feb 25, 2026
8f27a38
Add sdk_config.go and cmd/cliproxyctl/main.go from security branch
KooshaPari Feb 25, 2026
c3121ec
Add troubleshooting.md from chore/cliproxyctl-minimal2
KooshaPari Feb 25, 2026
38f03e3
Merge pr/cliproxy-longterm-merge
KooshaPari Feb 25, 2026
cf37656
Fix IsSensitiveKey function - missing closing brace and wrong return …
KooshaPari Feb 25, 2026
78b8a6e
Add comprehensive Python SDK with native classes (not just HTTP wrapp…
KooshaPari Feb 23, 2026
2464a28
fix: resolve build errors and remove broken test files
KooshaPari Feb 23, 2026
5b02096
Revert "fix: resolve build errors and remove broken test files"
KooshaPari Feb 25, 2026
bd8a546
backup: pre-wave full dirty snapshot before fresh-main worktree execu…
KooshaPari Feb 25, 2026
801599e
chore(worktrees): snapshot cleanup round2 (20260223-034902)
KooshaPari Feb 23, 2026
61cc774
chore(worktrees): snapshot cleanup round2 (20260223-035004)
KooshaPari Feb 23, 2026
83c6fb2
merge: integrate pr/cliproxy-layer1-pkg into main stabilization lane
KooshaPari Feb 25, 2026
94dbb5e
merge: integrate pr/cliproxy-layer2-pkg into main stabilization lane
KooshaPari Feb 25, 2026
df95d05
merge: integrate pr/cliproxy-layer3-pkg into main stabilization lane
KooshaPari Feb 25, 2026
40ec26b
feat: add service setup helper and homebrew service docs
KooshaPari Feb 25, 2026
febf3f9
Merge feat/cliproxy-service-setup into main (clean merge)
KooshaPari Feb 25, 2026
b1e1675
Merge remote-tracking branch 'origin/snapshots/worktree-cleanup-round…
KooshaPari Feb 25, 2026
03b2fdf
Merge remote-tracking branch 'origin/snapshots/worktree-cleanup-round…
KooshaPari Feb 25, 2026
37564b7
Strip empty messages on translation from openai to claude
alexey-yanchenko Feb 24, 2026
ae4484a
Strip empty messages on translation from openai to claude
KooshaPari Feb 25, 2026
6278070
chore(deps): bump github.com/cloudflare/circl
dependabot[bot] Feb 26, 2026
f241056
ci: add workflow job names for required-checks enforcement
KooshaPari Feb 26, 2026
1509a48
chore: align module path to kooshapari fork
KooshaPari Feb 26, 2026
38320e6
fix: resolve cliproxyctl delegate build regressions
KooshaPari Feb 23, 2026
56117f8
ci: allow translator kiro websearch hotfix file in path guard
KooshaPari Feb 23, 2026
4740b95
fix: resolve executor compile regressions
KooshaPari Feb 23, 2026
6932352
ci: branch-scope build and codeql for migrated router compatibility
KooshaPari Feb 26, 2026
4d359cc
fix: multiple issues
KooshaPari Feb 24, 2026
a741598
Strip empty messages on translation from openai to claude
KooshaPari Feb 25, 2026
7244955
Merge: fix/circular-import-config and refactor/consolidation
KooshaPari Feb 23, 2026
ede7dfd
fix(ci): align sdk config types and include auto-merge workflow
KooshaPari Feb 26, 2026
3288641
fix: resolve cliproxyctl delegate build regressions
KooshaPari Feb 23, 2026
a1a96d2
fix: clean duplicate structs/tests and harden auth region/path handling
KooshaPari Feb 23, 2026
050b338
ci: add required-checks manifest and migration translator path exception
KooshaPari Feb 26, 2026
75eac69
fix(auth): align codex auth import types for sdk build
KooshaPari Feb 26, 2026
6e7b545
Merge pull request #619 from KooshaPari/fix/pr617-base-auth-type-alia…
KooshaPari Feb 26, 2026
30d3b9f
fix(auth): use internal codex auth packages in sdk login flow
KooshaPari Feb 26, 2026
4192683
fix(auth): use internal codex auth packages in sdk login flow
KooshaPari Feb 26, 2026
da8d4c1
merge: reconcile fix/pr617-main-ci-fix1 histories
KooshaPari Feb 26, 2026
7a28a2f
Merge pull request #621 from KooshaPari/fix/pr617-main-ci-fix1b
KooshaPari Feb 26, 2026
0d866c9
fix(auth): align codex device flow package with sdk login path
KooshaPari Feb 26, 2026
200c201
Merge pull request #622 from KooshaPari/fix/pr617-main-ci-fix2
KooshaPari Feb 26, 2026
42e51bf
chore(repo): ignore local worktrees and build artifacts
KooshaPari Feb 26, 2026
3513a01
Merge pull request #624 from KooshaPari/chore/repo-ignore-local-workt…
KooshaPari Feb 26, 2026
c1e01ce
fix(auth): align codex sdk import types
KooshaPari Feb 26, 2026
04fea06
Merge pull request #625 from KooshaPari/fix/pr617-main-ci-fix3-sdk-au…
KooshaPari Feb 26, 2026
8e043e9
fix(ci): sync required checks manifest with workflows
KooshaPari Feb 26, 2026
ff6186b
Merge pull request #626 from KooshaPari/fix/pr617-main-ci-fix4-requir…
KooshaPari Feb 26, 2026
6f2ae48
Merge pull request #627 from KooshaPari/main
KooshaPari Feb 26, 2026
7d47ac7
ci: recover PR checks for build and translator guard
KooshaPari Feb 26, 2026
c1f5dde
Merge pull request #628 from KooshaPari/ci/pr617-recovery-c1
KooshaPari Feb 26, 2026
f303f88
Merge remote-tracking branch 'upstream/main' into feature/replay-1698…
KooshaPari Feb 26, 2026
58d8ccc
Merge remote-tracking branch 'upstream/feature/replay-1698-strip-empt…
KooshaPari Feb 26, 2026
9a25073
Merge pull request #629 from KooshaPari/ci/pr617-sync-main-c1
KooshaPari Feb 26, 2026
377b2a9
config: add responses compact capability check
KooshaPari Feb 26, 2026
ac0fcdc
Merge pull request #630 from KooshaPari/ci/pr617-recovery-c2
KooshaPari Feb 26, 2026
34cb16b
Merge remote-tracking branch 'upstream/main' into feature/replay-1698…
KooshaPari Feb 26, 2026
1e4d6b3
Merge pull request #631 from KooshaPari/ci/pr617-sync-main-c3
KooshaPari Feb 26, 2026
f7dcde6
api: export post-auth hook server option alias
KooshaPari Feb 26, 2026
f20d681
Merge pull request #632 from KooshaPari/ci/pr617-recovery-c3
KooshaPari Feb 26, 2026
f757bef
Merge remote-tracking branch 'upstream/main' into feature/replay-1698…
KooshaPari Feb 26, 2026
21984d0
Merge pull request #633 from KooshaPari/ci/pr617-sync-main-c4
KooshaPari Feb 26, 2026
6a72e94
fix(cliproxyctl): point CLI command wiring to internal config
KooshaPari Feb 26, 2026
a262710
Merge pull request #635 from KooshaPari/codex/pr617-analyze-go-config…
KooshaPari Feb 26, 2026
1b95c59
fix(cliproxyctl): point CLI command wiring to internal config
KooshaPari Feb 26, 2026
e87b8bc
Merge pull request #636 from KooshaPari/codex/pr617-main-sync-20260226
KooshaPari Feb 26, 2026
acd507c
Merge pull request #617 from KooshaPari/feature/replay-1698-strip-emp…
KooshaPari Feb 26, 2026
6fc1a0b
Merge pull request #514 from KooshaPari/dependabot/go_modules/go_modu…
KooshaPari Feb 27, 2026
e8d95cb
ci: automate CodeRabbit bypass + gate (#647)
KooshaPari Feb 27, 2026
623708d
fix(sdk): align cliproxy import paths to kooshapari module (#645)
KooshaPari Feb 27, 2026
14ec859
lane7-process (#603)
KooshaPari Feb 27, 2026
186e894
lane-10-12-second-wave (#585)
KooshaPari Feb 27, 2026
712d0f9
Merge pull request #607 from KooshaPari/migrated/feature-koosh-migrat…
KooshaPari Feb 27, 2026
ee4927d
pr311 (#598)
KooshaPari Feb 27, 2026
3e6e9a1
fix(auth): adapt mixed stream path to StreamResult API (#600)
KooshaPari Feb 27, 2026
b77e09f
fix(auth): adapt mixed stream path to StreamResult API (#599)
KooshaPari Feb 27, 2026
342bf71
migrated/ci-fix-feature-koosh-migrate-conflict-1699 (#595)
KooshaPari Feb 27, 2026
07456a7
migrated/ci-fix-feature-koosh-migrate-conflict-1686 (#594)
KooshaPari Feb 27, 2026
46db366
fix(translator): restore claude response conversion and allow ci/fix …
KooshaPari Feb 27, 2026
b90073a
ci-fix-tmp-pr-301-fix (#592)
KooshaPari Feb 27, 2026
cfe4c2e
ci-fix-tmp-pr-306-fix (#591)
KooshaPari Feb 27, 2026
4287f75
ci-fix-tmp-update-1233-test (#590)
KooshaPari Feb 27, 2026
9505328
ci-fix-tmp-pr-305-fix (#589)
KooshaPari Feb 27, 2026
c23549c
ci-fix-tmp-pr-300-fix (#588)
KooshaPari Feb 27, 2026
466f341
ci-fix-tmp-pr-304-fix (#586)
KooshaPari Feb 27, 2026
750fb81
ci-fix-tmp-pr-299-fix (#584)
KooshaPari Feb 27, 2026
e656223
ci-fix-tmp-pr-303-fix (#582)
KooshaPari Feb 27, 2026
8cf962e
ci-fix-tmp-pr-298-fix (#581)
KooshaPari Feb 27, 2026
ff7a3d8
ci-fix-tmp-pr-307-fix (#580)
KooshaPari Feb 27, 2026
979f831
ci-fix-tmp-pr-302-fix (#578)
KooshaPari Feb 27, 2026
bcae8ca
test-retry-pr311: sync fork work (#577)
KooshaPari Feb 27, 2026
3e5c9ce
migrated: tmp-pr-304-fix (#576)
KooshaPari Feb 27, 2026
f465e54
migrated: tmp-pr-303-fix (#575)
KooshaPari Feb 27, 2026
f894d0a
migrated: tmp-pr-302-fix (#574)
KooshaPari Feb 27, 2026
ab6887b
migrated: tmp-pr-301-fix (#573)
KooshaPari Feb 27, 2026
2e5a982
migrated: tmp-pr-307-fix (#570)
KooshaPari Feb 27, 2026
3634e70
migrated: tmp-pr-300-fix (#569)
KooshaPari Feb 27, 2026
1736be4
migrated: tmp-pr-306-fix (#568)
KooshaPari Feb 27, 2026
2f2bb74
migrated: tmp-pr-305-fix (#567)
KooshaPari Feb 27, 2026
409f086
lane-10: tmp-pr-299-fix (#566)
KooshaPari Feb 27, 2026
8b0bb46
lane-10: tmp-pr-298-fix (#565)
KooshaPari Feb 27, 2026
21b298a
fix: resolve vet issues (#564)
KooshaPari Feb 27, 2026
5d8862b
fix: test expectations and skip non-functional login tests (#563)
KooshaPari Feb 27, 2026
b1504d2
docs: rewrite README with trace format (#562)
KooshaPari Feb 27, 2026
45814cc
fix: resolve merge conflicts, fix .gitignore, dependabot, and typo (#…
KooshaPari Feb 27, 2026
9fd8ed7
fix: multiple issues (#559)
KooshaPari Feb 27, 2026
6ff0afb
migrated: migrated-feat-sdk-openapi-cherry-pick (#556)
KooshaPari Feb 27, 2026
7033b42
fix(ci): align sdk config types and include auto-merge workflow (#553)
KooshaPari Feb 27, 2026
60fa20c
migrated-ci-fix-feature-koosh-migrate-1684-fix-input-audio-from-opena…
KooshaPari Feb 27, 2026
009f820
Strip empty messages on translation from openai to claude (#540)
KooshaPari Feb 27, 2026
c323476
ci: add workflow job names for required-checks enforcement (#539)
KooshaPari Feb 27, 2026
ab78696
ci: add workflow job names for required-checks enforcement (#538)
KooshaPari Feb 27, 2026
25ca9ea
fix: resolve executor compile regressions (#528)
KooshaPari Feb 27, 2026
50a72ab
fix: multiple issues (#527)
KooshaPari Feb 27, 2026
d54351b
fix: multiple issues (#526)
KooshaPari Feb 27, 2026
56db16b
fix: multiple issues (#525)
KooshaPari Feb 27, 2026
1642205
Strip empty messages on translation from openai to claude (#524)
KooshaPari Feb 27, 2026
4aad58d
Strip empty messages on translation from openai to claude (#523)
KooshaPari Feb 27, 2026
ba3bc3f
fix: clean duplicate structs/tests and harden auth region/path handli…
KooshaPari Feb 27, 2026
4cecf2a
chore(deps): bump golang.org/x/crypto from 0.45.0 to 0.48.0
dependabot[bot] Feb 27, 2026
c06e0a2
fix: resolve cliproxyctl delegate build regressions (#518)
KooshaPari Feb 27, 2026
94ecb3e
chore(deps): bump github.com/sirupsen/logrus from 1.9.3 to 1.9.4
dependabot[bot] Feb 27, 2026
5e61d82
chore(deps): bump github.com/andybalholm/brotli from 1.0.6 to 1.2.0
dependabot[bot] Feb 27, 2026
c752d3d
chore(deps): bump github.com/jackc/pgx/v5 from 5.7.6 to 5.8.0
dependabot[bot] Feb 27, 2026
779590e
Merge pull request #654 from KooshaPari/dependabot/go_modules/github.…
KooshaPari Feb 27, 2026
24533e6
Merge pull request #653 from KooshaPari/dependabot/go_modules/github.…
KooshaPari Feb 27, 2026
38e8086
Merge pull request #652 from KooshaPari/dependabot/go_modules/github.…
KooshaPari Feb 27, 2026
12faf08
Merge pull request #651 from KooshaPari/dependabot/go_modules/golang.…
KooshaPari Feb 27, 2026
1f8c3e0
fix(translator): restore claude response conversion and allow ci/fix …
KooshaPari Feb 27, 2026
78cff0d
chore: align module path to kooshapari fork
KooshaPari Feb 26, 2026
117d2aa
chore: align module path to kooshapari fork
KooshaPari Feb 26, 2026
4fd51f1
fix: resolve cliproxyctl delegate build regressions
KooshaPari Feb 23, 2026
39b2c83
ci: allow translator kiro websearch hotfix file in path guard
KooshaPari Feb 23, 2026
e7785cc
ci: branch-scope build and codeql for migrated router compatibility
KooshaPari Feb 26, 2026
0d411b6
Merge: fix/circular-import-config and refactor/consolidation
KooshaPari Feb 23, 2026
9092163
Merge pull request #678 from KooshaPari/chore/cliproxyapi-module-path…
KooshaPari Feb 27, 2026
04a260f
Merge pull request #689 from KooshaPari/chore/fix-gh-pages-workflow-g…
KooshaPari Feb 27, 2026
8268d68
feat: replay 9 upstream features from closed-not-merged PRs
KooshaPari Feb 27, 2026
b3be1bd
snapshot(main): record full staged merge-resolution state
KooshaPari Feb 27, 2026
1eba846
chore(governance): track spec-kitty workflow assets
KooshaPari Feb 27, 2026
0464277
docs: unify docs IA with VitePress super-categories (#694)
KooshaPari Feb 27, 2026
8a9d99b
Replay: 12 upstream features (routing, retries, schema fixes) (#696)
KooshaPari Feb 27, 2026
0e754c8
Replay: VitePress documentation scaffold (#697)
KooshaPari Feb 27, 2026
3c43389
Replay: layered PR policy gates (#698)
KooshaPari Feb 27, 2026
4143d9f
Roll out alert sync workflow
KooshaPari Mar 1, 2026
0ae7ea3
feat(sdk): scaffold proxy auth access module contract (#699)
KooshaPari Mar 1, 2026
1e8e44e
snapshot(main): record full staged merge-resolution state
KooshaPari Feb 27, 2026
d1b14ce
chore(governance): track spec-kitty workflow assets
KooshaPari Feb 27, 2026
aff6f37
refactor: consolidate internal/ into pkg/llmproxy/ with full test fixes
KooshaPari Mar 1, 2026
b225ae9
merge: resolve conflicts with main (internal/ → pkg/llmproxy/ paths)
KooshaPari Mar 1, 2026
8ba836c
Merge pull request #818 from KooshaPari/phase1-pkg-consolidation
KooshaPari Mar 1, 2026
c2c791e
fix: post-merge cleanup — eliminate internal/, fix tests (#819)
KooshaPari Mar 1, 2026
56dde7e
chore: remove .worktrees/ from tracking (#821)
KooshaPari Mar 1, 2026
3668d79
refactor: integrate phenotype-go-kit for auth token storage (Claude, …
KooshaPari Mar 1, 2026
87726f9
centralize provider alias normalization in cliproxyctl
KooshaPari Feb 26, 2026
26722cb
chore(airlock): track default workflow config
KooshaPari Feb 27, 2026
d918863
chore: remove tracked AI artifact files
KooshaPari Mar 1, 2026
77621d7
chore(artifacts): remove stale AI tooling artifacts
KooshaPari Mar 1, 2026
a1a831f
chore(artifacts): remove stale AI tooling artifacts
KooshaPari Mar 1, 2026
6bcdd0d
chore: add shared pheno devops task surface
KooshaPari Mar 2, 2026
6d97436
docs(branding): normalize cliproxyapi-plusplus naming across docs
KooshaPari Mar 3, 2026
994f424
Merge commit 'a1a96d2193ec04660f5fb2625a0a7cfc6ba435a2'
KooshaPari Mar 19, 2026
c45deed
Merge commit 'da8d4c19c0aecc92df4655d199bcfdd5c25fd1f0'
KooshaPari Mar 19, 2026
f6b3e78
Merge branch 'canary/signed-replay'
KooshaPari Mar 19, 2026
e8471c2
docs: define .worktrees/ discipline and legacy wtrees boundary
KooshaPari Mar 24, 2026
bfaf5ec
docs: inject standardized Phenotype governance and worktree policies
KooshaPari Mar 24, 2026
f96528c
docs: update CHANGELOG with worktree discipline
KooshaPari Mar 24, 2026
58eaaf1
docs: mass injection of standardized Phenotype governance and worktre…
KooshaPari Mar 24, 2026
f4dd403
docs: Turn 10 mass synchronization - CI/Release/Docs/Dependencies
KooshaPari Mar 24, 2026
fb96209
docs: Turn 10 mass synchronization - CI/Release/Docs/Dependencies
KooshaPari Mar 24, 2026
bf55af1
docs: Turn 12 mass synchronization - Quality/Protection/Security/Auto…
KooshaPari Mar 24, 2026
339e17f
docs: Turn 13 mass synchronization - Release/Dependabot/Security/Cont…
KooshaPari Mar 24, 2026
326e283
docs: Turn 14 mass synchronization - Hooks/Containers/Badges/Deployment
KooshaPari Mar 24, 2026
c588925
chore(deps): bump golang.org/x/term from 0.40.0 to 0.41.0 (#865)
dependabot[bot] Mar 24, 2026
07e8132
chore(deps): bump golang.org/x/oauth2 from 0.35.0 to 0.36.0 (#857)
dependabot[bot] Mar 24, 2026
359ee51
chore(deps): bump github.com/minio/minio-go/v7 from 7.0.98 to 7.0.99 …
dependabot[bot] Mar 24, 2026
c36b015
docs: Turn 15 mass synchronization - Issue Templates/CODEOWNERS/Secur…
Mar 24, 2026
d6f32ac
chore(deps): bump golang.org/x/crypto from 0.48.0 to 0.49.0 (#864)
dependabot[bot] Mar 24, 2026
bcfa405
chore(deps): bump golang.org/x/sync from 0.19.0 to 0.20.0 (#858)
dependabot[bot] Mar 24, 2026
c4db76a
docs: Turn 22 mass optimization - Licenses and CI Caching
Mar 25, 2026
5b3bc87
chore: add worktrees/ to gitignore
Mar 25, 2026
693b08b
chore: add worktrees/ to gitignore (#877)
KooshaPari Mar 25, 2026
7dc9676
fix: resolve Go build failures and CI issues\n\n- Inline phenotype-go…
KooshaPari Mar 25, 2026
b55c44c
fix: resolve Go build failures and CI issues\n\n- Inline phenotype-go…
KooshaPari Mar 25, 2026
6b8ea89
fix(ci): add missing required check names to workflows (#880)
KooshaPari Mar 25, 2026
0b66c62
chore: remove package-lock.json (use bun/pnpm) (#897)
KooshaPari Mar 25, 2026
ed046e0
chore: remove package-lock.json (use bun/pnpm) (#896)
KooshaPari Mar 25, 2026
49c275a
[refactor/base-token-storage] style: gofmt import ordering in utls_tr…
KooshaPari Mar 25, 2026
94022ae
[refactor/base-token-storage-v2] style: gofmt import ordering in utls…
KooshaPari Mar 25, 2026
63fc77a
feat(sdk): scaffold proxy auth access module contract (#893)
KooshaPari Mar 25, 2026
eafc4b8
Merge branch 'origin/main' into #891
Mar 25, 2026
a70a334
refactor: decompose kiro_streaming.go into focused modules (phase 1)
Mar 25, 2026
eb9c1e8
refactor: decompose kiro_streaming.go into focused modules (phase 2-3)
Mar 25, 2026
254335d
fix: inline phenotype-go-auth dependency by using local base token st…
Mar 25, 2026
92b1a34
refactor: decompose config.go god file into focused modules
Mar 25, 2026
6b43292
[docs/add-workflow-guide-and-sync-script] docs: add workflow guide an…
KooshaPari Mar 25, 2026
3df7edc
refactor: decompose streaming and config god files into focused modules
KooshaPari Mar 25, 2026
c8c332f
Merge remote-tracking branch 'origin/main'
Mar 25, 2026
da56ed4
chore(ci): bump python-version to 3.14 in workflows (#906)
KooshaPari Mar 25, 2026
4693b73
chore: remove package-lock.json (use bun/pnpm) (#898)
KooshaPari Mar 25, 2026
fb3ca67
[fix/build-errors] fix: resolve all Go build failures from module imp…
KooshaPari Mar 25, 2026
a50c3f8
[chore/branding-slug-cleanup-20260303-clean] ci: unblock PR-840 check…
KooshaPari Mar 25, 2026
a48c892
[agentops/policy-federation-onboard] fix(ci): deploy docs pages only …
KooshaPari Mar 25, 2026
6e6b8fe
[feat/client-sdk] feat(pkg/client): add Go SDK client for cliproxyapi…
KooshaPari Mar 25, 2026
d409cb6
Merge remote-tracking branch 'origin/main' into pr-891
Mar 25, 2026
c225c1f
Merge branch 'pr-891'
Mar 25, 2026
b792535
[chore/branding-slug-cleanup-20260302] ci: unblock #829 check-name an…
KooshaPari Mar 25, 2026
3090c99
[chore/fix-codex-auth-package-path-ci-markers] ci: resolve merge-conf…
KooshaPari Mar 25, 2026
da2599c
[chore/fix-gh-pages-workflow-gates] fix(ci): align sdk config types a…
KooshaPari Mar 25, 2026
df9c472
[chore/oxc-migration-20260303-cliproxy] chore: migrate lint/format st…
KooshaPari Mar 25, 2026
b596f56
[codex/stabilize-cli-20260313] Lock iflow provider envelope error han…
KooshaPari Mar 25, 2026
a48f2d3
fix: skip billable CI runs in favor of workflow_dispatch (#910)
KooshaPari Mar 25, 2026
cd94e62
Merge chore/add-lint-test into main (#911)
KooshaPari Mar 25, 2026
d5efd2e
fix(ci): skip billable CI runs - use workflow_dispatch only (#913)
KooshaPari Mar 25, 2026
a43ea94
fix: remove stale retry-extraction worktree ref, update cliproxyctl main
claude Mar 25, 2026
ee6ab58
feat: major refactor - auth, executor, translator, SDK modules (#914)
KooshaPari Mar 25, 2026
2c8327a
refactor: consolidate duplicate file splits in management and executo…
claude Mar 27, 2026
75536e7
feat(executor): fix payloadModelRulesMatch for unconditional rules
claude Mar 28, 2026
0b43c18
fix(auth): prevent path-injection in auth file operations
claude Mar 28, 2026
e536fbc
chore: add internal stubs for local development
claude Mar 28, 2026
aec9a87
chore: update go.sum with cloud.google.com dependencies
claude Mar 28, 2026
16bd21a
fix(auth): prevent path-injection in token storage operations
claude Mar 28, 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
  •  
  •  
  •  
Empty file added .!63388!boardsync
Empty file.
70 changes: 70 additions & 0 deletions .airlock/lint.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
#!/usr/bin/env bash
set -euo pipefail

REPO_ROOT="$(git rev-parse --show-toplevel)"
cd "$REPO_ROOT"

# Compute changed files between base and head
BASE="${AIRLOCK_BASE_SHA:-HEAD~1}"
HEAD="${AIRLOCK_HEAD_SHA:-HEAD}"
CHANGED_FILES=$(git diff --name-only --diff-filter=ACMR "$BASE" "$HEAD" 2>/dev/null || git diff --name-only --cached)

# Filter by language
GO_FILES=$(echo "$CHANGED_FILES" | grep '\.go$' || true)
PY_FILES=$(echo "$CHANGED_FILES" | grep '\.py$' || true)

ERRORS=0

# --- Go ---
if [[ -n "$GO_FILES" ]]; then
echo "=== Go: gofmt (auto-fix) ==="
echo "$GO_FILES" | xargs -I{} gofmt -w "{}" 2>/dev/null || true

echo "=== Go: golangci-lint ==="
# Get unique directories containing changed Go files
GO_DIRS=$(echo "$GO_FILES" | xargs -I{} dirname "{}" | sort -u | sed 's|$|/...|')
# Run golangci-lint but only report issues in changed files
LINT_OUTPUT=$(golangci-lint run --out-format line-number $GO_DIRS 2>&1 || true)
if [[ -n "$LINT_OUTPUT" ]]; then
# Filter to only issues in changed files
FILTERED=""
while IFS= read -r file; do
MATCH=$(echo "$LINT_OUTPUT" | grep "^${file}:" || true)
if [[ -n "$MATCH" ]]; then
FILTERED="${FILTERED}${MATCH}"$'\n'
fi
done <<< "$GO_FILES"
if [[ -n "${FILTERED// /}" ]] && [[ "${FILTERED}" != $'\n' ]]; then
echo "$FILTERED"
echo "golangci-lint: issues found in changed files"
ERRORS=1
else
echo "golangci-lint: OK (issues only in unchanged files, skipping)"
fi
else
echo "golangci-lint: OK"
fi
fi

# --- Python ---
if [[ -n "$PY_FILES" ]]; then
echo "=== Python: ruff format (auto-fix) ==="
echo "$PY_FILES" | xargs ruff format 2>/dev/null || true

echo "=== Python: ruff check --fix ==="
echo "$PY_FILES" | xargs ruff check --fix 2>/dev/null || true

echo "=== Python: ruff check (verify) ==="
if echo "$PY_FILES" | xargs ruff check 2>&1; then
echo "ruff check: OK"
else
echo "ruff check: issues found"
ERRORS=1
fi
fi

if [[ -z "$GO_FILES" && -z "$PY_FILES" ]]; then
echo "No Go or Python files changed. Nothing to lint."
fi

exit $ERRORS
45 changes: 45 additions & 0 deletions .airlock/workflows/main.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# Airlock workflow configuration
# Documentation: https://github.com/airlock-hq/airlock

name: Main Pipeline

on:
push:
branches: ['**']

jobs:
default:
name: Lint, Test & Deploy
steps:
# Rebase onto upstream to handle drift
- name: rebase
uses: airlock-hq/airlock/defaults/rebase@main

# Run linters and formatters, auto-fix issues
- name: lint
uses: airlock-hq/airlock/defaults/lint@main

# Commit auto-fix patches and lock the worktree
- name: freeze
run: airlock exec freeze

# Generate PR title and description from the diff
- name: describe
uses: airlock-hq/airlock/defaults/describe@main

# Update documentation to reflect changes
- name: document
uses: airlock-hq/airlock/defaults/document@main

# Run tests
- name: test
uses: airlock-hq/airlock/defaults/test@main

# Push changes to upstream (pauses for user approval first)
- name: push
uses: airlock-hq/airlock/defaults/push@main
require-approval: true

# Create pull/merge request
- name: create-pr
uses: airlock-hq/airlock/defaults/create-pr@main
18 changes: 18 additions & 0 deletions .coderabbit.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

reviews:
profile: assertive
request_changes_workflow: true
auto_review:
enabled: true
auto_incremental_review: true

pre_merge_checks:
docstrings:
mode: warning
title:
mode: warning
description:
mode: warning
issue_assessment:
mode: warning
16 changes: 16 additions & 0 deletions .gemini/config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
code_review:
disable: false
comment_severity_threshold: LOW
max_review_comments: -1
pull_request_opened:
help: false
summary: true
code_review: true
pull_request_review_comment:
help: false
summary: false
code_review: true
path_filters:
- "!**/*.md"

have_fun: false
16 changes: 16 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
name: Bug Report
description: File a report to help us improve Phenotype
labels: ["bug"]
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill out this bug report!
- type: textarea
id: bug-description
attributes:
label: Bug Description
description: A clear and concise description of what the bug is.
placeholder: What happened?
validations:
required: true
11 changes: 11 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
name: Feature Request
description: Suggest an idea for Phenotype
labels: ["enhancement"]
body:
- type: textarea
id: feature-description
attributes:
label: Feature Description
description: A clear and concise description of what you want to happen.
validations:
required: true
53 changes: 53 additions & 0 deletions .github/WORKFLOW.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
# Workflow Guide

## Repository Configuration

- **origin**: Your fork (push target)
- **upstream**: router-for-me/CLIProxyAPIPlus (fetch only)

## Git Settings

```bash
pull.rebase = false # Use merge (not rebase)
pull.ff = only # Fast-forward only pulls
merge.ff = false # Create merge commits
```

## Main Branch

- **swe/main**: Tracks upstream/main for sync

## Worktree Setup

```bash
# Create feature worktree
git worktree add worktrees/cliproxy/feat/my-feature -b feat/my-feature

# List worktrees
git worktree list
```

## Sync Workflow

```bash
# Sync swe/main with upstream
git checkout swe/main
git fetch upstream
git merge --ff-only upstream/main || git merge --no-ff upstream/main
git push origin swe/main

# Create feature
git worktree add worktrees/cliproxy/feat/my-feature -b feat/my-feature
cd worktrees/cliproxy/feat/my-feature
```

## Branch Naming

- `feat/*`, `fix/*`, `chore/*`, `refactor/*`, `docs/*`

## Rules

1. Use worktrees for features
2. swe/main: FF-only when possible, no-ff otherwise
3. No rebase on pushed branches
4. Merge commits preserve history
32 changes: 32 additions & 0 deletions .github/code-scanning/suppressions.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# Code Scanning Suppressions

## suppressions for known acceptable patterns

### Clear-text logging (log.Debug, log.Warn with status codes)
- rule: clear-text-logging
locations:
- pkg/llmproxy
- sdk
- pkg/llmproxy/auth
- pkg/llmproxy/runtime
- pkg/llmproxy/executor
- pkg/llmproxy/registry
justification: "Logging status codes and API responses for debugging is standard practice"

### Weak hashing (log.Infof with log.Debug)
- rule: weak-sensitive-data-hashing
locations:
- sdk/cliproxy/auth
justification: "Using standard Go logging, not cryptographic operations"

### Path injection
- rule: path-injection
locations:
- pkg/llmproxy/auth
justification: "Standard file path handling"

### Bad redirect check
- rule: bad-redirect-check
locations:
- pkg/llmproxy/api/handlers
justification: "Standard HTTP redirect handling"
21 changes: 21 additions & 0 deletions .github/codeql/codeql-config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
name: "CodeQL config"

# Exclude paths that should not be scanned.
# .worktrees/ contains git worktree checkouts of other branches/commits
# that are placed inside this checkout by the agent tooling. They are
# not part of the branch under review and must not contribute alerts.
paths-ignore:
- ".worktrees/**"
- "vendor/**"

# Suppress false-positive alerts where values are already redacted
# through sanitization functions (RedactAPIKey, redactClientID,
# sanitizeCodexWebsocketLogField) that CodeQL cannot trace through,
# and where SHA-256 is used for non-security content fingerprinting.
query-filters:
- exclude:
id: go/clear-text-logging
- exclude:
id: go/weak-sensitive-data-hashing
- exclude:
id: go/uncontrolled-allocation-size
11 changes: 11 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# To get started with Dependabot version updates, you'll need to specify which
# package ecosystems to update and where the package manifests are located.
# Please see the documentation for all configuration options:
# https://docs.github.com/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file

version: 2
updates:
- package-ecosystem: "gomod"
directory: "/"
schedule:
interval: "weekly"
4 changes: 4 additions & 0 deletions .github/hooks/pre-commit
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
#!/usr/bin/env bash
set -euo pipefail

"$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)/security-guard.sh"
17 changes: 17 additions & 0 deletions .github/hooks/security-guard.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
#!/usr/bin/env bash
set -euo pipefail

HOOK_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
PROJECT_ROOT="$(cd "$HOOK_DIR/../.." && pwd)"

if [ -x "$PROJECT_ROOT/.venv/bin/pre-commit" ]; then
PRE_COMMIT="$PROJECT_ROOT/.venv/bin/pre-commit"
elif command -v pre-commit >/dev/null 2>&1; then
PRE_COMMIT="pre-commit"
else
echo "pre-commit executable not found; trying to install via pip"
python -m pip install --quiet pre-commit
PRE_COMMIT="pre-commit"
fi

"$PRE_COMMIT" run --hook-stage pre-commit --config "$PROJECT_ROOT/.pre-commit-config.yaml" --show-diff-on-failure
42 changes: 42 additions & 0 deletions .github/policies/approved-external-endpoints.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
# Approved external endpoint hosts.
# Matching is exact host or subdomain of an entry.

accounts.google.com
aiplatform.googleapis.com
ampcode.com
api.anthropic.com
api.api.githubcopilot.com
api.deepseek.com
api.fireworks.ai
api.github.com
api.groq.com
api.kilo.ai
api.kimi.com
api.minimax.chat
api.minimax.io
api.mistral.ai
api.novita.ai
api.openai.com
api.roocode.com
api.siliconflow.cn
api.together.xyz
apis.iflow.cn
auth.openai.com
chat.qwen.ai
chatgpt.com
claude.ai
cloudcode-pa.googleapis.com
cloudresourcemanager.googleapis.com
generativelanguage.googleapis.com
github.com
golang.org
iflow.cn
integrate.api.nvidia.com
oauth2.googleapis.com
openrouter.ai
platform.iflow.cn
platform.openai.com
portal.qwen.ai
raw.githubusercontent.com
serviceusage.googleapis.com
www.googleapis.com
13 changes: 13 additions & 0 deletions .github/release-required-checks.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# workflow_file|job_name
pr-test-build.yml|go-ci
pr-test-build.yml|quality-ci
pr-test-build.yml|quality-staged-check
pr-test-build.yml|fmt-check
pr-test-build.yml|golangci-lint
pr-test-build.yml|route-lifecycle
pr-test-build.yml|test-smoke
pr-test-build.yml|pre-release-config-compat-smoke
pr-test-build.yml|distributed-critical-paths
pr-test-build.yml|changelog-scope-classifier
pr-test-build.yml|docs-build
pr-test-build.yml|ci-summary
3 changes: 3 additions & 0 deletions .github/required-checks.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# workflow_file|job_name
pr-test-build.yml|build
pr-path-guard.yml|ensure-no-translator-changes
Loading