Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
2208 commits
Select commit Hold shift + click to select a range
6653a06
test: reproduce complete packed-move private-frame gaps
cpunion Oct 9, 2026
4f8cd6b
fix: prove complete packed moves in private AMD64 frames
cpunion Oct 9, 2026
56b9975
docs: checkpoint native family gates and remaining conversion audits
cpunion Oct 9, 2026
43c2ddb
test: expose NEON conversion exception and standard-FPSCR gaps
cpunion Oct 9, 2026
1b09e34
fix: preserve native NEON conversion status across D and Q formats
cpunion Oct 9, 2026
206217a
docs: record complete ARM NEON conversion status gate
cpunion Oct 9, 2026
c0fc9e1
Bind ordinary dependency embeds to complete source owners
cpunion Oct 9, 2026
083e346
test: reproduce scalar float integer status and 386 WIG gaps
cpunion Oct 9, 2026
afab61c
fix: preserve complete scalar float integer native semantics
cpunion Oct 9, 2026
9bc5571
test: require the numerical frame reentry callback to execute
cpunion Oct 9, 2026
814e46d
test: follow numerical owner reentry through role-specific helpers
cpunion Oct 9, 2026
17a9642
docs: record native conversion and default-environment verification g…
cpunion Oct 9, 2026
9585305
fix: bind planning metadata to exact package tag selection
cpunion Oct 9, 2026
7068ba4
test: reproduce composite private-frame transport gap
cpunion Oct 9, 2026
432540d
feat: prove opaque and boolean private-frame transport
cpunion Oct 9, 2026
f304480
fix: bind ordinary dependency root aliases to live origins
cpunion Oct 9, 2026
0ec435b
fix: retain planning-only ordinary dependency source guards
cpunion Oct 9, 2026
aa23a36
fix: retain actual root aliases in ordinary source guards
cpunion Oct 9, 2026
8e5e5d7
test: expose delayed evidence after slow discovery candidates
cpunion Oct 9, 2026
8481dae
fix: checkpoint completed slow discovery candidates promptly
cpunion Oct 9, 2026
fccd591
test: expose ARM64 scalar conversion native state loss
cpunion Oct 9, 2026
d5c262f
fix: retain native ARM64 scalar conversion status and merged lanes
cpunion Oct 9, 2026
3784309
test: audit scalar conversion source roles and exceptional state
cpunion Oct 9, 2026
9ade117
fix: keep ARM64 scalar decoder names private to raw instructions
cpunion Oct 9, 2026
46dc0f2
test: close scalar half conversion and FZ16 oracle matrix
cpunion Oct 9, 2026
66cc1c0
fix: close ARM64 scalar SIMD integer conversion family
cpunion Oct 9, 2026
35a325d
test: expect native ARM64 scalar conversion effects
cpunion Oct 9, 2026
df5b476
test: execute ARM64 scalar native merge control independently
cpunion Oct 9, 2026
19fc919
test: bound ARM64 bank oracle memory with exact partitions
cpunion Oct 9, 2026
b024aec
docs: refresh systematic-family and frozen verification checkpoint
cpunion Oct 9, 2026
f17c70b
test: expose packed conversion live and dead native status losses
cpunion Oct 9, 2026
bf43dc5
fix: preserve native status for complete packed numeric conversions
cpunion Oct 9, 2026
ea5c759
test: expose scalar COMI exception and dead-status loss
cpunion Oct 9, 2026
d734fc5
fix: preserve native scalar comparison status and exact typed effects
cpunion Oct 9, 2026
732f86a
test: expose ARM64 quiet and signaling compare state loss
cpunion Oct 9, 2026
4d04aae
fix: preserve ARM64 scalar compare signaling and floating state
cpunion Oct 9, 2026
a547e87
test: reject scalar ARM64 compare without native target
cpunion Oct 9, 2026
2ddd94d
fix(arm64): require native target for complete scalar compare family
cpunion Oct 9, 2026
14ef649
test(wasm): reproduce complete float comparison and minmax gaps
cpunion Oct 9, 2026
3e752f6
fix(wasm): implement typed float comparisons and quiet minmax results
cpunion Oct 9, 2026
96a8258
test: expose COMI context ordering and raw length assumptions
cpunion Oct 9, 2026
7b41b19
fix: close COMI physical context boundaries and compile native oracles
cpunion Oct 9, 2026
044bb66
docs: replace verification checkpoint with terminal family evidence
cpunion Oct 9, 2026
47db8b1
test: assert native ARM64 compare in the full FP helper gate
cpunion Oct 9, 2026
e726a25
test: expose ARM scalar compare native status loss
cpunion Oct 9, 2026
4c09a3e
test: expose ARM scalar compare native-state and target gaps
cpunion Oct 9, 2026
eda5e6d
fix: retain native FPSCR effects for the complete ARM scalar compare …
cpunion Oct 9, 2026
aa2c280
test: add complete ARM scalar compare state and bank matrix
cpunion Oct 9, 2026
d656711
test: expose raw ARM comparison predicate CFG bypass
cpunion Oct 9, 2026
9f2ec2c
fix: include raw VFP predicates in all-path ARM flag proof
cpunion Oct 9, 2026
cd703c0
test: bind packed conversion address coverage to native roles
cpunion Oct 9, 2026
b745f9a
test: verify CLI discovers all Wasm float binary forms
cpunion Oct 9, 2026
c71a73f
test: expose target-scoped Go rejection aborting header planning
cpunion Oct 9, 2026
6bcac32
test: retain Go-only tag scopes through final corpus validation
cpunion Oct 9, 2026
4f01cf1
fix: preserve source-rejected header planning tag scopes
cpunion Oct 9, 2026
e53e280
test: retain tag scopes introduced by malformed Go partners
cpunion Oct 9, 2026
b48cab9
fix: preserve malformed Go partner tag scope obligations
cpunion Oct 9, 2026
dd55f82
docs: record reviewed classification and ARM comparison checkpoints
cpunion Oct 9, 2026
e262afc
test: close ARM compare typed Go and required runtime consumers
cpunion Oct 9, 2026
cebe1d4
docs: record closed ARM compare and merged header verification
cpunion Oct 9, 2026
45e9944
test: reproduce ARM64 conditional compare exception mismatch
cpunion Oct 9, 2026
4dfc252
fix: preserve ARM64 conditional float comparison machine state
cpunion Oct 9, 2026
5782a12
test: expose SDK dependency macros rejecting ordinary frame observation
cpunion Oct 9, 2026
9bc034f
fix: retain SDK dependency macro sources without ordinary CPP authority
cpunion Oct 9, 2026
8d74d58
test: expose unguarded SDK sibling include source
cpunion Oct 9, 2026
6b44860
fix: guard bounded SDK dependency include source closures
cpunion Oct 9, 2026
02c9ebb
docs: checkpoint closed conditional compares and SDK source roles
cpunion Oct 10, 2026
69f5a94
test: distinguish actual unproved asmdecl result failures
cpunion Oct 10, 2026
723148d
fix: explain unproved asmdecl result initialization failures
cpunion Oct 10, 2026
97eed21
test: reproduce FPCR and FPSR losing source flag definitions
cpunion Oct 10, 2026
6230aa0
refactor: share ARM64 raw syntax validation before target checks
cpunion Oct 10, 2026
9afa3dd
fix: model precise native FPCR and FPSR transfer effects
cpunion Oct 10, 2026
5ef80d7
test: expose ARM64 NZCV reads observing compiler physical flags
cpunion Oct 10, 2026
18abecc
fix: model ARM64 NZCV transfers through typed source flags
cpunion Oct 10, 2026
d1deafa
test: execute ARM64 NZCV transport through all four consumers
cpunion Oct 10, 2026
9fa17a4
test: expose cross-family native target errors masking invalid source
cpunion Oct 10, 2026
83a755d
fix(arm64): validate all native family syntax before target context
cpunion Oct 10, 2026
a2a521d
test: reproduce ARM64 scalar binary dead FPSR loss
cpunion Oct 10, 2026
dd6a8ec
fix: preserve native ARM64 scalar binary floating state
cpunion Oct 10, 2026
cfd0d07
test: keep invalid ARM64 binary WORDs ahead of target context
cpunion Oct 10, 2026
70ed85e
fix: retain invalid raw syntax before scalar binary target checks
cpunion Oct 10, 2026
1509f75
test: align ARM64 binary fixtures with native targets and Go 1.20
cpunion Oct 10, 2026
2be4203
test(arm64): expose native binary cross-family preflight masking
cpunion Oct 10, 2026
7eab52a
fix(arm64): compose scalar binary validation across all consumers
cpunion Oct 10, 2026
7484e4f
test: reproduce original SDK graph source-tool budget collision
cpunion Oct 10, 2026
d6c8467
test: isolate unselected SDK subtree inventory amplification
cpunion Oct 10, 2026
e176241
fix: retain actual SDK package inputs without unrelated subtrees
cpunion Oct 10, 2026
2c111f3
test: reproduce ARM64 scalar minmax lost dead exceptions
cpunion Oct 10, 2026
6d71f80
fix: preserve ARM64 scalar minmax native FP state
cpunion Oct 10, 2026
3a809fb
test: record bounded runtime compiler stage durations
cpunion Oct 10, 2026
1d3bad3
fix(arm64): integrate minmax into shared native syntax preflight
cpunion Oct 10, 2026
3970ff4
docs: refresh systematic coverage and frozen validation handoff
cpunion Oct 10, 2026
47c766e
test: budget complete instrumentation CPU queries explicitly
cpunion Oct 10, 2026
5a725e9
test: retain full original tag and embed fixture within measured budget
cpunion Oct 10, 2026
11d2fa0
test(arm64): expose named RNG and raw NZCV divergence
cpunion Oct 10, 2026
62338e2
fix(arm64): unify RNG named aliases and raw state effects
cpunion Oct 10, 2026
5767e83
test: close merged RNG and scalar native syntax interactions
cpunion Oct 10, 2026
b1639d5
test: expose masked original driver retention failures
cpunion Oct 10, 2026
82fb400
fix: preserve original source retention failure diagnostics
cpunion Oct 10, 2026
b3779fe
test: require independently scheduled complete minmax runtime families
cpunion Oct 10, 2026
e693532
test: split complete minmax runtime into bounded family roots
cpunion Oct 10, 2026
e0040fe
test: reproduce measured current SDK graph and driver budget refusal
cpunion Oct 10, 2026
40c97da
fix: bound complete current SDK source and driver graphs at 128 MiB
cpunion Oct 10, 2026
7b22269
docs: freeze CI repair scope and explicit closure gates
cpunion Oct 10, 2026
a95b5eb
test(ci): align policy fixtures with refillable shard ownership
cpunion Oct 10, 2026
5a8273e
test: expose minmax partition witness ownership regression
cpunion Oct 10, 2026
cb8b2ad
test: scope minmax AFP witnesses to their complete runtime families
cpunion Oct 10, 2026
7186191
test: reproduce downloaded subpackage frame handoff rejection
cpunion Oct 10, 2026
22403ac
fix: bind downloaded frame subpackages to their original module roots
cpunion Oct 10, 2026
d977491
test: expose ARM64 WORD constant truncation across translation APIs
cpunion Oct 10, 2026
322c6bd
fix: validate ARM64 WORD source classes before raw decoding
cpunion Oct 10, 2026
7fb7438
test: verify WORD classes with both actual Go SDKs and LLVM objects
cpunion Oct 10, 2026
9553954
test: reproduce imported downloaded frame source rejection
cpunion Oct 10, 2026
fd57caf
fix: independently bind downloaded frame dependency origins and exports
cpunion Oct 10, 2026
2bbd6dc
test: reproduce fixed-local frame rejection of actual Go CPU profiles
cpunion Oct 10, 2026
ae827c6
fix: observe all actual Go AMD64 profiles without widening frame auth…
cpunion Oct 10, 2026
12b100a
test: expose transport checks applied to unrelated ordinary Go types
cpunion Oct 10, 2026
814de5c
fix: scope native transport grammar to actual assembly signatures
cpunion Oct 10, 2026
68ae285
test: reproduce complete CMP and TEST FP observer omissions
cpunion Oct 10, 2026
71831b8
fix: reuse complete CMP and TEST grammar for FP byte observations
cpunion Oct 10, 2026
415e986
test: reproduce Go-accepted module archive and payload size rejection
cpunion Oct 10, 2026
191f2ca
fix: stream exact module artifacts under Go ZIP size bounds
cpunion Oct 10, 2026
cdafc43
test: reproduce whole broadcast family FP observer omissions
cpunion Oct 10, 2026
18a5160
fix: reuse complete broadcast grammar for FP byte observations
cpunion Oct 10, 2026
113db33
test(corpus): reproduce bound CPP constant result alias rejection
cpunion Oct 10, 2026
2ec32e6
fix(corpus): consume bound integer CPP constants in result alias proofs
cpunion Oct 10, 2026
d1de140
test(corpus): reproduce implicit Go module language rejection
cpunion Oct 10, 2026
3145792
fix(corpus): preserve implicit Go module language by source role
cpunion Oct 10, 2026
6f4d487
test(x86): reproduce inert raw NOP memory handoff rejection
cpunion Oct 10, 2026
4c90703
fix(x86): keep inert raw NOP fields out of memory handoff
cpunion Oct 10, 2026
ebc6b05
test(x86): reproduce missing scalar bit-count result effects
cpunion Oct 10, 2026
74e0407
fix(x86): share scalar bit-count grammar and byte effects
cpunion Oct 10, 2026
bc4a6cc
fix(arm64): retain WORD diagnostics and RNG test contracts
cpunion Oct 10, 2026
0fbf6f7
test(arm64): reproduce native preflight decoding proven data pools
cpunion Oct 10, 2026
9e9ad94
fix(arm64): keep proven raw pool data out of native preflight
cpunion Oct 10, 2026
8bd5442
test(x86): reproduce missing move-mask result effects
cpunion Oct 10, 2026
38295cd
fix(x86): share move-mask grammar with result and feature consumers
cpunion Oct 10, 2026
897c3bc
test(corpus): reproduce repeated condition-free CPP lexing
cpunion Oct 10, 2026
9f9c122
perf(corpus): reuse bounded pure CPP lexical queries
cpunion Oct 10, 2026
f9a40e0
test(ci): require observable strict aggregate phases
cpunion Oct 10, 2026
cf3c42c
ci: expose aggregate verification phases without changing strict exits
cpunion Oct 10, 2026
aedfac9
docs: hand off guarded fork publication after the active CI run
cpunion Oct 10, 2026
7579e5d
test: avoid LLVM binary startup races in deadline fixture
cpunion Oct 10, 2026
af41e78
fix: share packed low multiply grammar and complete byte effects
cpunion Oct 10, 2026
b5af3a1
perf: reuse bounded CPP parses when auditing portable reports
cpunion Oct 10, 2026
605a23a
fix(x86): consume complete broadcast memory result effects
cpunion Oct 10, 2026
a873e24
fix(x86): preserve native extension reads and result effects
cpunion Oct 10, 2026
0c61d46
docs: record terminal CI and full local verification before batch pub…
cpunion Oct 10, 2026
2dcf647
fix(x86): consume native scalar insertion result effects
cpunion Oct 11, 2026
dc3e53d
fix(x86): consume native GP and SIMD transfer results
cpunion Oct 11, 2026
6430b7f
fix(x86): unify byte shuffle grammar and observable effects
cpunion Oct 11, 2026
675d159
fix(amd64): bind original readonly data to fixed local frames
cpunion Oct 11, 2026
7d4603f
fix(x86): reject bare symbols in scalar extension grammar
cpunion Oct 11, 2026
b8b4009
docs: require worktree reuse and safe retirement
cpunion Oct 11, 2026
2fbf001
fix(x86): preserve scalar native MOV reads and result effects
cpunion Oct 11, 2026
38cbbae
test: partition Darwin minmax runtime by complete family
cpunion Oct 11, 2026
052cb5b
source: bind legacy proxy metadata to exact original archives
cpunion Oct 11, 2026
a4e427a
test: spread native minmax families across actual root shards
cpunion Oct 11, 2026
4b739b5
source: observe legacy primaries through isolated exact dependency qu…
cpunion Oct 11, 2026
4856910
docs: checkpoint integrated CI repairs and terminal component gates
cpunion Oct 11, 2026
acc3807
fix(x86): share complete packed arithmetic forms and result effects
cpunion Oct 11, 2026
33cfbd7
test(x86): keep compare and move native read contracts independent
cpunion Oct 11, 2026
897bebe
fix(x86): complete packed zero-extension result and native read effects
cpunion Oct 11, 2026
dbd20ff
fix(corpus): preserve SDK patch in frozen header query modules
cpunion Oct 11, 2026
c47fc19
fix(amd64): bind frame CPP to actual Go macro registration
cpunion Oct 11, 2026
52c577a
fix(x86): retain typed byte-shuffle legacy dispatch and segment read …
cpunion Oct 11, 2026
3fc5299
test(x86): bind shuffle feature inference to complete operands
cpunion Oct 11, 2026
46fa4bc
docs: record terminal fork CI and integrated repair evidence
cpunion Oct 11, 2026
6f4f262
fix(x86): compose sealed raw NOP padding with named native read effects
cpunion Oct 11, 2026
cd59c78
ci: split discovery work without dropping priority candidates
cpunion Oct 11, 2026
fe553bf
fix: bind packed conversion family to proved private frames
cpunion Oct 11, 2026
413e270
fix: preserve scalar arithmetic native read effects
cpunion Oct 11, 2026
c8724ad
fix: prove every scalar ABI0 result field in tuple aliases
cpunion Oct 11, 2026
77a70d8
refactor: expose Go toolchain observations for standalone compatibili…
cpunion Oct 11, 2026
3dc36d7
refactor: move external discovery and corpus verification to llgo-compat
cpunion Oct 11, 2026
00ab0b4
docs: record consolidated PR40 repair checkpoint
cpunion Oct 11, 2026
3e48411
test: validate cross-runtime fixtures and provision IA32 tools
cpunion Oct 11, 2026
1384c2c
fix: audit Go 1.27.2 source and object observations
cpunion Oct 11, 2026
def6e64
fix: bind CLI source checks to the actual load environment
cpunion Oct 11, 2026
41d50b0
fix: preserve Go load selection and repair portable corpus regressions
cpunion Oct 11, 2026
3d4b9d6
fix: reject unresolved x86 symbol displacements before lowering
cpunion Oct 11, 2026
719263e
test: link runtime oracles as PIC and disable Linux core collectors
cpunion Oct 11, 2026
c97aa46
fix: preserve AES alignment and complete logical FP vector reads
cpunion Oct 11, 2026
b7d23d4
fix: bound vector-zero tail stores to their actual alignment
cpunion Oct 11, 2026
986351d
test: check conversion side effects per function independently of stores
cpunion Oct 11, 2026
56ddd58
docs: record verified CI repair batches and remaining native gates
cpunion Oct 11, 2026
91200ba
fix: preserve every packed FP result field and native move alignment
cpunion Oct 11, 2026
b593e42
test: fix authenticated fixture paths after profile package migration
cpunion Oct 11, 2026
fa9cbfe
docs: retain full-suite timeout and native diagnostic evidence
cpunion Oct 11, 2026
9171d09
test: bound logical oracle batches and reject wrapped failure exits
cpunion Oct 11, 2026
e311a50
test: preserve insert/extract oracle failures past case 255
cpunion Oct 11, 2026
db371c8
fix: preserve TLS source roles across scalar arithmetic families
cpunion Oct 11, 2026
575c596
docs: record complete local repair evidence and remaining ABI gates
cpunion Oct 11, 2026
0a02a91
fix: check scalar AMD64 register results in their own ABI domain
cpunion Oct 11, 2026
4d3ae1b
test: resolve LLVM 22 consistently in isolated module fixtures
cpunion Oct 11, 2026
34cfe20
test: avoid POSIX read collision in packed shift oracle
cpunion Oct 11, 2026
73bf2e9
fix: observe unconditional wasm features starting with Go 1.26
cpunion Oct 11, 2026
8bf91d7
test: isolate runtime process setup from oracle C headers
cpunion Oct 11, 2026
b6d8319
ci: install pinned QEMU for complete Linux runtime suites
cpunion Oct 11, 2026
798efd9
test: preserve portable file proxy identities in source fixtures
cpunion Oct 11, 2026
adb5886
ci: preserve shell script bytes on Windows checkouts
cpunion Oct 11, 2026
29a4eb5
fix: bind Go tool paths using the host executable suffix
cpunion Oct 11, 2026
d6048eb
test: keep shared fixed-local helpers available on Windows
cpunion Oct 11, 2026
9c1d864
docs: record verified CI repairs and remaining cross-version gates
cpunion Oct 11, 2026
f587ed3
test: declare ARM64 bytealg private register transports explicitly
cpunion Oct 12, 2026
d3994be
fix: validate ARM64 alignment directives in closed tail continuations
cpunion Oct 12, 2026
f652ee6
test: canonicalize the original observation driver before capture
cpunion Oct 12, 2026
346cec2
fix: connect immediate shuffle grammar to x86 result analysis
cpunion Oct 12, 2026
9ac3013
test: escape numerical source file proxies without fallback
cpunion Oct 12, 2026
1821714
test: separate composed source proof lifetime from command stages
cpunion Oct 12, 2026
9b60d37
test: retain historical SDK embed directive selection
cpunion Oct 12, 2026
3fad6ec
test: separate stock Go machine output from download diagnostics
cpunion Oct 12, 2026
fa5d2a0
fix: admit complete 386 scalar absolute relocation rows
cpunion Oct 12, 2026
ffc6770
docs: condense the current CI repair handoff
cpunion Oct 12, 2026
11f4c97
fix: bind historical Windows SEH objects to their actual SDK schema
cpunion Oct 12, 2026
c368202
fix: prepare ordinary CLI cache and temporary directories before capture
cpunion Oct 12, 2026
7d60eb5
test: bind SDK-table rejection output to coverage roles
cpunion Oct 12, 2026
bbf1821
test: isolate original frame fixtures from harness build tags
cpunion Oct 12, 2026
432796c
test: preserve exact C oracle output bytes on Windows
cpunion Oct 12, 2026
6c8e021
fix: join Windows source PC origins through bound host paths
cpunion Oct 12, 2026
6468924
test: retain composed lifetimes across source proof factories
cpunion Oct 12, 2026
b479219
fix: bind cache-copy command display to the actual Go producer
cpunion Oct 12, 2026
cba32ec
test: retain Windows host paths in floating-point oracles
cpunion Oct 12, 2026
799ee6e
test: isolate SDK reentry checks with owned bounded children
cpunion Oct 12, 2026
92549fd
test: preserve Windows process and physical path identities
cpunion Oct 12, 2026
9c5fd27
docs: record published CI and remaining platform repairs
cpunion Oct 12, 2026
527ec68
test: inspect IA32 ELF artifacts with host-appropriate permissions
cpunion Oct 12, 2026
f7df74f
test: verify Windows stream rename protection and later replacement
cpunion Oct 12, 2026
74c0cfb
test: clarify the original IA32 file identity observation
cpunion Oct 12, 2026
584532a
fix: register the unchanged Go 1.26.9 Windows unwind producer
cpunion Oct 12, 2026
77464bf
ci: provision pinned QEMU for every Go root test lane
cpunion Oct 12, 2026
2098406
test: model transitional ARM64 diagnostic schemas independently
cpunion Oct 12, 2026
3faaf6c
fix: select DATA listing grammar from the actual Go producer
cpunion Oct 12, 2026
d075cfc
docs: retain exact verification scopes for the next CI batch
cpunion Oct 12, 2026
509c594
test: retain SysV ABI through original byte-oracle calls on Windows
cpunion Oct 12, 2026
21ea5e3
test: expose exact original SSE state failures and check MinGW ABI tr…
cpunion Oct 12, 2026
b4800f6
test: exercise heap sampling in the original SSE state oracle
cpunion Oct 12, 2026
c3dd8e4
test: bind CPP include observations to the canonical command directory
cpunion Oct 12, 2026
c5614ac
test: isolate SSE oracle MXCSR setup from Go heap sampling
cpunion Oct 12, 2026
c48ba5f
docs: record verified CI repairs and retain unresolved runtime evidence
cpunion Oct 12, 2026
b92a6ce
test: observe CMPXCHG native faults in bounded cross-platform child p…
cpunion Oct 12, 2026
6630330
ci: isolate complete Windows CLI suites from root timeouts
cpunion Oct 12, 2026
0527ded
test: observe direct CMPXCHG child core limits before native faults
cpunion Oct 12, 2026
2a04a4b
ci: require uncached Windows execution and record verified repair scopes
cpunion Oct 12, 2026
43d64b2
ci: align module owner environments and repair portable fixture gates
cpunion Oct 12, 2026
2efcb98
test: reuse verified SDK bindings and name Windows oracle executables
cpunion Oct 12, 2026
177d651
ci: fit race root partitions into a single bounded worker wave
cpunion Oct 12, 2026
ebfc63a
gotoolprofile: preserve failing tool directory roles in diagnostics
cpunion Oct 12, 2026
75db11d
test: avoid duplicate live SDK verification in mutation cases
cpunion Oct 12, 2026
24851df
docs: record completed CI failures and verified repair scopes
cpunion Oct 12, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
2 changes: 2 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# Shell scripts are executed and inspected verbatim on every CI host.
*.sh text eol=lf
45 changes: 45 additions & 0 deletions .github/scripts/priority-completion.test.cjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
const assert = require('node:assert/strict');
const fs = require('node:fs');
const path = require('node:path');
const { test } = require('node:test');

