Skip to content

ci: build the package gateway in the unified CLI graph - #666

Merged
alongubkin merged 2 commits into
mainfrom
alon/alien-899-eliminate-duplicate-ai-gateway-compilation-from-alien
Sep 18, 2026
Merged

alongubkin merged 2 commits into
mainfrom
alon/alien-899-eliminate-duplicate-ai-gateway-compilation-from-alien

Conversation

@alongubkin

@alongubkin alongubkin commented Sep 18, 2026 •

Copy link
Copy Markdown
Member

Summary

  • build alien-ai-gateway in the same development-profile Cargo invocation as all required CLIs
  • move that unified build before package-layout validation so the executable consumer test reuses the gateway artifact
  • retain the isolated release-profile fallback for local/package-only paths where the unified CLI build is intentionally skipped

Why

The required TypeScript/packages job previously built the gateway alone in release during package-layout validation, then compiled all CLIs in development. Actions run 34903156597 spent 4m33s in the isolated gateway release build.

The first candidate changed the fallback itself to development mode. CI correctly rejected that design: the narrower standalone gateway command populated a development-profile alien-platform-api, and the later broader CLI command lacked get_command generated types. This revision resolves the union once by compiling the gateway and CLIs in a single Cargo invocation.

Validation

  • the original cold development gateway build compiled successfully and the executable reported its expected usage
  • the failed first CI run provided a real regression test for cross-command feature reuse
  • the revised workflow passes actionlint
  • TypeScript formatting and git diff --check pass
  • the 6.0 GiB local validation target was deleted immediately
  • fresh complete TypeScript/packages CI is the authoritative correctness and timing test

Linear: ALIEN-899

@greptile-apps

greptile-apps Bot commented Sep 18, 2026

Copy link
Copy Markdown

RetriggerConfidence Score: 5/5

The PR appears safe to merge because the development binary remains directly exercised by the intended behavior check, while release artifact qualification remains separate.

Summary

This PR reuses Cargo’s development build graph during package-layout validation instead of performing a separate release-profile gateway build.

  • Prefers an existing development gateway artifact before a release artifact.
  • Builds the gateway with Cargo’s default development profile when no artifact exists.
  • Continues staging and executing the selected gateway in the compiled-package consumer check.

Reviews (1) · Last reviewed commit: "ci: reuse the development graph for pack..."

@alongubkin alongubkin changed the title ci: reuse the development graph for package validation ci: build the package gateway in the unified CLI graph Sep 18, 2026
@alongubkin
alongubkin force-pushed the alon/alien-899-eliminate-duplicate-ai-gateway-compilation-from-alien branch from da6e064 to 7272166 Compare September 18, 2026 02:54
@alongubkin

Copy link
Copy Markdown
Member Author

The current CI failure is caused by the merged filtered Platform client regression now fixed in #667, not by this experiment: main omits getCommand from the operation allowlist, so the ordinary CLI graph lacks get_command, CommandResultAvailability, and CommandState. I reproduced the same failure with a plain fresh cargo check -p alien-cli on #652. I’ll rebase this PR after #667 merges and use that clean run for the timing decision.

@alongubkin
alongubkin force-pushed the alon/alien-899-eliminate-duplicate-ai-gateway-compilation-from-alien branch from 7272166 to 2d1a3a3 Compare September 18, 2026 03:11
@alongubkin
alongubkin force-pushed the alon/alien-899-eliminate-duplicate-ai-gateway-compilation-from-alien branch from 2d1a3a3 to bbda814 Compare September 18, 2026 03:50
@alongubkin
alongubkin merged commit e5da9b4 into main Sep 18, 2026
21 checks passed
@alongubkin
alongubkin deleted the alon/alien-899-eliminate-duplicate-ai-gateway-compilation-from-alien branch September 18, 2026 04:14
alongubkin added a commit that referenced this pull request Sep 18, 2026
Fixes ALIEN-902.

Alien’s required Rust lane is now the critical path. The latest green
#666 run took 23m17s total, including 21m12s in the workspace nextest
step. The job uses a 16-core runner but caps Cargo at eight jobs.

This experiment raises only compiler concurrency to 12 while leaving
nextest runtime concurrency at eight. It preserves 25% headroom and
avoids changing database/server test pressure at the same time.
Full-width 16 remains intentionally rejected because it previously
starved the runner.

The premise has changed since the eight-job cap was established: the
Platform client is filtered and deduplicated, reachable Azure models are
the default, and Azure generation now compiles in five shards.

Acceptance bar:
- every existing Rust test passes;
- no runner loss or memory instability;
- meaningful complete-job improvement against 23m17s.

Validation: `git diff --check` passes. No local Cargo target was
created.
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