Skip to content

refactor(arch): remaining registry/feature tasks — frontend mounts, native FeatureBundle, merge surface, pluginreg aligned#114

Merged
matdev83 merged 5 commits into
mainfrom
arch-review-remaining-tasks
Jul 7, 2026
Merged

refactor(arch): remaining registry/feature tasks — frontend mounts, native FeatureBundle, merge surface, pluginreg aligned#114
matdev83 merged 5 commits into
mainfrom
arch-review-remaining-tasks

Conversation

@matdev83

@matdev83 matdev83 commented Jul 7, 2026

Copy link
Copy Markdown
Owner

Summary

  • Completes all remaining registry/feature/frontend tasks from the architecture review resolution plan:
    • Frontend mount relocation (Task 3.3 + F-07): Each frontend package (openairesponses, openailegacy, anthropic, gemini) now exposes Mount(mux, opts); standardplugins/frontends_install.go deleted; duplicated 6-field handler wiring eliminated.
    • Feature noop conversion + bridge retirement (Tasks 6.1-6.3 + F-08): All 7 hook-only features converted to native lipfeature.FeatureBundle; FeatureFactoryFromHooks bridge deleted; internal/core/hooks import removed from standardplugins.
    • Merge surface relocation (Tasks 3.4-3.5): MergedFeatureSurface + merge logic moved from pluginreg to internal/featurebundle as free functions; pluginreg drops internal/core/hooks import.
    • Baseline final update: pluginreg reclassified exception -> aligned; standardplugins reclassified exception -> aligned; featurebundle stays exception (hooks for MergedFeatureSurface.Hooks).
    • Feature bridge retirement checklist: docs/feature-bridge-retirement-checklist.md documents all 13 features.
  • Also adds 3 executor characterization tests (nil Store, nil call, call.Validate failure) as the safety net for the executor collaborator extraction (Phase 4 Tasks 4.2-4.7), which is the next increment.

Remaining (next increment to this PR or follow-up PR)

  • Section 6: Route-preference characterization test (the 4th gap).
  • Section 7: Executor field grouping (6 grouped structs: routingRuntime, securityRuntime, accountingRuntime, observabilityRuntime, extensionRuntime, interleavedRuntime).
  • Sections 8-11: 4 collaborator extractions (RequestPreparer, RoutePlanner, AttemptOpener, StreamAssembler) from Execute (L228-416).
  • Section 12: Executor budget tightening (480 -> ~250).
  • These are the highest-risk extractions in the roadmap (no-retry-after-output, B2BUA continuity, secure-session gates). The characterization tests are the safety net.

Test plan

  • go build ./... + go vet ./...
  • go test -run '^$' ./... (all tests compile)
  • make quality-checks (gofmt, tidy, build, vet, goroutine allowlist, regex hotpath, archtest incl. aligned pluginreg + standardplugins baseline)
  • make test-unit (zero failing packages)
  • go run ./cmd/lipstd check-config --config ./config/examples/dogfood-local-stub.yaml — configuration valid
  • Reviewer: confirm pluginreg is aligned (Registry + validate + EffectiveAPIKeys only, no hooks); standardplugins is aligned (no hooks); featurebundle has only the merge surface; FeatureFactoryFromHooks is deleted; frontend Mount functions are protocol-owned

Mateusz and others added 2 commits July 7, 2026 19:49
…(Phase 3 + 6)

Execute Phase 3 (registry split) and Phase 6 (feature bridge cleanup): move standard bundle tables, installers, per-backend factories, env-key resolution, and default wire model from internal/pluginreg to new internal/standardplugins; move the FeatureFactoryFromHooks bridge to new internal/featurebundle. pluginreg retains Registry, ValidateBundledFactories, EffectiveAPIKeys, and the feature merge surface (MergedFeatureSurface + Registry methods). The feature merge surface stays in pluginreg because its methods are on *Registry (Go requires same-package); its relocation to featurebundle is a follow-up that requires converting methods to free functions.

standardplugins re-exports pluginreg types via type/const aliases (types.go) so moved installer/factory files compile with minimal reference churn. The standardbundle facade (internal/pluginreg/standardbundle/install.go) now delegates to standardplugins. All call sites updated: bootstrap_plan.go, build_executor.go, routes_read.go, stdhttp/route.go, cmd/model-inventory-proof, testkit/conformance, and ~40 test files across runtimebundle/stdhttp/core/cmd. 27 test files moved from pluginreg to standardplugins (they test moved code and were internal package pluginreg, unable to import standardplugins without a cycle).

Hexagonal baseline updated: pluginreg allowed_internal_core_imports narrowed (config removed — moved with standard bundle); internal/standardplugins added as exception (config, execbackend, hooks) with retirement trigger for frontend mount relocation; internal/featurebundle added as exception (hooks) with retirement trigger for bridge deletion. Critical-file budget path updated from pluginreg/standard_table.go to standardplugins/standard_table.go. Verification: make quality-checks, make test-unit (zero failing packages), and lipstd serve smoke (405 + X-Trace-Id) all pass.

Phase 6 partial: the bridge (FeatureFactoryFromHooks) moved to internal/featurebundle. The 7 hook-only features still call the bridge (now featurebundle.FeatureFactoryFromHooks from standardplugins). Converting the 3 noops to native FeatureBundle and the merge surface relocation are follow-up tasks. No behavior change; Build/BuildBootstrap/Built unchanged.

Co-authored-by: Cursor <cursoragent@cursor.com>
…ative FeatureBundle, merge surface relocation, pluginreg aligned (Tasks 3.3-3.5, 6.1-6.3)

Complete all remaining registry/feature/frontend tasks from the architecture review resolution plan: (1) Frontend mount relocation — each frontend package (openairesponses, openailegacy, anthropic, gemini) now exposes Mount(mux, opts); standardplugins/frontends_install.go deleted; the duplicated 6-field handler wiring is eliminated (F-07 fixed). (2) Feature noop conversion + bridge retirement — all 7 hook-only features converted to native lipfeature.FeatureBundle; FeatureFactoryFromHooks bridge deleted from internal/featurebundle; internal/core/hooks import removed from standardplugins (F-08 fixed). (3) Merge surface relocation — MergedFeatureSurface + merge logic moved from pluginreg to internal/featurebundle as free functions; pluginreg drops internal/core/hooks import. (4) pluginreg reclassified exception -> aligned (only imports execbackend + modelcatalog). (5) standardplugins reclassified exception -> aligned (only imports config + execbackend; hooks removed). (6) docs/feature-bridge-retirement-checklist.md documents all 13 features.

Also adds 3 executor characterization tests (nil Store, nil call, call.Validate failure) as the safety net for the executor collaborator extraction (Phase 4 Tasks 4.2-4.7), which is the next increment.

Hexagonal baseline updated: pluginreg + standardplugins -> aligned; featurebundle stays exception (hooks import for MergedFeatureSurface.Hooks, with retirement trigger). Verification: make quality-checks, make test-unit (zero failing packages), lipstd check-config all pass.

Co-authored-by: Cursor <cursoragent@cursor.com>
@coderabbitai

coderabbitai Bot commented Jul 7, 2026

Copy link
Copy Markdown

Review Change Stack

Warning

Review limit reached

@matdev83, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 8 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

Run ID: cd1c61f4-eeae-40cc-a6a1-6923c5cedf70

📥 Commits

Reviewing files that changed from the base of the PR and between b6ce61c and a1ff14a.

📒 Files selected for processing (10)
  • .kiro/steering/api-standards.md
  • .kiro/steering/product.md
  • EchoesVault/pages/package-map.md
  • EchoesVault/pages/security-auth.md
  • README.md
  • docs/extension-platform-authoring.md
  • docs/runtime-flow.md
  • internal/plugins/features/README.md
  • internal/standardplugins/keys.go
  • internal/stdhttp/auth/adapter.go
📝 Walkthrough

Walkthrough