const workflow = fs.readFileSync(path.join(__dirname, '../workflows/go-ci.yml'), 'utf8');

function jobSection(name) {
const start = workflow.indexOf(`\n ${name}:\n`);
assert.notEqual(start, -1, `missing job ${name}`);
const rest = workflow.slice(start + 1);
const next = rest.slice(1).search(/^ [a-zA-Z0-9_-]+:\s*$/m);
return next < 0 ? rest : rest.slice(0, next + 1);
}

test('translator jobs require policy preflight, not external compatibility', () => {
for (const name of [
'fmt', 'build', 'benchmark',
'stdlib-corpus', 'cross-runtime', 'test', 'arm-scan', 'race', 'coverage',
]) {
const section = jobSection(name);
assert.match(section, /^ needs: ci_policy$/m, name);
// Native needs success gating must not be bypassed by always()/!cancelled().
assert.doesNotMatch(section, /^ if:/m, name);
}
assert.doesNotMatch(workflow, /discovered_library|reported_library|testdata\/discovery/);
});

test('all translator matrix failures remain failures', () => {
for (const name of ['test', 'race', 'coverage', 'cross-runtime']) {
const job = jobSection(name);
assert.match(job, /^ fail-fast: false$/m);
assert.doesNotMatch(job, /continue-on-error:/);
}
});

