Repository navigation
perf: generate only used Azure models - #646
Merged
Merged
Conversation
|
Member
Author
|
@greptileai Please re-review this PR. The only prior finding was explicitly withdrawn after confirming that |
alongubkin
added a commit
that referenced
this pull request
Sep 18, 2026
## Summary - make the deterministic reachable Azure model set the ordinary build - keep the complete generated catalog available through explicit `full-models` - prevent default-feature unification from silently erasing the model-pruning win ## Measured impact A controlled cold four-job Platform manager check, which exercises Alien cloud clients and controllers: - `full-models` default: Cargo elapsed **10m27s** - reachable-model default: Cargo elapsed **3m55s** - reduction: **6m32s / 62.5%** Both runs used fresh isolated targets. OS wall time was distorted by machine suspension, so the reported comparison uses Cargo elapsed time. The underlying generated Azure model input remains **147,886 lines**, down from **196,983 lines** before PR #646. This PR makes that smaller graph automatic rather than opt-in. ## Validation - ordinary Alien CLI and Platform manager feature graphs do not activate `full-models` - 57/57 offline `alien-azure-clients` tests pass in the new default mode - `cargo check -p alien-azure-clients --features full-models --locked` passes - `cargo package -p alien-azure-clients --list --allow-dirty` passes - Platform `alien-managerx` production check passes and all 132 manager tests pass against the reachable-model graph - credential-gated Azure integration tests compile; local execution stops at the existing missing `.env.test` precondition Linear: ALIEN-894
alongubkin
added a commit
that referenced
this pull request
Sep 18, 2026
## Summary - split the 147,886-line generated Azure model unit into five line-balanced crates that rustc can compile in parallel - preserve `alien_azure_clients::models::<service>` paths through re-exports and forward filtered/full model modes - centralize shard ownership in one manifest used by build scripts, tests, and OpenAPI regeneration - publish the generator and model shards before `alien-azure-clients` in the explicit release order This PR is intentionally stacked on #646, which supplies reachable-model filtering. ## Measurements Controlled empty-target `cargo check -p alien-azure-clients --no-default-features --timings`: - before: 41.72s; monolithic Azure unit 26.5s - after: 22.75s; five parallel model units 4.0-4.7s, parent 6.5s - improvement: 45.5% A real retained OpenAPI schema edit rebuilt one shard plus the parent in 2.65s. A local-only empty-target branch containing every proven compile-time PR completed `cargo check -p alien-cli --timings` in 1m38s / 99.00s real, down from the original 7m13s baseline (77.1%, 4.37x faster). The five Azure shards ran concurrently in 6.4-7.5s. ## Validation - shard manifest uniquely and exactly covers all 25 checked-in Azure specifications - `cargo test -p alien-azure-clients --no-default-features --test schema_filter` (3 passed) - `cargo test -p alien-azure-clients --no-default-features --lib` (57 passed) - `cargo test -p alien-azure-clients --lib` (57 passed) - `cargo check -p alien-infra --features all-platforms,test-utils` - package file lists generated for the generator, five model crates, and parent client - `git diff --check` All isolated targets were deleted after evidence capture; the largest reached 13GB. Linear: ALIEN-868
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
full-modelsfeatureImpact
The filtered timing run reused dependency artifacts from the baseline target, so source-size changes are the controlled evidence and timings are directional.
Validation
cargo test -p alien-azure-clients --test schema_filter --no-default-featurescargo test -p alien-azure-clients --lib --no-default-features(57 passed)cargo test -p alien-azure-clients --no-default-features --no-runcargo check -p alien-infra --features all-platforms,test-utilscargo check -p alien-azure-clients(default complete-model compatibility mode)git diff --checkLinear: ALIEN-862