This PR extracts standard backend/feature registry logic from internal/pluginreg into a new internal/standardplugins package, migrates feature-surface merging into internal/featurebundle as package-level functions, removes the FeatureFactoryFromHooks bridge in favor of native lipfeature.FeatureBundle returns, adds dedicated frontend Mount functions, and updates all call sites and architecture metadata accordingly.

Changes

Standardplugins split and callers migration

Layer / File(s) Summary
New standardplugins package: types, keys, backends, features
internal/standardplugins/types.go, internal/standardplugins/keys.go, internal/standardplugins/features_install.go, internal/standardplugins/backends_*.go, internal/standardplugins/*_test.go
Adds UpstreamAPIKeys/ResolveUpstreamAPIKeysFromEnv, type/constant/variable aliases to pluginreg, package renames from pluginreg to standardplugins, and feature helpers refactored to return lipfeature.FeatureBundle; adds new posture tests.
Feature surface merge refactor and hooks-bridge retirement
internal/featurebundle/merge_surface.go, internal/pluginreg/keys.go, internal/pluginreg/reg.go, internal/pluginreg/standardbundle/*, internal/pluginreg/*_test.go, internal/standardplugins/feature_merge_test.go, internal/standardplugins/feature_yaml_test.go, internal/standardplugins/registry_zero_test.go
MergeFeatureSurface/BuildFeatureHooks become package-level featurebundle functions; FeatureFactoryFromHooks bridge removed; tests updated to build lipfeature.FeatureBundle directly and call featurebundle.BuildFeatureHooks/MergeFeatureSurface.
Standalone frontend Mount functions and StandardBundle wiring
internal/plugins/frontends/{anthropic,gemini,openailegacy,openairesponses}/mount.go, internal/standardplugins/standard_table.go
Adds Mount functions for each frontend and rewires StandardBundle() to reference these functions and bare feature factories instead of prior mount constants and FeatureFactoryFromHooks.
Update callers across cmd, core, runtimebundle, stdhttp, testkit
cmd/..., internal/core/..., internal/infra/runtimebundle/..., internal/stdhttp/..., internal/testkit/conformance/harness.go
Updates all installer/default-wire-model/custom-backend-kind call sites to use internal/standardplugins and internal/featurebundle instead of internal/pluginreg.
Architecture guardrails and retirement documentation
internal/archtest/critical_files.go, testdata/architecture/hexagonal_migration_baseline.json, docs/feature-bridge-retirement-checklist.md
Updates critical file budget path, hexagonal migration baseline exceptions/import allowances, and adds a checklist documenting the feature-bridge retirement.

New executor characterization tests

Layer / File(s) Summary
Executor Execute error-path characterization tests
internal/core/runtime/executor_characterization_phase4_test.go
Adds tests asserting Execute returns invalid-arguments and validate-call errors for nil Store, nil call, and zero-value lipapi.Call inputs.

Estimated code review effort: 3 (Moderate) | ~30 minutes

Possibly related PRs

  • matdev83/go-llm-interactive-proxy#30: Adds/uses ValidateCustomCompatibleBackendPrefixes which this PR moves to standardplugins call sites in bootstrap_plan.go and build.go.
  • matdev83/go-llm-interactive-proxy#34: Touches the same credentialedBackendCandidates/UpstreamAPIKeys logic in cmd/model-inventory-proof/main.go that this PR migrates to internal/standardplugins.
🚥 Pre-merge checks | ✅ 8
✅ Passed checks (8 passed)
Check name Status Explanation
Title check ✅ Passed The title summarizes the refactor across registry, feature bundles, and frontend mounts.
Description check ✅ Passed The description is directly about the feature, frontend, and registry refactor in the PR.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
No Secrets ✅ Passed No hardcoded credentials, private keys, or production secrets appear; matches are only env-var names and test fixtures.
Context Propagation ✅ Passed PASS: new mounts only register existing handlers; request contexts still flow via r.Context()->Exec.Execute(ctx), CLI uses timeouts/defer cancel, and no new goroutines were added.
No Accidental Public Api Break ✅ Passed No pkg/** API changed; the exported internal symbols were intentionally moved, with compatibility notes in the PR description and docs/checklist.

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

…/feature APIs

Update all active docs, steering, EchoesVault pages, and one code comment that still pointed at deleted or moved surfaces after PR #114: pluginreg/standard_table.go -> standardplugins/standard_table.go; pluginreg/keys.go -> standardplugins/keys.go; pluginreg/frontends_install.go -> frontend package Mount functions; Registry.MergeFeatureSurface -> featurebundle.MergeFeatureSurface; pluginreg.ResolveUpstreamAPIKeysFromEnv -> standardplugins.ResolveUpstreamAPIKeysFromEnv; pluginreg.InstallStandardBundleOn -> standardplugins.InstallStandardBundleOn; FeatureFactoryFromHooks -> retired (all features now native FeatureBundle).

Files updated: README.md, .kiro/steering/api-standards.md, .kiro/steering/product.md, docs/runtime-flow.md, docs/extension-platform-authoring.md, internal/plugins/features/README.md, EchoesVault/pages/package-map.md, EchoesVault/pages/security-auth.md, internal/stdhttp/auth/adapter.go. No behavior change; docs and one comment only.

Co-authored-by: Cursor <cursoragent@cursor.com>

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@internal/standardplugins/keys.go`:
- Around line 28-32: The doc comment for ResolveUpstreamAPIKeysFromEnv
overstates support for numbered suffixes in collectNumberedEnvKeys. Update the
comment to clearly reflect the actual behavior: the bare PREFIX value is treated
as the first entry and numbered keys start at _2, while
OpenRouter/NVIDIA/Hugging Face explicitly support _1. Keep the wording aligned
with the implementation in collectNumberedEnvKeys and the provider-specific
handling in ResolveUpstreamAPIKeysFromEnv.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

Run ID: 21e07068-d1e2-4846-9edf-4710f6b8d282

📥 Commits

Reviewing files that changed from the base of the PR and between 910c41b and b6ce61c.

📒 Files selected for processing (97)
  • cmd/lipstd/hooks_compose_test.go
  • cmd/model-inventory-proof/main.go
  • cmd/model-inventory-proof/main_test.go
  • docs/feature-bridge-retirement-checklist.md
  • internal/archtest/critical_files.go
  • internal/core/diag/inventory_test.go
  • internal/core/runtime/executor_backend_credentials_test.go
  • internal/core/runtime/executor_characterization_phase4_test.go
  • internal/core/runtime/executor_local_stub_integration_test.go
  • internal/featurebundle/merge_surface.go
  • internal/infra/runtimebundle/auth_compose_test.go
  • internal/infra/runtimebundle/auth_secret_leak_test.go
  • internal/infra/runtimebundle/bootstrap_plan.go
  • internal/infra/runtimebundle/build.go
  • internal/infra/runtimebundle/build_executor.go
  • internal/infra/runtimebundle/build_modelcatalog_test.go
  • internal/infra/runtimebundle/build_test.go
  • internal/infra/runtimebundle/dual_backend_test.go
  • internal/infra/runtimebundle/managed_postgres_runtime_integration_test.go
  • internal/infra/runtimebundle/managed_postgres_runtime_test.go
  • internal/infra/runtimebundle/minimal_registry_test.go
  • internal/infra/runtimebundle/modelcatalog_override_set_test.go
  • internal/infra/runtimebundle/modelregistry_build_test.go
  • internal/infra/runtimebundle/opencode_zen_registry_live_test.go
  • internal/infra/runtimebundle/routes_read.go
  • internal/infra/runtimebundle/routes_read_test.go
  • internal/infra/runtimebundle/secure_session_build_test.go
  • internal/infra/runtimebundle/sqlite_closer_test.go
  • internal/pluginreg/custom_registry_hooks_test.go
  • internal/pluginreg/feature_merge_surface_test.go
  • internal/pluginreg/featurebundle.go
  • internal/pluginreg/frontends_install.go
  • internal/pluginreg/keys.go
  • internal/pluginreg/proof_reference_features_test.go
  • internal/pluginreg/reg.go
  • internal/pluginreg/standardbundle/install.go
  • internal/pluginreg/standardbundle/install_test.go
  • internal/pluginreg/validate_test.go
  • internal/plugins/frontends/anthropic/mount.go
  • internal/plugins/frontends/gemini/mount.go
  • internal/plugins/frontends/openailegacy/mount.go
  • internal/plugins/frontends/openairesponses/mount.go
  • internal/standardplugins/backend_model_inventory_config_test.go
  • internal/standardplugins/backend_prefix_inventory_test.go
  • internal/standardplugins/backend_security_test.go
  • internal/standardplugins/backends_acp_cli.go
  • internal/standardplugins/backends_acp_cli_test.go
  • internal/standardplugins/backends_anthropic.go
  • internal/standardplugins/backends_bedrock.go
  • internal/standardplugins/backends_gemini.go
  • internal/standardplugins/backends_install.go
  • internal/standardplugins/backends_install_test.go
  • internal/standardplugins/backends_misc.go
  • internal/standardplugins/backends_ollama.go
  • internal/standardplugins/backends_openai.go
  • internal/standardplugins/backends_openaicodex.go
  • internal/standardplugins/backends_openaicodex_test.go
  • internal/standardplugins/backends_openaifamily_yaml.go
  • internal/standardplugins/backends_openaifamily_yaml_test.go
  • internal/standardplugins/backends_opencode.go
  • internal/standardplugins/backends_openrouter.go
  • internal/standardplugins/bedrock_acp_install_regression_test.go
  • internal/standardplugins/build_backend_test.go
  • internal/standardplugins/credentials.go
  • internal/standardplugins/custom_backend_env_keys_test.go
  • internal/standardplugins/custom_backend_prefix_test.go
  • internal/standardplugins/custom_backends.go
  • internal/standardplugins/custom_compatible_build_test.go
  • internal/standardplugins/default_wire_model.go
  • internal/standardplugins/feature_merge_test.go
  • internal/standardplugins/feature_yaml.go
  • internal/standardplugins/feature_yaml_test.go
  • internal/standardplugins/features_install.go
  • internal/standardplugins/hosted_backend_build_test.go
  • internal/standardplugins/hosted_yaml_api_keys_test.go
  • internal/standardplugins/keys.go
  • internal/standardplugins/llamacpp_build_test.go
  • internal/standardplugins/lmstudio_build_test.go
  • internal/standardplugins/localstub_build_test.go
  • internal/standardplugins/modelinventory_yaml.go
  • internal/standardplugins/ollama_build_test.go
  • internal/standardplugins/opencode_backends_test.go
  • internal/standardplugins/registry_zero_test.go
  • internal/standardplugins/resolve_upstream_api_keys_test.go
  • internal/standardplugins/spec_bundle_standard_inventory_test.go
  • internal/standardplugins/standard_bundle_posture_test.go
  • internal/standardplugins/standard_bundle_test.go
  • internal/standardplugins/standard_table.go
  • internal/standardplugins/types.go
  • internal/standardplugins/vllm_build_test.go
  • internal/stdhttp/default_route_frontends_test.go
  • internal/stdhttp/mount_test.go
  • internal/stdhttp/route.go
  • internal/stdhttp/server_test.go
  • internal/stdhttp/standard_wiring_roundtrip_test.go
  • internal/testkit/conformance/harness.go
  • testdata/architecture/hexagonal_migration_baseline.json
💤 Files with no reviewable changes (3)
  • internal/pluginreg/featurebundle.go
  • internal/pluginreg/frontends_install.go
  • internal/pluginreg/keys.go
📜 Review details
⏰ Context from checks skipped due to timeout. (1)
  • GitHub Check: qa
🧰 Additional context used
📓 Path-based instructions (5)
**/*