test('cheap CI policy checks pass before instruction and official corpus jobs', () => {
const policy = jobSection('ci_policy');
assert.match(policy, /bash scripts\/install-ci-llvm22-ubuntu\.sh/);
assert.match(policy, /node --test \.github\/scripts\/priority-\*\.test\.cjs/);
assert.match(policy, /go test \. -run '\^TestCI' -count=1/);
assert.doesNotMatch(policy, /^ (needs|if):/m);
assert.ok(workflow.indexOf('\n ci_policy:\n') <
workflow.indexOf('\n test:\n'));
});
42 changes: 42 additions & 0 deletions .github/scripts/priority-cross-runtime.test.cjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
const assert = require('node:assert/strict');
const fs = require('node:fs');
const test = require('node:test');

const workflow = fs.readFileSync('.github/workflows/go-ci.yml', 'utf8');
function job(name) {
const marker = `\n ${name}:\n`;
const start = workflow.indexOf(marker);
assert.notEqual(start, -1, `missing ${name}`);
const body = workflow.slice(start + marker.length);
const end = body.search(/^ [a-zA-Z][a-zA-Z0-9_-]*:\s*$/m);
return end < 0 ? body : body.slice(0, end);
}

test('required cross-runtime inventory has sixteen exhaustive owners, not a concurrency cap', () => {
const body = job('cross-runtime');
assert.match(body, /fail-fast: false/);
assert.doesNotMatch(body, /max-parallel:|continue-on-error:/);
assert.match(body, /owner: \[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\]/);
assert.match(body, /-ci-isolate-root TestCrossLinuxRuntimeMatrix/);
assert.match(body, /-ci-owner \$\{\{ matrix.owner \}\}/);
assert.match(body, /-shards 16 -timeout 20m/);
assert.match(body, /\^\(TestCrossLinuxRuntimeMatrix\|TestARM64Conformance\|TestARM64RawSQSHLURuntimeSemantics\|TestARMIntegerMemoryRuntimeCross\|TestARMRawSaturationRuntimeCross\)/);
assert.match(body, /PLAN9ASM_CROSS_EXEC: '1'/);
assert.match(body, /bash scripts\/install-ci-qemu.sh/);
assert.match(body, /actions\/upload-artifact@v6/);
assert.match(body, /if: \$\{\{ !cancelled\(\) \}\}/);
});

