Skip to content
Merged
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,089 changes: 1 addition & 1,088 deletions .github/workflows/pr.yml

Large diffs are not rendered by default.

101 changes: 69 additions & 32 deletions config/fork-ownership.json
Original file line number Diff line number Diff line change
Expand Up @@ -854,16 +854,6 @@
" ...forkGuardNeeds(),"
]
},
{
"path": "config/scripts/pr-ready-check-reuse.test.mjs",
"feature": "fork-ownership-guard",
"kind": "import-swap",
"lines": [
"} from './fork-ownership-guard/pr-workflow-contract.mjs'",
"const workflow = workflowWithoutForkGuard(parse(readFileSync('.github/workflows/pr.yml', 'utf8')))",
" for (const name of ['test_files', 'native_ime_source_changed']) {"
]
},
{
"path": "src/main/ipc/native-chat-subscribe-lifecycle.test.ts",
"feature": "native-chat-relay",
Expand Down Expand Up @@ -5117,14 +5107,6 @@
" if (isTerminalUserInputFromKeyboard(session.pane.terminal)) {"
]
},
{
"path": "config/scripts/localization-extraction-change-scope.test.mjs",
"feature": "fork-infra",
"kind": "passthrough",
"lines": [
" /else\\s+bun config\\/scripts\\/fork-localization-catalog-check\\.mjs --verify-extraction\\s+fi/"
]
},
{
"path": "config/scripts/benchmark-ci-preflight-critical-path.mjs",
"feature": "fork-benchmark-baseline",
Expand Down Expand Up @@ -5922,13 +5904,15 @@
},
{
"path": "config/scripts/pr-code-change-scope.test.mjs",
"reason": "Retains upstream classifier behavior while dropping source-pinning assertions for the Windows PR job absent from the fork-owned workflow, and asserts the draft guard on code_paths (the tag's version asserts none and fails against the tag's own pr.yml).",
"status": "permanent"
"reason": "Asserts PR jobs and preflight steps the fork's trimmed pr.yml no longer runs; the fork keeps only lint, typecheck, unit tests, cross-version wire and the ownership guard.",
"status": "permanent",
"deleted": true
},
{
"path": "config/scripts/pr-workflow-parallelism.test.mjs",
"reason": "Contracts for the fork-owned PR job graph, which omits Windows packaging and must not restore upstream's exact aggregate dependency list.",
"status": "permanent"
"reason": "Asserts PR jobs and preflight steps the fork's trimmed pr.yml no longer runs; the fork keeps only lint, typecheck, unit tests, cross-version wire and the ownership guard.",
"status": "permanent",
"deleted": true
},
{
"path": "config/scripts/skills-cli-package-workflow.test.mjs",
Expand Down Expand Up @@ -6317,10 +6301,71 @@
"reason": "Contracts for the fork-owned PR job graph: this fork removed the Windows PR packaging lane, so the case asserts its removal instead of the lane's Node-ABI save ordering.",
"status": "permanent"
},
{
"path": "config/scripts/check-node-runtime-pin.test.mjs",
"reason": "Asserts PR jobs and preflight steps the fork's trimmed pr.yml no longer runs; the fork keeps only lint, typecheck, unit tests, cross-version wire and the ownership guard.",
"status": "permanent",
"deleted": true
},
{
"path": "config/scripts/ci-e2e-job-selection.test.mjs",
"reason": "Asserts PR jobs and preflight steps the fork's trimmed pr.yml no longer runs; the fork keeps only lint, typecheck, unit tests, cross-version wire and the ownership guard.",
"status": "permanent",
"deleted": true
},
{
"path": "config/scripts/ci-unit-exclusion-coverage.test.mjs",
"reason": "Asserts PR jobs and preflight steps the fork's trimmed pr.yml no longer runs; the fork keeps only lint, typecheck, unit tests, cross-version wire and the ownership guard.",
"status": "permanent",
"deleted": true
},
{
"path": "config/scripts/localization-extraction-change-scope.test.mjs",
"reason": "Asserts PR jobs and preflight steps the fork's trimmed pr.yml no longer runs; the fork keeps only lint, typecheck, unit tests, cross-version wire and the ownership guard.",
"status": "permanent",
"deleted": true
},
{
"path": "config/scripts/orcad-terminal-smoke-change-scope.test.mjs",
"reason": "Asserts PR jobs and preflight steps the fork's trimmed pr.yml no longer runs; the fork keeps only lint, typecheck, unit tests, cross-version wire and the ownership guard.",
"status": "permanent",
"deleted": true
},
{
"path": "config/scripts/pr-auxiliary-preflight-admission.test.mjs",
"reason": "Asserts PR jobs and preflight steps the fork's trimmed pr.yml no longer runs; the fork keeps only lint, typecheck, unit tests, cross-version wire and the ownership guard.",
"status": "permanent",
"deleted": true
},
{
"path": "config/scripts/pr-e2e-gate-contract.test.mjs",
"reason": "Asserts PR jobs and preflight steps the fork's trimmed pr.yml no longer runs; the fork keeps only lint, typecheck, unit tests, cross-version wire and the ownership guard.",
"status": "permanent",
"deleted": true
},
{
"path": "config/scripts/pr-e2e-route-contracts.test.mjs",
"reason": "Asserts PR jobs and preflight steps the fork's trimmed pr.yml no longer runs; the fork keeps only lint, typecheck, unit tests, cross-version wire and the ownership guard.",
"status": "permanent",
"deleted": true
},
{
"path": "config/scripts/pr-ready-check-reuse.test.mjs",
"reason": "Asserts PR jobs and preflight steps the fork's trimmed pr.yml no longer runs; the fork keeps only lint, typecheck, unit tests, cross-version wire and the ownership guard.",
"status": "permanent",
"deleted": true
},
{
"path": "config/scripts/linux-package-fixture-cache.test.mjs",
"reason": "Asserts PR jobs and preflight steps the fork's trimmed pr.yml no longer runs; the fork keeps only lint, typecheck, unit tests, cross-version wire and the ownership guard.",
"status": "permanent",
"deleted": true
},
{
"path": "config/scripts/pr-preflight-gates.test.mjs",
"reason": "Contracts for the fork-owned PR job graph: this fork removed the Windows PR packaging lane, so its preflight gating is asserted absent.",
"status": "permanent"
"reason": "Asserts PR jobs and preflight steps the fork's trimmed pr.yml no longer runs; the fork keeps only lint, typecheck, unit tests, cross-version wire and the ownership guard.",
"status": "permanent",
"deleted": true
},
{
"path": "src/shared/rpc-contract/rpc-params-catalog.generated.ts",
Expand Down Expand Up @@ -8497,10 +8542,6 @@
"added": 12,
"removed": 2
},
"config/scripts/pr-ready-check-reuse.test.mjs": {
"added": 6,
"removed": 3
},
"config/scripts/check-path-literal-ratchet.mjs": {
"added": 5,
"removed": 1
Expand All @@ -8509,10 +8550,6 @@
"added": 2,
"removed": 1
},
"config/scripts/localization-extraction-change-scope.test.mjs": {
"added": 3,
"removed": 1
},
"config/scripts/benchmark-ci-preflight-critical-path.mjs": {
"added": 27,
"removed": 3
Expand Down
196 changes: 0 additions & 196 deletions config/scripts/check-node-runtime-pin.test.mjs

This file was deleted.

29 changes: 0 additions & 29 deletions config/scripts/ci-dependency-download-cache.test.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -423,35 +423,6 @@ describe('CI dependency download caches', () => {
})
}
})

