Repository navigation
feat(server): compose proxy applications from typed configuration - #2467
Conversation
bbc2247 to
9668baa
Compare
Codecov Report❌ Patch coverage is
📢 Thoughts on this report? Let us know! |
9668baa to
70b7a83
Compare
70b7a83 to
2e85af3
Compare
2e85af3 to
fccc743
Compare
fccc743 to
bf49ad9
Compare
d370ff5 to
53a49fa
Compare
3273d3a to
bf9dc0a
Compare
[Medium impact] The PR appears safe to merge; no actionable issues were found. SummaryAdds typed Python configuration for composing proxy applications from reviewed provider bindings and a shared Rails catalogue.
No actionable issues were found. Tests were inspected, not run. The previous-review comparison failed the ancestry/base guards, so this review covered the full PR diff. No previous review threads were supplied.
|
bf9dc0a to
729d8c4
Compare
729d8c4 to
40e9b87
Compare
40e9b87 to
47c93ca
Compare
tanushriya910
left a comment
There was a problem hiding this comment.
changes look good to me, one non blocking question: the docs are clear that operations isn't a route allowlist, but once this is driven from YAML a reader may only see the config. wondering if an option to reject unguarded routes per instance is worth a follow-up, or we want to maintain the current behavior as part of the full passthrough design?
47c93ca to
e9db0a1
Compare
e9db0a1 to
172926d
Compare
agreeing with @tanushriya910, no reason not to LGTM |
|
Thanks @tanushriya910 and @m-misiura 🚀 I agree, an explicit per-instance option to reject unguarded routes should be a separate follow-up. this PR preserves the existing passthrough behavior (which I don't like it) |
Ack, seperate follow-up sounds good. LGTM |
172926d to
dddc6b8
Compare
Resolve explicit provider, operation, and dialect selections into existing endpoint bindings and reuse the application assembly. Keep native dialect selection provider-relative and preserve direct Python integrations without adding another factory selection API. Use one shared Rails catalogue with fixed IDs per provider or an application-level dynamic resolver. Fixed providers bypass the callback; missing dynamic callbacks and unknown references fail closed. Preserve existing direct-call selection semantics and runtime ownership. Validate nested ConfigEntry data without introducing a second entry type. Add configuration/schema, real-Rails buffered and streaming, passthrough, isolation, and direct-API regressions plus Python examples. Validation: 169 focused tests and pre-commit passed. The complete experimental-server suite passed 1753 tests with one independently reproduced pre-existing core queue-cleanup failure; lifecycle fixes remain separate prerequisites. Signed-off-by: Pouyanpi <13303554+Pouyanpi@users.noreply.github.com>
Signed-off-by: Pouyanpi <13303554+Pouyanpi@users.noreply.github.com>
dddc6b8 to
3d4cdd9
Compare
Description
Select provider instances, operations, dialects and Rails configs through typed Python configuration, reusing the existing application assembly. No runtime policy generation.
Stack: #2466 → #2467 → #2468. Package separation follows separately; API-docs prototype excluded.
Summary by CodeRabbit
New Features
Documentation
Bug Fixes