test('strict completion runs even after a failed owner and keeps original tool requirements', () => {
const body = job('cross-runtime-verify');
assert.match(body, /needs: cross-runtime/);
assert.match(body, /if: \$\{\{ !cancelled\(\) \}\}/);
assert.match(body, /-verify-ci-partitions _out\/cross-runtime-partitions/);
assert.match(body, /-shards 16 -timeout 20m/);
assert.match(body, /-ci-isolate-root TestCrossLinuxRuntimeMatrix/);
assert.match(body, /actions\/download-artifact@v8/);
assert.match(body, /gcc-i686-linux-gnu gcc-arm-linux-gnueabihf/);
assert.match(body, /gcc-aarch64-linux-gnu/);
assert.match(body, /bash scripts\/install-ci-qemu.sh/);
assert.doesNotMatch(body, /continue-on-error:|PLAN9ASM_CROSS_EXEC: '0'/);
});
188 changes: 188 additions & 0 deletions .github/scripts/priority-module-root-parts.test.cjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,188 @@
const assert = require('node:assert/strict');
const fs = require('node:fs');
const path = require('node:path');
const os = require('node:os');
const { spawnSync } = require('node:child_process');
const { test } = require('node:test');

const workflow = fs.readFileSync(
path.join(__dirname, '../workflows/go-ci.yml'), 'utf8',
);
const script = fs.readFileSync(
path.join(__dirname, '../../scripts/test-module-ci.sh'), 'utf8',
);