it('seeds the existing Linux PR tool cache from successful main x64 release builds', () => {
const packaging = workflow('pr').jobs.package
const consumer = packaging.steps.find(
(step) => step.name === 'Cache electron-builder downloads'
)
const release = workflow('release-cut').jobs.build
const combined = release.steps.find((step) => step.name === 'Cache electron-builder downloads')
const writer = release.steps.find(
(step) => step.name === 'Seed shared Linux packaging downloads'
)
const linux = release.strategy.matrix.include.find((entry) => entry.platform === 'linux-x64')

expect(packaging['runs-on']).toBe(linux.os)
expect(writer.if).toBe("matrix.platform == 'linux-x64' && github.ref == 'refs/heads/main'")
expect(writer.uses).toBe('actions/cache@v5')
expect(writer.with.path).toBe(consumer.with.path)
expect(writer.with.key).toBe(consumer.with.key)
expect(writer.with['restore-keys']).toBeUndefined()
expect(writer.with['lookup-only']).toBe(true)
expect(release.steps.indexOf(writer)).toBeGreaterThan(release.steps.indexOf(combined))
expect(consumer.uses).toBe('actions/cache/restore@v5')
expect(consumer.with['restore-keys'].trim()).toBe('electron-builder-linux-')
expect(combined.uses).toBe('actions/cache@v5')
expect(linux.eb_cache_path.trim().split('\n')).toEqual([
'~/.cache/electron',
'~/.cache/electron-builder'
])
})
})

it('shares Electron archives with PRs without uploading PR-local copies', () => {
Expand Down
Loading
Loading