Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -270,6 +270,7 @@ fail-closed and only pauses when the agent actually proposed a reviewed output.
│ ├── executor-e2e/ # Stage 3 safe-output E2E test harness (not a bundle; runs deterministic scenarios against a real ADO project and files a GitHub issue on failure)
│ ├── prepare-pr-base/ # create-pull-request preparer (bundled to prepare-pr-base.js): Agent mode uses ADO diff metadata + bounded dual-ref fallback to make the merge-base reachable; SafeOutputs mode fetches only the target worktree tip
│ ├── trigger-e2e/ # Test-only gate-spec / trigger-evaluation harness (not a bundle): mirrors Rust `Fact::ALL` in `gate-spec.ts`; `fact-catalog.gen.json` is generated by `export-fact-catalog` and drift-guarded by CI
│ ├── compiler-smoke-e2e/ # Test-only compiler-candidate smoke E2E orchestrator (not a bundle): stages the compiler under test as a `supply-chain.pipeline-artifact` source, pushes to a mirror branch, queues the registered candidate-lane pipelines, and asserts they all go green; built to `test-bin/` by `build:compiler-smoke-e2e`
│ └── shared/ # Shared modules across bundles (auth, ado-client, env-facts, types.gen.ts)
├── tests/ # Integration tests and fixtures
├── docs/ # Per-concept reference documentation (see index below)
Expand Down
13 changes: 13 additions & 0 deletions docs/ado-script.md
Original file line number Diff line number Diff line change
Expand Up @@ -112,6 +112,18 @@ pipeline** as runtime helpers. Today it produces thirteen bundles:
> so the `gate-spec.test.ts` test can deep-compare `FACT_META` against the
> Rust-side `Fact::ALL` registry, catching drift at CI time.

> **Test-only, not shipped: `compiler-smoke-e2e`.** The workspace also contains a
> `src/compiler-smoke-e2e/` harness that drives the deterministic compiler-candidate
> smoke E2E suite. It stages the compiler binary produced by the current build (PR or
> nightly `main`) as a pinned `supply-chain.pipeline-artifact` source across the five
> real fixtures (canary, azure-cli, noop-target, janitor, smoke-failure-reporter),
> pushes to a short-lived branch on the mirror repo, queues the registered
> "candidate lane" pipeline definitions, and asserts they all go green. It is **not**
> a runtime bundle: `npm run build:compiler-smoke-e2e` emits to the non-root
> `test-bin/` directory so it is never packaged in the `ado-script/*.js` release glob.
> It is listed in `NON_BUNDLE_DIRS` in `src/__tests__/bundle-coverage.test.ts` and the
> compiler itself never references it.

## What `gate.js` does

`gate.js` is a single-shot Node program that runs as a step in the
Expand Down Expand Up @@ -564,6 +576,7 @@ scripts/ado-script/
│ │ ├── gate-spec.ts # FACT_META mirror of Rust Fact::ALL; drift-guarded by export-fact-catalog + fact-catalog.gen.json
│ │ ├── fact-catalog.gen.json # generated by `cargo run -- export-fact-catalog`; deep-compared by gate-spec.test.ts
│ │ └── __tests__/ # gate-spec drift tests and trigger-evaluation scenario tests
│ ├── compiler-smoke-e2e/ # test-only: compiler-candidate smoke E2E orchestrator (not a bundle; built to test-bin/compiler-smoke-e2e.js)
│ └── executor-e2e/ # test-only: Stage 3 safe-output E2E harness (not a bundle; built to test-bin/executor-e2e.js)
├── test/ # End-to-end smoke tests (gate, import, exec-context-pr)
├── gate.js # ncc bundle output (gitignored)
Expand Down