📄 CodeRabbit inference engine (Custom checks)

Do not introduce hardcoded credentials, API keys, tokens, private keys, passwords, production secrets, or sensitive internal URLs.

Files:

  • docs/feature-bridge-retirement-checklist.md
  • internal/infra/runtimebundle/sqlite_closer_test.go
  • internal/plugins/frontends/anthropic/mount.go
  • internal/stdhttp/route.go
  • internal/standardplugins/backend_security_test.go
  • internal/standardplugins/backends_openaifamily_yaml.go
  • internal/infra/runtimebundle/routes_read.go
  • internal/plugins/frontends/gemini/mount.go
  • internal/infra/runtimebundle/build_executor.go
  • internal/standardplugins/backends_acp_cli.go
  • internal/core/runtime/executor_local_stub_integration_test.go
  • internal/standardplugins/backends_ollama.go
  • internal/standardplugins/backends_openrouter.go
  • internal/standardplugins/backend_prefix_inventory_test.go
  • internal/plugins/frontends/openairesponses/mount.go
  • internal/archtest/critical_files.go
  • internal/standardplugins/credentials.go
  • internal/standardplugins/backends_install.go
  • internal/standardplugins/modelinventory_yaml.go
  • internal/pluginreg/validate_test.go
  • internal/infra/runtimebundle/managed_postgres_runtime_integration_test.go
  • internal/standardplugins/backends_opencode.go
  • internal/pluginreg/custom_registry_hooks_test.go
  • internal/standardplugins/resolve_upstream_api_keys_test.go
  • internal/infra/runtimebundle/minimal_registry_test.go
  • internal/standardplugins/backends_bedrock.go
  • internal/standardplugins/lmstudio_build_test.go
  • internal/standardplugins/backends_acp_cli_test.go
  • internal/stdhttp/standard_wiring_roundtrip_test.go
  • internal/stdhttp/mount_test.go
  • internal/standardplugins/backends_openai.go
  • internal/infra/runtimebundle/modelregistry_build_test.go
  • internal/standardplugins/vllm_build_test.go
  • internal/standardplugins/backends_openaicodex_test.go
  • internal/core/runtime/executor_backend_credentials_test.go
  • internal/infra/runtimebundle/secure_session_build_test.go
  • internal/standardplugins/backends_openaifamily_yaml_test.go
  • internal/standardplugins/custom_backends.go
  • internal/standardplugins/types.go
  • internal/core/runtime/executor_characterization_phase4_test.go
  • internal/standardplugins/backends_misc.go
  • internal/standardplugins/hosted_backend_build_test.go
  • internal/standardplugins/ollama_build_test.go
  • internal/standardplugins/feature_yaml.go
  • internal/pluginreg/standardbundle/install.go
  • internal/infra/runtimebundle/auth_secret_leak_test.go
  • internal/standardplugins/spec_bundle_standard_inventory_test.go
  • internal/standardplugins/bedrock_acp_install_regression_test.go
  • internal/standardplugins/custom_backend_prefix_test.go
  • internal/standardplugins/backends_install_test.go
  • internal/standardplugins/default_wire_model.go
  • internal/standardplugins/opencode_backends_test.go
  • internal/standardplugins/standard_bundle_test.go
  • cmd/lipstd/hooks_compose_test.go
  • internal/infra/runtimebundle/modelcatalog_override_set_test.go
  • internal/infra/runtimebundle/routes_read_test.go
  • cmd/model-inventory-proof/main_test.go
  • internal/standardplugins/backends_openaicodex.go
  • internal/core/diag/inventory_test.go
  • internal/stdhttp/server_test.go
  • internal/standardplugins/backends_anthropic.go
  • internal/pluginreg/reg.go
  • internal/pluginreg/proof_reference_features_test.go
  • internal/infra/runtimebundle/build_test.go
  • internal/standardplugins/localstub_build_test.go
  • internal/plugins/frontends/openailegacy/mount.go
  • internal/standardplugins/llamacpp_build_test.go
  • internal/standardplugins/keys.go
  • internal/standardplugins/registry_zero_test.go
  • internal/standardplugins/custom_backend_env_keys_test.go
  • internal/standardplugins/backend_model_inventory_config_test.go
  • internal/standardplugins/hosted_yaml_api_keys_test.go
  • internal/stdhttp/default_route_frontends_test.go
  • internal/infra/runtimebundle/dual_backend_test.go
  • internal/standardplugins/build_backend_test.go
  • cmd/model-inventory-proof/main.go
  • internal/pluginreg/feature_merge_surface_test.go
  • internal/standardplugins/standard_table.go
  • internal/infra/runtimebundle/bootstrap_plan.go
  • internal/standardplugins/standard_bundle_posture_test.go
  • internal/infra/runtimebundle/build.go
  • internal/standardplugins/feature_merge_test.go
  • internal/infra/runtimebundle/build_modelcatalog_test.go
  • internal/standardplugins/feature_yaml_test.go
  • testdata/architecture/hexagonal_migration_baseline.json
  • internal/featurebundle/merge_surface.go
  • internal/infra/runtimebundle/auth_compose_test.go
  • internal/standardplugins/custom_compatible_build_test.go
  • internal/testkit/conformance/harness.go
  • internal/standardplugins/features_install.go
  • internal/infra/runtimebundle/managed_postgres_runtime_test.go
  • internal/standardplugins/backends_gemini.go
  • internal/infra/runtimebundle/opencode_zen_registry_live_test.go
  • internal/pluginreg/standardbundle/install_test.go
**/*.go

📄 CodeRabbit inference engine (Custom checks)

**/*.go: For server, CLI, worker, or network Go code, ensure context.Context is propagated correctly, cancellation is respected, and new goroutines cannot leak indefinitely.
Do not make accidental public API breaks in Go code: under pkg/** or anywhere exported Go identifiers are changed, warn if the PR changes exported types, function signatures, error behavior, JSON fields, CLI flags, config keys, or documented behavior without clearly explaining the compatibility impact.

Files:

  • internal/infra/runtimebundle/sqlite_closer_test.go
  • internal/plugins/frontends/anthropic/mount.go
  • internal/stdhttp/route.go
  • internal/standardplugins/backend_security_test.go
  • internal/standardplugins/backends_openaifamily_yaml.go
  • internal/infra/runtimebundle/routes_read.go
  • internal/plugins/frontends/gemini/mount.go
  • internal/infra/runtimebundle/build_executor.go
  • internal/standardplugins/backends_acp_cli.go
  • internal/core/runtime/executor_local_stub_integration_test.go
  • internal/standardplugins/backends_ollama.go
  • internal/standardplugins/backends_openrouter.go
  • internal/standardplugins/backend_prefix_inventory_test.go
  • internal/plugins/frontends/openairesponses/mount.go
  • internal/archtest/critical_files.go
  • internal/standardplugins/credentials.go
  • internal/standardplugins/backends_install.go
  • internal/standardplugins/modelinventory_yaml.go
  • internal/pluginreg/validate_test.go
  • internal/infra/runtimebundle/managed_postgres_runtime_integration_test.go
  • internal/standardplugins/backends_opencode.go
  • internal/pluginreg/custom_registry_hooks_test.go
  • internal/standardplugins/resolve_upstream_api_keys_test.go
  • internal/infra/runtimebundle/minimal_registry_test.go
  • internal/standardplugins/backends_bedrock.go
  • internal/standardplugins/lmstudio_build_test.go
  • internal/standardplugins/backends_acp_cli_test.go
  • internal/stdhttp/standard_wiring_roundtrip_test.go
  • internal/stdhttp/mount_test.go
  • internal/standardplugins/backends_openai.go
  • internal/infra/runtimebundle/modelregistry_build_test.go
  • internal/standardplugins/vllm_build_test.go
  • internal/standardplugins/backends_openaicodex_test.go
  • internal/core/runtime/executor_backend_credentials_test.go
  • internal/infra/runtimebundle/secure_session_build_test.go
  • internal/standardplugins/backends_openaifamily_yaml_test.go
  • internal/standardplugins/custom_backends.go
  • internal/standardplugins/types.go
  • internal/core/runtime/executor_characterization_phase4_test.go
  • internal/standardplugins/backends_misc.go
  • internal/standardplugins/hosted_backend_build_test.go
  • internal/standardplugins/ollama_build_test.go
  • internal/standardplugins/feature_yaml.go
  • internal/pluginreg/standardbundle/install.go
  • internal/infra/runtimebundle/auth_secret_leak_test.go
  • internal/standardplugins/spec_bundle_standard_inventory_test.go
  • internal/standardplugins/bedrock_acp_install_regression_test.go
  • internal/standardplugins/custom_backend_prefix_test.go
  • internal/standardplugins/backends_install_test.go
  • internal/standardplugins/default_wire_model.go
  • internal/standardplugins/opencode_backends_test.go
  • internal/standardplugins/standard_bundle_test.go
  • cmd/lipstd/hooks_compose_test.go
  • internal/infra/runtimebundle/modelcatalog_override_set_test.go
  • internal/infra/runtimebundle/routes_read_test.go
  • cmd/model-inventory-proof/main_test.go
  • internal/standardplugins/backends_openaicodex.go
  • internal/core/diag/inventory_test.go
  • internal/stdhttp/server_test.go
  • internal/standardplugins/backends_anthropic.go
  • internal/pluginreg/reg.go
  • internal/pluginreg/proof_reference_features_test.go
  • internal/infra/runtimebundle/build_test.go
  • internal/standardplugins/localstub_build_test.go
  • internal/plugins/frontends/openailegacy/mount.go
  • internal/standardplugins/llamacpp_build_test.go
  • internal/standardplugins/keys.go
  • internal/standardplugins/registry_zero_test.go
  • internal/standardplugins/custom_backend_env_keys_test.go
  • internal/standardplugins/backend_model_inventory_config_test.go
  • internal/standardplugins/hosted_yaml_api_keys_test.go
  • internal/stdhttp/default_route_frontends_test.go
  • internal/infra/runtimebundle/dual_backend_test.go
  • internal/standardplugins/build_backend_test.go
  • cmd/model-inventory-proof/main.go
  • internal/pluginreg/feature_merge_surface_test.go
  • internal/standardplugins/standard_table.go
  • internal/infra/runtimebundle/bootstrap_plan.go
  • internal/standardplugins/standard_bundle_posture_test.go
  • internal/infra/runtimebundle/build.go
  • internal/standardplugins/feature_merge_test.go
  • internal/infra/runtimebundle/build_modelcatalog_test.go
  • internal/standardplugins/feature_yaml_test.go
  • internal/featurebundle/merge_surface.go
  • internal/infra/runtimebundle/auth_compose_test.go
  • internal/standardplugins/custom_compatible_build_test.go
  • internal/testkit/conformance/harness.go
  • internal/standardplugins/features_install.go
  • internal/infra/runtimebundle/managed_postgres_runtime_test.go
  • internal/standardplugins/backends_gemini.go
  • internal/infra/runtimebundle/opencode_zen_registry_live_test.go
  • internal/pluginreg/standardbundle/install_test.go

⚙️ CodeRabbit configuration file

**/*.go: Review as production Go code. Prioritize correctness, race conditions, goroutine leaks, context cancellation, timeout handling, error wrapping, nil-pointer risks, resource cleanup, defer placement, API compatibility, interface design, dependency boundaries, and testability. Avoid generic style comments when gofmt/golangci-lint already covers the issue.

Files:

  • internal/infra/runtimebundle/sqlite_closer_test.go
  • internal/plugins/frontends/anthropic/mount.go
  • internal/stdhttp/route.go
  • internal/standardplugins/backend_security_test.go
  • internal/standardplugins/backends_openaifamily_yaml.go
  • internal/infra/runtimebundle/routes_read.go
  • internal/plugins/frontends/gemini/mount.go
  • internal/infra/runtimebundle/build_executor.go
  • internal/standardplugins/backends_acp_cli.go
  • internal/core/runtime/executor_local_stub_integration_test.go
  • internal/standardplugins/backends_ollama.go
  • internal/standardplugins/backends_openrouter.go
  • internal/standardplugins/backend_prefix_inventory_test.go
  • internal/plugins/frontends/openairesponses/mount.go
  • internal/archtest/critical_files.go
  • internal/standardplugins/credentials.go
  • internal/standardplugins/backends_install.go
  • internal/standardplugins/modelinventory_yaml.go
  • internal/pluginreg/validate_test.go
  • internal/infra/runtimebundle/managed_postgres_runtime_integration_test.go
  • internal/standardplugins/backends_opencode.go
  • internal/pluginreg/custom_registry_hooks_test.go
  • internal/standardplugins/resolve_upstream_api_keys_test.go
  • internal/infra/runtimebundle/minimal_registry_test.go
  • internal/standardplugins/backends_bedrock.go
  • internal/standardplugins/lmstudio_build_test.go
  • internal/standardplugins/backends_acp_cli_test.go
  • internal/stdhttp/standard_wiring_roundtrip_test.go
  • internal/stdhttp/mount_test.go
  • internal/standardplugins/backends_openai.go
  • internal/infra/runtimebundle/modelregistry_build_test.go
  • internal/standardplugins/vllm_build_test.go
  • internal/standardplugins/backends_openaicodex_test.go
  • internal/core/runtime/executor_backend_credentials_test.go
  • internal/infra/runtimebundle/secure_session_build_test.go
  • internal/standardplugins/backends_openaifamily_yaml_test.go
  • internal/standardplugins/custom_backends.go
  • internal/standardplugins/types.go
  • internal/core/runtime/executor_characterization_phase4_test.go
  • internal/standardplugins/backends_misc.go
  • internal/standardplugins/hosted_backend_build_test.go
  • internal/standardplugins/ollama_build_test.go
  • internal/standardplugins/feature_yaml.go
  • internal/pluginreg/standardbundle/install.go
  • internal/infra/runtimebundle/auth_secret_leak_test.go
  • internal/standardplugins/spec_bundle_standard_inventory_test.go
  • internal/standardplugins/bedrock_acp_install_regression_test.go
  • internal/standardplugins/custom_backend_prefix_test.go
  • internal/standardplugins/backends_install_test.go
  • internal/standardplugins/default_wire_model.go
  • internal/standardplugins/opencode_backends_test.go
  • internal/standardplugins/standard_bundle_test.go
  • cmd/lipstd/hooks_compose_test.go
  • internal/infra/runtimebundle/modelcatalog_override_set_test.go
  • internal/infra/runtimebundle/routes_read_test.go
  • cmd/model-inventory-proof/main_test.go
  • internal/standardplugins/backends_openaicodex.go
  • internal/core/diag/inventory_test.go
  • internal/stdhttp/server_test.go
  • internal/standardplugins/backends_anthropic.go
  • internal/pluginreg/reg.go
  • internal/pluginreg/proof_reference_features_test.go
  • internal/infra/runtimebundle/build_test.go
  • internal/standardplugins/localstub_build_test.go
  • internal/plugins/frontends/openailegacy/mount.go
  • internal/standardplugins/llamacpp_build_test.go
  • internal/standardplugins/keys.go
  • internal/standardplugins/registry_zero_test.go
  • internal/standardplugins/custom_backend_env_keys_test.go
  • internal/standardplugins/backend_model_inventory_config_test.go
  • internal/standardplugins/hosted_yaml_api_keys_test.go
  • internal/stdhttp/default_route_frontends_test.go
  • internal/infra/runtimebundle/dual_backend_test.go
  • internal/standardplugins/build_backend_test.go
  • cmd/model-inventory-proof/main.go
  • internal/pluginreg/feature_merge_surface_test.go
  • internal/standardplugins/standard_table.go
  • internal/infra/runtimebundle/bootstrap_plan.go
  • internal/standardplugins/standard_bundle_posture_test.go
  • internal/infra/runtimebundle/build.go
  • internal/standardplugins/feature_merge_test.go
  • internal/infra/runtimebundle/build_modelcatalog_test.go
  • internal/standardplugins/feature_yaml_test.go
  • internal/featurebundle/merge_surface.go
  • internal/infra/runtimebundle/auth_compose_test.go
  • internal/standardplugins/custom_compatible_build_test.go
  • internal/testkit/conformance/harness.go
  • internal/standardplugins/features_install.go
  • internal/infra/runtimebundle/managed_postgres_runtime_test.go
  • internal/standardplugins/backends_gemini.go
  • internal/infra/runtimebundle/opencode_zen_registry_live_test.go
  • internal/pluginreg/standardbundle/install_test.go
internal/**

⚙️ CodeRabbit configuration file

internal/**: Focus on package boundaries, hidden coupling, unexported API design, concurrency safety, deterministic behavior, and whether logic belongs in this internal package.

Files:

  • internal/infra/runtimebundle/sqlite_closer_test.go
  • internal/plugins/frontends/anthropic/mount.go
  • internal/stdhttp/route.go
  • internal/standardplugins/backend_security_test.go
  • internal/standardplugins/backends_openaifamily_yaml.go
  • internal/infra/runtimebundle/routes_read.go
  • internal/plugins/frontends/gemini/mount.go
  • internal/infra/runtimebundle/build_executor.go
  • internal/standardplugins/backends_acp_cli.go
  • internal/core/runtime/executor_local_stub_integration_test.go
  • internal/standardplugins/backends_ollama.go
  • internal/standardplugins/backends_openrouter.go
  • internal/standardplugins/backend_prefix_inventory_test.go
  • internal/plugins/frontends/openairesponses/mount.go
  • internal/archtest/critical_files.go
  • internal/standardplugins/credentials.go
  • internal/standardplugins/backends_install.go
  • internal/standardplugins/modelinventory_yaml.go
  • internal/pluginreg/validate_test.go
  • internal/infra/runtimebundle/managed_postgres_runtime_integration_test.go
  • internal/standardplugins/backends_opencode.go
  • internal/pluginreg/custom_registry_hooks_test.go
  • internal/standardplugins/resolve_upstream_api_keys_test.go
  • internal/infra/runtimebundle/minimal_registry_test.go
  • internal/standardplugins/backends_bedrock.go
  • internal/standardplugins/lmstudio_build_test.go
  • internal/standardplugins/backends_acp_cli_test.go
  • internal/stdhttp/standard_wiring_roundtrip_test.go
  • internal/stdhttp/mount_test.go
  • internal/standardplugins/backends_openai.go
  • internal/infra/runtimebundle/modelregistry_build_test.go
  • internal/standardplugins/vllm_build_test.go
  • internal/standardplugins/backends_openaicodex_test.go
  • internal/core/runtime/executor_backend_credentials_test.go
  • internal/infra/runtimebundle/secure_session_build_test.go
  • internal/standardplugins/backends_openaifamily_yaml_test.go
  • internal/standardplugins/custom_backends.go
  • internal/standardplugins/types.go
  • internal/core/runtime/executor_characterization_phase4_test.go
  • internal/standardplugins/backends_misc.go
  • internal/standardplugins/hosted_backend_build_test.go
  • internal/standardplugins/ollama_build_test.go
  • internal/standardplugins/feature_yaml.go
  • internal/pluginreg/standardbundle/install.go
  • internal/infra/runtimebundle/auth_secret_leak_test.go
  • internal/standardplugins/spec_bundle_standard_inventory_test.go
  • internal/standardplugins/bedrock_acp_install_regression_test.go
  • internal/standardplugins/custom_backend_prefix_test.go
  • internal/standardplugins/backends_install_test.go
  • internal/standardplugins/default_wire_model.go
  • internal/standardplugins/opencode_backends_test.go
  • internal/standardplugins/standard_bundle_test.go
  • internal/infra/runtimebundle/modelcatalog_override_set_test.go
  • internal/infra/runtimebundle/routes_read_test.go
  • internal/standardplugins/backends_openaicodex.go
  • internal/core/diag/inventory_test.go
  • internal/stdhttp/server_test.go
  • internal/standardplugins/backends_anthropic.go
  • internal/pluginreg/reg.go
  • internal/pluginreg/proof_reference_features_test.go
  • internal/infra/runtimebundle/build_test.go
  • internal/standardplugins/localstub_build_test.go
  • internal/plugins/frontends/openailegacy/mount.go
  • internal/standardplugins/llamacpp_build_test.go
  • internal/standardplugins/keys.go
  • internal/standardplugins/registry_zero_test.go
  • internal/standardplugins/custom_backend_env_keys_test.go
  • internal/standardplugins/backend_model_inventory_config_test.go
  • internal/standardplugins/hosted_yaml_api_keys_test.go
  • internal/stdhttp/default_route_frontends_test.go
  • internal/infra/runtimebundle/dual_backend_test.go
  • internal/standardplugins/build_backend_test.go
  • internal/pluginreg/feature_merge_surface_test.go
  • internal/standardplugins/standard_table.go
  • internal/infra/runtimebundle/bootstrap_plan.go
  • internal/standardplugins/standard_bundle_posture_test.go
  • internal/infra/runtimebundle/build.go
  • internal/standardplugins/feature_merge_test.go
  • internal/infra/runtimebundle/build_modelcatalog_test.go
  • internal/standardplugins/feature_yaml_test.go
  • internal/featurebundle/merge_surface.go
  • internal/infra/runtimebundle/auth_compose_test.go
  • internal/standardplugins/custom_compatible_build_test.go
  • internal/testkit/conformance/harness.go
  • internal/standardplugins/features_install.go
  • internal/infra/runtimebundle/managed_postgres_runtime_test.go
  • internal/standardplugins/backends_gemini.go
  • internal/infra/runtimebundle/opencode_zen_registry_live_test.go
  • internal/pluginreg/standardbundle/install_test.go
**/*_test.go

⚙️ CodeRabbit configuration file

**/*_test.go: Review tests for meaningful assertions, table-driven coverage, race-prone tests, t.Parallel misuse, nondeterminism, leaked goroutines, real network or filesystem dependencies, fragile sleeps, and missing edge cases. Prefer testing observable behavior over implementation details.

Files:

  • internal/infra/runtimebundle/sqlite_closer_test.go
  • internal/standardplugins/backend_security_test.go
  • internal/core/runtime/executor_local_stub_integration_test.go
  • internal/standardplugins/backend_prefix_inventory_test.go
  • internal/pluginreg/validate_test.go
  • internal/infra/runtimebundle/managed_postgres_runtime_integration_test.go
  • internal/pluginreg/custom_registry_hooks_test.go
  • internal/standardplugins/resolve_upstream_api_keys_test.go
  • internal/infra/runtimebundle/minimal_registry_test.go
  • internal/standardplugins/lmstudio_build_test.go
  • internal/standardplugins/backends_acp_cli_test.go
  • internal/stdhttp/standard_wiring_roundtrip_test.go
  • internal/stdhttp/mount_test.go
  • internal/infra/runtimebundle/modelregistry_build_test.go
  • internal/standardplugins/vllm_build_test.go
  • internal/standardplugins/backends_openaicodex_test.go
  • internal/core/runtime/executor_backend_credentials_test.go
  • internal/infra/runtimebundle/secure_session_build_test.go
  • internal/standardplugins/backends_openaifamily_yaml_test.go
  • internal/core/runtime/executor_characterization_phase4_test.go
  • internal/standardplugins/hosted_backend_build_test.go
  • internal/standardplugins/ollama_build_test.go
  • internal/infra/runtimebundle/auth_secret_leak_test.go
  • internal/standardplugins/spec_bundle_standard_inventory_test.go
  • internal/standardplugins/bedrock_acp_install_regression_test.go
  • internal/standardplugins/custom_backend_prefix_test.go
  • internal/standardplugins/backends_install_test.go
  • internal/standardplugins/opencode_backends_test.go
  • internal/standardplugins/standard_bundle_test.go
  • cmd/lipstd/hooks_compose_test.go
  • internal/infra/runtimebundle/modelcatalog_override_set_test.go
  • internal/infra/runtimebundle/routes_read_test.go
  • cmd/model-inventory-proof/main_test.go
  • internal/core/diag/inventory_test.go
  • internal/stdhttp/server_test.go
  • internal/pluginreg/proof_reference_features_test.go
  • internal/infra/runtimebundle/build_test.go
  • internal/standardplugins/localstub_build_test.go
  • internal/standardplugins/llamacpp_build_test.go
  • internal/standardplugins/registry_zero_test.go
  • internal/standardplugins/custom_backend_env_keys_test.go
  • internal/standardplugins/backend_model_inventory_config_test.go
  • internal/standardplugins/hosted_yaml_api_keys_test.go
  • internal/stdhttp/default_route_frontends_test.go
  • internal/infra/runtimebundle/dual_backend_test.go
  • internal/standardplugins/build_backend_test.go
  • internal/pluginreg/feature_merge_surface_test.go
  • internal/standardplugins/standard_bundle_posture_test.go
  • internal/standardplugins/feature_merge_test.go
  • internal/infra/runtimebundle/build_modelcatalog_test.go
  • internal/standardplugins/feature_yaml_test.go
  • internal/infra/runtimebundle/auth_compose_test.go
  • internal/standardplugins/custom_compatible_build_test.go
  • internal/infra/runtimebundle/managed_postgres_runtime_test.go
  • internal/infra/runtimebundle/opencode_zen_registry_live_test.go
  • internal/pluginreg/standardbundle/install_test.go
cmd/**

⚙️ CodeRabbit configuration file

cmd/**: Focus on CLI/service entrypoint behavior: signal handling, graceful shutdown, context propagation, configuration parsing, environment variables, logging setup, exit codes, and backwards compatibility of flags or command output.

Files:

  • cmd/lipstd/hooks_compose_test.go
  • cmd/model-inventory-proof/main_test.go
  • cmd/model-inventory-proof/main.go
🧠 Learnings (1)
📚 Learning: 2026-07-01T22:57:42.953Z
Learnt from: matdev83
Repo: matdev83/go-llm-interactive-proxy PR: 101
File: pkg/lipsdk/scope/context.go:0-0
Timestamp: 2026-07-01T22:57:42.953Z
Learning: In this repository, when defining unexported Go `context` key constants of type `ctxKey int` (e.g., `const ( kFoo ctxKey = iota + N )`), preserve the `iota + <offset>` pattern and keep the existing `<offset>` values rather than simplifying to plain `iota`. These per-package offsets are part of the repo-wide convention to avoid key collisions across packages, and each such constant set should include a short explanatory comment (for example: “offset avoids collision with other packages' context keys”).

Applied to files:

  • internal/infra/runtimebundle/sqlite_closer_test.go
  • internal/plugins/frontends/anthropic/mount.go
  • internal/stdhttp/route.go
  • internal/standardplugins/backend_security_test.go
  • internal/standardplugins/backends_openaifamily_yaml.go
  • internal/infra/runtimebundle/routes_read.go
  • internal/plugins/frontends/gemini/mount.go
  • internal/infra/runtimebundle/build_executor.go
  • internal/standardplugins/backends_acp_cli.go
  • internal/core/runtime/executor_local_stub_integration_test.go
  • internal/standardplugins/backends_ollama.go
  • internal/standardplugins/backends_openrouter.go
  • internal/standardplugins/backend_prefix_inventory_test.go
  • internal/plugins/frontends/openairesponses/mount.go
  • internal/archtest/critical_files.go
  • internal/standardplugins/credentials.go
  • internal/standardplugins/backends_install.go
  • internal/standardplugins/modelinventory_yaml.go
  • internal/pluginreg/validate_test.go
  • internal/infra/runtimebundle/managed_postgres_runtime_integration_test.go
  • internal/standardplugins/backends_opencode.go
  • internal/pluginreg/custom_registry_hooks_test.go
  • internal/standardplugins/resolve_upstream_api_keys_test.go
  • internal/infra/runtimebundle/minimal_registry_test.go
  • internal/standardplugins/backends_bedrock.go
  • internal/standardplugins/lmstudio_build_test.go
  • internal/standardplugins/backends_acp_cli_test.go
  • internal/stdhttp/standard_wiring_roundtrip_test.go
  • internal/stdhttp/mount_test.go
  • internal/standardplugins/backends_openai.go
  • internal/infra/runtimebundle/modelregistry_build_test.go
  • internal/standardplugins/vllm_build_test.go
  • internal/standardplugins/backends_openaicodex_test.go
  • internal/core/runtime/executor_backend_credentials_test.go
  • internal/infra/runtimebundle/secure_session_build_test.go
  • internal/standardplugins/backends_openaifamily_yaml_test.go
  • internal/standardplugins/custom_backends.go
  • internal/standardplugins/types.go
  • internal/core/runtime/executor_characterization_phase4_test.go
  • internal/standardplugins/backends_misc.go
  • internal/standardplugins/hosted_backend_build_test.go
  • internal/standardplugins/ollama_build_test.go
  • internal/standardplugins/feature_yaml.go
  • internal/pluginreg/standardbundle/install.go
  • internal/infra/runtimebundle/auth_secret_leak_test.go
  • internal/standardplugins/spec_bundle_standard_inventory_test.go
  • internal/standardplugins/bedrock_acp_install_regression_test.go
  • internal/standardplugins/custom_backend_prefix_test.go
  • internal/standardplugins/backends_install_test.go
  • internal/standardplugins/default_wire_model.go
  • internal/standardplugins/opencode_backends_test.go
  • internal/standardplugins/standard_bundle_test.go
  • cmd/lipstd/hooks_compose_test.go
  • internal/infra/runtimebundle/modelcatalog_override_set_test.go
  • internal/infra/runtimebundle/routes_read_test.go
  • cmd/model-inventory-proof/main_test.go
  • internal/standardplugins/backends_openaicodex.go
  • internal/core/diag/inventory_test.go
  • internal/stdhttp/server_test.go
  • internal/standardplugins/backends_anthropic.go
  • internal/pluginreg/reg.go
  • internal/pluginreg/proof_reference_features_test.go
  • internal/infra/runtimebundle/build_test.go
  • internal/standardplugins/localstub_build_test.go
  • internal/plugins/frontends/openailegacy/mount.go
  • internal/standardplugins/llamacpp_build_test.go
  • internal/standardplugins/keys.go
  • internal/standardplugins/registry_zero_test.go
  • internal/standardplugins/custom_backend_env_keys_test.go
  • internal/standardplugins/backend_model_inventory_config_test.go
  • internal/standardplugins/hosted_yaml_api_keys_test.go
  • internal/stdhttp/default_route_frontends_test.go
  • internal/infra/runtimebundle/dual_backend_test.go
  • internal/standardplugins/build_backend_test.go
  • cmd/model-inventory-proof/main.go
  • internal/pluginreg/feature_merge_surface_test.go
  • internal/standardplugins/standard_table.go
  • internal/infra/runtimebundle/bootstrap_plan.go
  • internal/standardplugins/standard_bundle_posture_test.go
  • internal/infra/runtimebundle/build.go
  • internal/standardplugins/feature_merge_test.go
  • internal/infra/runtimebundle/build_modelcatalog_test.go
  • internal/standardplugins/feature_yaml_test.go
  • internal/featurebundle/merge_surface.go
  • internal/infra/runtimebundle/auth_compose_test.go
  • internal/standardplugins/custom_compatible_build_test.go
  • internal/testkit/conformance/harness.go
  • internal/standardplugins/features_install.go
  • internal/infra/runtimebundle/managed_postgres_runtime_test.go
  • internal/standardplugins/backends_gemini.go
  • internal/infra/runtimebundle/opencode_zen_registry_live_test.go
  • internal/pluginreg/standardbundle/install_test.go
🔇 Additional comments (87)
internal/core/runtime/executor_characterization_phase4_test.go (1)

1-54: LGTM!

internal/standardplugins/keys.go (1)

1-110: LGTM!

internal/standardplugins/backends_openaicodex_test.go (1)

1-1: LGTM!

internal/standardplugins/bedrock_acp_install_regression_test.go (1)

1-1: LGTM!

internal/standardplugins/llamacpp_build_test.go (1)

1-1: LGTM!

internal/standardplugins/localstub_build_test.go (1)

1-1: LGTM!

Also applies to: 11-39

internal/standardplugins/resolve_upstream_api_keys_test.go (1)

1-1: LGTM!

internal/standardplugins/standard_bundle_posture_test.go (1)

1-1: LGTM!

Also applies to: 14-61

internal/standardplugins/vllm_build_test.go (1)

1-1: LGTM!

internal/standardplugins/types.go (1)

1-39: LGTM!

internal/standardplugins/credentials.go (1)

1-1: LGTM!

internal/standardplugins/custom_backend_env_keys_test.go (1)

1-1: LGTM!

internal/standardplugins/custom_backend_prefix_test.go (1)

1-1: LGTM!

internal/standardplugins/ollama_build_test.go (1)

1-1: LGTM!

internal/standardplugins/opencode_backends_test.go (1)

1-1: LGTM!

internal/pluginreg/validate_test.go (1)

9-9: LGTM!

Also applies to: 18-18, 29-29

internal/standardplugins/features_install.go (1)

30-97: LGTM!

Also applies to: 179-187

internal/standardplugins/backend_security_test.go (1)

1-1: LGTM!

internal/standardplugins/backends_acp_cli.go (1)

1-1: LGTM!

internal/standardplugins/backends_acp_cli_test.go (1)

1-1: LGTM!

internal/standardplugins/build_backend_test.go (1)

1-1: LGTM!

internal/standardplugins/default_wire_model.go (1)

1-31: LGTM!

internal/pluginreg/standardbundle/install.go (1)

8-29: LGTM!

internal/pluginreg/standardbundle/install_test.go (1)

8-46: LGTM!

internal/standardplugins/backends_bedrock.go (1)

1-1: LGTM!

internal/standardplugins/backends_install.go (1)

1-1: LGTM!

internal/standardplugins/backends_install_test.go (1)

1-1: LGTM!

internal/standardplugins/feature_yaml.go (1)

1-1: LGTM!

internal/featurebundle/merge_surface.go (1)

1-7: LGTM!

Also applies to: 43-57, 140-142

internal/pluginreg/custom_registry_hooks_test.go (1)

7-10: LGTM!

Also applies to: 21-24, 41-45

internal/pluginreg/feature_merge_surface_test.go (1)

8-8: LGTM!

Also applies to: 114-114, 142-142, 171-171, 200-200, 228-228, 290-290

internal/standardplugins/feature_yaml_test.go (1)

1-1: LGTM!

Also applies to: 10-10, 85-85, 100-100, 115-115, 153-153

internal/standardplugins/backends_misc.go (1)

1-1: LGTM!

internal/standardplugins/backends_ollama.go (1)

1-1: LGTM!

internal/standardplugins/backends_openai.go (1)

1-1: LGTM!

internal/standardplugins/backends_openaicodex.go (1)

1-1: LGTM!

internal/standardplugins/custom_backends.go (1)

1-1: LGTM!

internal/standardplugins/custom_compatible_build_test.go (1)

1-1: LGTM!

internal/standardplugins/hosted_backend_build_test.go (1)

1-1: LGTM!

internal/standardplugins/backends_openaifamily_yaml.go (1)

1-1: LGTM!

internal/standardplugins/backends_openaifamily_yaml_test.go (1)

1-1: LGTM!

internal/standardplugins/hosted_yaml_api_keys_test.go (1)

1-1: LGTM!

internal/standardplugins/modelinventory_yaml.go (1)

1-1: LGTM!

internal/pluginreg/reg.go (1)

245-248: LGTM!

internal/pluginreg/proof_reference_features_test.go (1)

6-13: LGTM!

Also applies to: 30-30, 51-51, 65-65

internal/standardplugins/feature_merge_test.go (1)

1-12: LGTM!

Also applies to: 22-42

internal/standardplugins/registry_zero_test.go (1)

1-1: LGTM!

Also applies to: 10-11, 46-48

internal/standardplugins/standard_table.go (1)

141-159: LGTM!

internal/plugins/frontends/anthropic/mount.go (1)

1-26: LGTM!

internal/plugins/frontends/gemini/mount.go (1)

1-29: LGTM!

internal/plugins/frontends/openailegacy/mount.go (1)

1-26: LGTM!

internal/plugins/frontends/openairesponses/mount.go (1)

1-26: LGTM!

cmd/lipstd/hooks_compose_test.go (1)

11-14: LGTM!

Also applies to: 24-24, 44-44, 86-86, 107-107

cmd/model-inventory-proof/main.go (1)

23-23: LGTM!

Also applies to: 76-80, 101-101

internal/core/diag/inventory_test.go (1)

18-18: LGTM!

Also applies to: 73-80, 133-140, 215-220, 283-288

internal/infra/runtimebundle/managed_postgres_runtime_test.go (1)

15-22: LGTM!

Also applies to: 55-55, 85-85, 119-119

internal/infra/runtimebundle/minimal_registry_test.go (1)

10-10: LGTM!

Also applies to: 21-21

internal/infra/runtimebundle/modelcatalog_override_set_test.go (1)

16-16: LGTM!

Also applies to: 70-70

cmd/model-inventory-proof/main_test.go (1)

7-15: LGTM!

Also applies to: 49-49

internal/core/runtime/executor_backend_credentials_test.go (1)

28-28: LGTM!

Also applies to: 60-60, 142-142, 218-218

internal/core/runtime/executor_local_stub_integration_test.go (1)

16-16: LGTM!

Also applies to: 25-25

internal/infra/runtimebundle/build_executor.go (1)

25-25: LGTM!

Also applies to: 181-184

internal/infra/runtimebundle/managed_postgres_runtime_integration_test.go (1)

12-12: LGTM!

Also applies to: 26-26

internal/infra/runtimebundle/bootstrap_plan.go (1)

13-18: 🗄️ Data Integrity & Integration

No change needed here. standardbundle.InstallOn already accepts standardplugins.UpstreamAPIKeys and forwards to standardplugins.InstallStandardBundleOn.

			> Likely an incorrect or invalid review comment.
internal/infra/runtimebundle/auth_compose_test.go (1)

16-16: LGTM!

Also applies to: 38-38, 80-80, 132-132, 177-177, 222-222, 265-265, 298-298, 353-353, 410-410, 455-455, 510-510, 559-559, 603-603

internal/infra/runtimebundle/auth_secret_leak_test.go (1)

15-15: LGTM!

Also applies to: 37-37

internal/infra/runtimebundle/build.go (1)

16-16: LGTM!

Also applies to: 40-40

internal/infra/runtimebundle/build_modelcatalog_test.go (1)

17-20: LGTM!

Also applies to: 22-25, 72-72, 126-126, 196-196

internal/infra/runtimebundle/build_test.go (1)

16-16: LGTM!

Also applies to: 170-170, 185-185

internal/infra/runtimebundle/dual_backend_test.go (1)

11-19: LGTM!

Also applies to: 59-60, 69-70, 89-90, 99-100

internal/stdhttp/server_test.go (1)

22-22: LGTM!

Also applies to: 245-245, 280-280

internal/infra/runtimebundle/modelregistry_build_test.go (1)

24-24: LGTM!

Also applies to: 99-99

internal/infra/runtimebundle/opencode_zen_registry_live_test.go (1)

13-27: LGTM!

internal/infra/runtimebundle/routes_read.go (1)

10-10: LGTM!

Also applies to: 46-46

internal/infra/runtimebundle/routes_read_test.go (1)

12-12: LGTM!

Also applies to: 26-29

internal/infra/runtimebundle/secure_session_build_test.go (1)

13-13: LGTM!

Also applies to: 104-104

testdata/architecture/hexagonal_migration_baseline.json (3)

55-70: LGTM!


4-10: LGTM!


39-54: 🗄️ Data Integrity & Integration

Keep the narrowed import lists as-is. ./internal/pluginreg imports only execbackend and modelcatalog, and ./internal/standardplugins imports only config and execbackend; modelcatalog does not belong in the latter list.

			> Likely an incorrect or invalid review comment.
docs/feature-bridge-retirement-checklist.md (1)

1-33: LGTM!

internal/infra/runtimebundle/sqlite_closer_test.go (1)

11-18: LGTM!

internal/stdhttp/default_route_frontends_test.go (1)

13-13: LGTM!

Also applies to: 25-27, 40-46, 114-118, 150-154

internal/stdhttp/mount_test.go (1)

18-18: LGTM!

Also applies to: 32-32, 188-188

internal/stdhttp/route.go (1)

5-5: LGTM!

Also applies to: 15-15

internal/stdhttp/standard_wiring_roundtrip_test.go (1)

14-15: LGTM!

Also applies to: 77-77

internal/testkit/conformance/harness.go (1)

10-23: LGTM!

Also applies to: 25-28

internal/archtest/critical_files.go (1)

39-46: LGTM!

Comment thread internal/standardplugins/keys.go
Mateusz and others added 2 commits July 7, 2026 22:18
Reconcile PR #114 with PR #111's pluginreg -> standardplugins/featurebundle
refactor (now on main) plus PR #112's docs/archtest and the executor
characterization tests. PR #114's native FeatureBundle + per-frontend mounts
supersede main's moved featurebundle.go and frontends_install.go.

Conflict resolutions:
- internal/standardplugins/types.go (add/add): take main's gofumpt-fixed
  type-alias group.
- internal/featurebundle/featurebundle.go and internal/standardplugins/
  frontends_install.go (rename/delete + modify/delete): deleted, honoring
  PR #114's native FeatureBundle and per-frontend mount.go design which
  replaces them.
- internal/standardplugins/standard_table.go and three test files
  (custom_registry_hooks_test.go, feature_merge_test.go,
  registry_zero_test.go): take PR #114's direct FeatureFactory registration
  (factories return lipfeature.FeatureBundle directly; no
  featurebundle.FeatureFactoryFromHooks wrapping).
- testdata/architecture/hexagonal_migration_baseline.json: take PR #114's
  evolved classifications (pluginreg and standardplugins reclassified to
  aligned; featurebundle holds the MergedFeatureSurface merge surface;
  FeatureFactoryFromHooks bridge retired).

Verified locally: go build ./... OK; golangci-lint v2.11.4 run -> 0 issues;
full go test -tags=precommit,integration ./... passes (includes the
hexagonal baseline archtest and root hygiene checks).

Co-authored-by: Cursor <cursoragent@cursor.com>
…review)

The doc comment claimed numbered suffixes "_1, _2, _3, ..." for all listed
providers, but collectNumberedEnvKeys (OpenAI/Anthropic/Gemini/OpenCode*)
reads the bare var as the first slot and then starts at _2, so an explicit
"_1" is never read for those providers. collect1IndexedEnvKeys (OpenRouter/
NVIDIA/Hugging Face) does read an explicit _1. Clarify the comment to match
the implementation: bare var fills the first slot; OpenAI/Anthropic/Gemini
suffixes start at _2; OpenRouter/NVIDIA/Hugging Face use _1-indexed numbering.
Behavior unchanged; doc-only fix.

Co-authored-by: Cursor <cursoragent@cursor.com>
@matdev83 matdev83 merged commit 58595e6 into main Jul 7, 2026
2 checks passed
@matdev83 matdev83 deleted the arch-review-remaining-tasks branch July 7, 2026 20:34
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