function job(name) {
const marker = `\n ${name}:\n`;
const start = workflow.indexOf(marker);
assert.notEqual(start, -1, `missing job ${name}`);
const body = workflow.slice(start + marker.length);
const end = body.search(/^ [a-zA-Z][a-zA-Z0-9_-]*:\s*$/m);
return end < 0 ? body : body.slice(0, end);
}

function step(body, name) {
const marker = ` - name: ${name}\n`;
const start = body.indexOf(marker);
assert.notEqual(start, -1, `missing step ${name}`);
const end = body.indexOf('\n - name:', start + marker.length);
return body.slice(start, end < 0 ? body.length : end);
}

test('race uses one two-shard wave; ordinary flavors retain eight root roles', () => {
for (const name of ['test', 'race', 'coverage']) {
const count = name === 'race' ? 16 : 8;
const roles = [
...Array.from({ length: count }, (_, index) => `root-${index}`),
'profile', 'other',
];
const body = job(name);
const match = body.match(/^ module-role: \[([^\]]+)\]$/m);
assert.ok(match, `${name}: missing explicit module scheduling roles`);
assert.deepEqual(match[1].split(',').map(value => value.trim()), roles);

const mappings = Array.from(body.matchAll(
/^ - \{module-role: (root-\d+|profile|other), module-owner: ([012]), root-partition: (-?\d+)\}$/gm,
), ([, role, owner, part]) => [role, Number(owner), Number(part)]);
assert.deepEqual(mappings, [
...Array.from({ length: count }, (_, index) => [`root-${index}`, 0, index]),
['profile', 1, -1],
['other', 2, -1],
], `${name}: role mapping repeats or loses package/shard ownership`);
assert.doesNotMatch(body, /^ module-owner: \[/m,
`${name}: Cartesian ownership repeats profile/rest`);
assert.match(body, /^ fail-fast: false$/m);
assert.doesNotMatch(body, /max-parallel:|continue-on-error:/);
}
});

test('root job fanout retains original workers, per-command and job budgets', () => {
assert.match(script, /test\) timeout=45m ;;/);
assert.match(script, /race\) timeout=60m; flags=\(-race\); root_partitions=16 ;;/);
assert.match(script, /coverage\) timeout=45m; flags=\(-coverprofile=coverage-root\.out\) ;;/);
assert.match(script, /-shards=32 -workers=2/);
assert.match(script, /GOMAXPROCS=2/);
for (const [name, minutes] of [['test', 60], ['race', 75], ['coverage', 60]]) {
assert.match(job(name), new RegExp(`^ timeout-minutes: ${minutes}$`, 'm'));
}
assert.match(job('module-completion'), /^ timeout-minutes: 30$/m);
});

test('executor and completion both request the same explicit root partition count', () => {
assert.match(script, /^root_partitions=8$/m);
assert.match(script, /-module-root-partitions=\$root_partitions/);
assert.match(script, /-module-root-partition=\$4/);
assert.match(script, /\[\[ \$# != 4/);
for (const [name, flavor, title] of [
['test', 'test', 'Go test (Ubuntu)'],
['race', 'race', 'Go test (race)'],
['coverage', 'coverage', 'Go test with coverage'],
]) {
assert.match(step(job(name), title), new RegExp(
`bash scripts/test-module-ci\\.sh ${flavor} execute \\$\\{\\{ matrix\\.module-owner \\}\\} \\$\\{\\{ matrix\\.root-partition \\}\\}`,
));
}
assert.match(step(job('module-completion'), 'Check complete actual module inventory and coverage'),
/bash scripts\/test-module-ci\.sh \$\{\{ matrix\.flavor \}\} complete/);
});

test('actual shell dispatch validates flavor-specific part bounds before launching Go', t => {
// This is only an argument-transport fixture, never compiler/test evidence.
const directory = fs.mkdtempSync(path.join(os.tmpdir(), 'module-ci-args-'));
t.after(() => fs.rmSync(directory, { recursive: true, force: true }));
fs.writeFileSync(path.join(directory, 'go'),
'#!/usr/bin/env bash\nprintf "%s\\n" SYNTHETIC_GO "$@"\n', { mode: 0o700 });
const run = (...args) => spawnSync('bash', [
path.join(__dirname, '../../scripts/test-module-ci.sh'), ...args,
], {
cwd: directory,
env: { ...process.env, PATH: directory + path.delimiter + process.env.PATH, GOFLAGS: '' },
encoding: 'utf8',
timeout: 5000,
});
for (const [flavor, count] of [['test', 8], ['coverage', 8], ['race', 16]]) {
for (const args of [['execute', '0', String(count - 1)], ['execute', '2', '-1'], ['complete']]) {
const actual = run(flavor, ...args);
assert.equal(actual.status, 0, actual.stderr || String(actual.error));
const fields = actual.stdout.trim().split('\n');
assert.equal(fields[0], 'SYNTHETIC_GO');
assert.ok(fields.includes(`-module-root-partitions=${count}`));
assert.ok(fields.includes('-shards=32'));
assert.ok(fields.includes('-workers=2'));
}
for (const part of [String(count), '-1', '01', '1+1', '999999999999999999999']) {
const actual = run(flavor, 'execute', '0', part);
assert.equal(actual.status, 1, `${flavor}/${part}: ${actual.stderr}`);
assert.doesNotMatch(actual.stdout, /SYNTHETIC_GO/);
}
}
});

test('each root part has an exact separate artifact and strict download destination', () => {
for (const name of ['test', 'race', 'coverage']) {
const body = job(name);
assert.match(body, /name: module-(?:test|race|coverage)-.*\$\{\{ matrix\.module-role \}\}/);
assert.match(body, /if-no-files-found: error/);
}
const aggregate = job('module-completion');
for (let part = 0; part < 16; part++) {
const download = step(aggregate, `Download root part ${part}`);
assert.match(download, new RegExp(
`^ name: module-\\$\\{\\{ matrix\\.flavor \\}\\}-\\$\\{\\{ matrix\\.go-version \\}\\}-root-${part}$`, 'm',
));
assert.match(download, new RegExp(
`^ path: _out/module-\\$\\{\\{ matrix\\.flavor \\}\\}-owners/owner-0000/part-${String(part).padStart(4, '0')}$`, 'm',
));
if (part >= 8) {
assert.match(download, /if: \$\{\{ !cancelled\(\) && matrix\.flavor == 'race' \}\}/);
} else {
assert.doesNotMatch(download, /matrix\.flavor ==/);
}
}
assert.match(step(aggregate, 'Download profile owner'), /-profile$/m);
assert.match(step(aggregate, 'Download remaining-package owner'), /-other$/m);
assert.doesNotMatch(aggregate, /merge-multiple:|pattern:/);
assert.match(aggregate, /needs: \[test, race, coverage\]/);
assert.match(aggregate, /^ if: \$\{\{ !cancelled\(\) \}\}$/m);
});

test('owner-two side gates run once and Windows remains a complete independent suite', () => {
const body = job('test');
for (const title of [
'Required exact downloaded AMD64 numerical fixture',
'Go test (cmd/plan9asm, Ubuntu)',
'Go test (cmd/plan9asmll, Ubuntu)',
]) {
assert.match(step(body, title), /matrix\.module-owner == 2/);
}
assert.match(body,
/\{os: windows-latest, go-version: '1\.27\.x', module-role: other, module-owner: 2, root-partition: -1, nested_modules: true\}/);
assert.match(step(body, 'Go test with coverage (Windows)'), /go test -count=1 -timeout=30m \.\/\.\.\./);
assert.match(body,
/go-version: \['1\.20\.x', '1\.21\.x', '1\.22\.x', '1\.23\.x', '1\.24\.x', '1\.25\.x', '1\.26\.x', '1\.27\.x'\]/);
});

test('selected native CI remains a separate sixteen-owner serial protocol', () => {
const body = job('cross-runtime');
assert.match(body, /owner: \[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\]/);
assert.match(body, /-ci-owner \$\{\{ matrix.owner \}\} -shards 16 -timeout 20m/);
assert.doesNotMatch(body, /module-root-partition|module-owner|(?:^|\s)-workers(?:=|\s)/);
});

test('Windows CLI suites cannot be suppressed by the root package timeout', () => {
const body = job('windows-cli');
assert.match(body, /^ needs: ci_policy$/m);
assert.match(body, /^ runs-on: windows-latest$/m);
assert.match(body, /^ fail-fast: false$/m);
assert.match(body, /^ command: \[plan9asm, plan9asmll\]$/m);
assert.doesNotMatch(body, /max-parallel:|continue-on-error:/);

const execute = step(body, 'Run complete CLI suite with coverage');
assert.match(execute, /working-directory: cmd\/\$\{\{ matrix\.command \}\}/);
assert.match(execute,
/go test -count=1 -timeout=30m \.\/\.\.\. -coverprofile=\.\.\/\.\.\/coverage-windows-\$\{\{ matrix\.command \}\}\.out/);
assert.doesNotMatch(execute, /-run[=\s]|-skip[=\s]/);
assert.match(step(body, 'Upload Windows CLI coverage to Codecov'),
/files: \.\/coverage-windows-\$\{\{ matrix\.command \}\}\.out/);
assert.doesNotMatch(job('test'), /cd cmd\/plan9asm.*coverage-windows/);
});
Loading
Loading