feat(providers): discover generic harness model catalogs - #1502
Open
HamedMP wants to merge 1 commit into
Open
Conversation
This was referenced Aug 31, 2026
Contributor
Greptile SummaryThis PR adds bounded live Pi and OpenCode provider/model discovery and projects harness-native authentication through the shared provider-settings contract.
Confidence Score: 5/5The PR appears safe to merge. No blocking failure remains. Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart LR
CLI[Pi / OpenCode CLI] --> Discovery[Bounded catalog discovery]
Discovery --> Store[ProviderSettingsStore]
Store --> Snapshot[ProviderSettingsSnapshot]
Snapshot --> Settings[Settings UI]
Snapshot --> Chat[Chat catalog]
Snapshot --> Execution[Harness execution]
Discovery -- failed or empty --> Offline[catalog_unavailable]
Offline --> Settings
Offline -. blocked .-> Chat
Offline -. blocked .-> Execution
Reviews (6): Last reviewed commit: "feat(providers): discover generic harnes..." | Re-trigger Greptile |
HamedMP
force-pushed
the
codex/generic-harness-model-catalog
branch
from
August 31, 2026 21:58
5df6f1c to
f55cc3d
Compare
Owner
Author
|
@greptile review |
HamedMP
force-pushed
the
codex/generic-harness-model-catalog
branch
from
August 31, 2026 22:09
f55cc3d to
caaafaa
Compare
Owner
Author
|
@greptile review |
HamedMP
force-pushed
the
codex/generic-harness-model-catalog
branch
from
August 31, 2026 22:24
caaafaa to
f3cfceb
Compare
Owner
Author
|
@greptile review |
HamedMP
force-pushed
the
codex/generic-harness-model-catalog
branch
from
August 31, 2026 22:32
f3cfceb to
efffa22
Compare
Owner
Author
|
@greptile review |
HamedMP
changed the base branch from
codex/electron-canvas-parity
to
graphite-base/1502
September 1, 2026 15:44
HamedMP
force-pushed
the
graphite-base/1502
branch
from
September 1, 2026 15:45
0915936 to
d1aa486
Compare
HamedMP
force-pushed
the
codex/generic-harness-model-catalog
branch
from
September 1, 2026 15:45
efffa22 to
a4ce1ed
Compare
Summary: - discover bounded live provider and model catalogs from Pi and OpenCode - distinguish model selection from Matrix and owner-funded access routes - share runnable route validation across Settings, Chat, and execution - document the runtime source of truth and add regression coverage Rationale: - generic harnesses should expose the models their authenticated runtimes actually support instead of a stale hard-coded list - Matrix AI funds compatible routes but is not itself a model provider Tests: - 168 focused contract, gateway, shell, and UI tests - full repository TypeScript check - changed-diff pattern scan with 0 violations
HamedMP
force-pushed
the
codex/generic-harness-model-catalog
branch
from
September 1, 2026 15:49
a4ce1ed to
b2dd28b
Compare
Owner
Author
|
@greptile review |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Summary
Restack cleanup
This PR is now one commit directly on current
main. The provider foundation,funded gateway, Chat runtime integration, Canvas restoration, and other work
already shipped by #1493 / bundle 1144 are no longer part of this PR's ancestry
or diff. The remaining delta is only live generic-harness catalog discovery and
the contract/UI wiring required to use it safely.
UX model
The route is presented as:
Harness → Model → Paid throughAnthropic, OpenAI, Baseten, OpenCode, Z.AI, and other discovered vendors are
model providers. Matrix AI is an access and billing source for eligible models;
it is intentionally not listed as a model provider.
Pi and OpenCode authentication remains owned by each CLI profile under the
owner HOME. Matrix does not copy those credentials or inject platform/provider
secrets into harness-native runs.
Invariants
for harness-native providers and models;
ProviderSettingsSnapshotis thesole renderer projection.
by
ProviderSettingsStore; discovery is read-only, bounded, cached for oneminute, and bypassed by explicit Settings refresh.
marks only that harness's saved route
catalog_unavailable. The instanceremains visible and editable even if the bounded selectable catalog is full,
while Chat and execution fail closed until discovery recovers.
Matrix-funded and owner-key routes retain their existing exact credential
resolver; no native-profile secret is persisted in provider settings.
CLI profiles, provider balance ingestion, broader Pi/OpenCode permission
modes, and Matrix funding for models outside the relay allowlist.
Safety bounds
Validation
git diff --checkpassedstopped because this checkout has no Clerk publishable key, which CI supplies
feature head remains applicable; the catalog implementation was preserved by
the range-diff during restack
Review / monitoring
main