Skip to content

Catalog refactor and security/quality hardening pass (external/eyrie snapshot)#60

Merged
Patel230 merged 15 commits into
mainfrom
feature/hawk-external-eyrie-20260705
Jul 8, 2026
Merged

Catalog refactor and security/quality hardening pass (external/eyrie snapshot)#60
Patel230 merged 15 commits into
mainfrom
feature/hawk-external-eyrie-20260705

Conversation

@Patel230

@Patel230 Patel230 commented Jul 7, 2026

Copy link
Copy Markdown
Contributor

Summary

This branch is off an older, diverged checkout of eyrie used as hawk's external/eyrie git submodule (pinned at 544a924). The same catalog refactor has already been applied to the up-to-date eyrie repo in PR #59; this PR brings it to this older submodule snapshot until it can be re-synced to eyrie's current main.

  • Catalog v1 spec parsing, provider discovery/refresh, live enrichment, and deployment routing refactor
  • Remove deprecated legacy catalog shim
  • Fix stale ProtocolID field references in test files to match the renamed Deployment.APIProtocolID field (caught via go vet on this snapshot)

Test plan

  • GOWORK=off go build ./...
  • GOWORK=off go vet ./...
  • GOWORK=off go test ./...

Patel230 added 14 commits July 7, 2026 13:16
…RSION

- Remove broken internal/version/ package (embedding stale 0.1.0 copy)
- Add root version.go with //go:embed VERSION (resolves to root VERSION)
- Revert client/client.go to SetVersion pattern (version set by root init)
- Remove legacy migration code (migrate.go, EnsureDeploymentConfigV2, etc.)
- Add deploymentOwnerProviderID for poolside/groq-direct routing
api.poolside.ai does not resolve — Poolside runs on Baseten
(inference.poolside.ai). Verified with curl that models endpoint
returns available models (laguna-m.1, laguna-xs.2).
Both providers were missing FetchPoolside and FetchGroq functions
and were not registered in the live.Registry map, causing
'live: unknown fetcher' errors during catalog discovery.

Also updates the parity test assertion from 19 to 21 providers.
Adds mock HTTP server tests, no-key tests, and JSON parsing tests
for both FetchPoolside and FetchGroq, following the same pattern
as existing provider tests (grok, kimi, etc.).
Adds ClinePass as an OpenAI-compatible provider using the
https://api.cline.bot/api/v1 endpoint with CLINE_API_KEY auth.

Wires through all layers: provider spec, env config, profile,
runtime profile, routing, live fetcher, client registry,
compat config, deployment, and tests.
Cline API does not expose a GET /models endpoint, so credential
probing fails with HTTP 404. Changed ProbeKind to ProbeNone (key
is saved without validation). Live fetcher returns a curated
static list of 10 known ClinePass models instead of hitting the
API.
- Catalog v1 spec parsing, provider discovery/refresh, live enrichment,
  and deployment routing refactor
- Remove deprecated legacy catalog shim
- Fix stale ProtocolID field references in default_catalog_test.go and
  model_policy_test.go to match the renamed Deployment.APIProtocolID field
@Patel230 Patel230 merged commit 949f6e0 into main Jul 8, 2026
15 checks passed
@Patel230 Patel230 deleted the feature/hawk-external-eyrie-20260705 branch July 8, 2026 08:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant