Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
227 commits
Select commit Hold shift + click to select a range
9f6ea94
feat(storage): isolate pool namespace from legacy account files
ualtinok Oct 2, 2026
fb4a66f
feat(core): bundle strict shared account storage machinery
ualtinok Oct 2, 2026
2ab61f8
feat(migration): guard pool authority with a forward-only journal
ualtinok Oct 2, 2026
2bf66fb
feat(core): fence native observations with immutable account bindings
ualtinok Oct 2, 2026
1107670
feat(migration): capture strict secret-safe source baselines
ualtinok Oct 2, 2026
149e021
merge: carry verified replay guards into native cutover
ualtinok Oct 2, 2026
3b326d3
merge: retain verified replay test floors in native cutover
ualtinok Oct 2, 2026
8fff164
Merge verified PR 284 comment clarifications into native foundations
ualtinok Oct 3, 2026
84a09f2
mason: verify Claustrum client 0.5 compatibility
ualtinok Oct 3, 2026
978ad91
Merge verified Claustrum client 0.5.0 peer compatibility
ualtinok Oct 3, 2026
1477de4
mason: update common-auth foundation dependency
ualtinok Oct 4, 2026
e44a883
Merge verified mural cache fix into native foundations
ualtinok Oct 4, 2026
ee15aa6
mason: close native storage facade and packed declarations
ualtinok Oct 5, 2026
2c43125
mason: add closed native runtime storage and lossless quota codec
ualtinok Oct 5, 2026
106005c
mason: harden native runtime stage ownership and metadata
ualtinok Oct 5, 2026
d7d1b62
mason: pin native claustrum client to 0.6.2
ualtinok Oct 5, 2026
cf75b0c
Merge verified native runtime and quota storage
ualtinok Oct 5, 2026
20e4080
mason: add account-local native refresh coordinator
ualtinok Oct 5, 2026
9dfd4ea
Merge verified Claustrum 0.6.2 compatibility
ualtinok Oct 5, 2026
3bb674c
mason: separate rate-limit metadata from immediate retries
ualtinok Oct 5, 2026
57d8288
mason: preserve proven sticky routing state
ualtinok Oct 5, 2026
4024a8d
mason: add pure native host auth entry codec
ualtinok Oct 5, 2026
5cf4844
reclaim: auto-preserved uncommitted changes (NOT reviewed work product)
ualtinok Oct 6, 2026
d4c2586
Merge commit '5cf4844c4bd99183f78ddc264e0c1dad9dc247c3' into work/com…
ualtinok Oct 6, 2026
fd2f562
mason: add v2 authority journal and safe fixture lifetimes
ualtinok Oct 6, 2026
387b876
feat(core): integrate journal entry fences and body-owned fixture cle…
ualtinok Oct 6, 2026
52088f8
mason: add native credential validation foundation
ualtinok Oct 6, 2026
02db1e2
feat(core): integrate version-bound credential proof foundation
ualtinok Oct 6, 2026
f4b1ac2
mason: add exact-version native validation retry schema
ualtinok Oct 6, 2026
0c81b7d
feat: integrate exact-version local validation retry metadata
ualtinok Oct 6, 2026
87f65f6
mason: require positive native credential admission
ualtinok Oct 6, 2026
8839fdd
Merge native coordinator positive admission
ualtinok Oct 6, 2026
7f05b3e
test: join runtime update siblings before fixture cleanup
ualtinok Oct 6, 2026
3e71889
Merge runtime sibling cleanup regression
ualtinok Oct 6, 2026
73843b8
mason: isolate native lock diagnostics from refresh control
ualtinok Oct 6, 2026
b78aadf
mason: publish guarded first native identity
ualtinok Oct 6, 2026
af48822
Merge guarded first identity publication
ualtinok Oct 6, 2026
6e38aef
style: simplify first identity entry guard
ualtinok Oct 6, 2026
be9e957
mason: adopt common-auth 0.10.0 in core
ualtinok Oct 6, 2026
5416031
Merge verified common-auth 0.10.0 dependency
ualtinok Oct 6, 2026
3b5b536
mason: add pure native local runtime readers
ualtinok Oct 6, 2026
47f0be8
mason: forward physical native handoff contention
ualtinok Oct 6, 2026
ff5b56c
feat(core): integrate strict native local runtime readers
ualtinok Oct 6, 2026
9716284
feat(core): observe physical account handoff contention
ualtinok Oct 6, 2026
06a143a
mason: publish guarded known local credential proof
ualtinok Oct 6, 2026
cae5a44
mason: add bounded offline host-auth writer
ualtinok Oct 6, 2026
00d30e2
feat(core): publish guarded known-account credential validation
ualtinok Oct 6, 2026
3c08c62
feat(core): add fenced offline host-auth write recipes
ualtinok Oct 6, 2026
6d62ef2
mason: add pure native menu model and inventory contracts
ualtinok Oct 6, 2026
0b30f26
mason: add native scoped custody adapter
ualtinok Oct 6, 2026
75ef185
feat(core): integrate native menu action model
ualtinok Oct 6, 2026
8356631
feat(core): integrate scoped native custody adapter
ualtinok Oct 6, 2026
6e31d6b
reclaim: auto-preserved uncommitted changes (NOT reviewed work product)
Oct 7, 2026
068b69b
mason: finalize guarded native failure publication
ualtinok Oct 7, 2026
61d066f
mason: compose local OAuth credential service
ualtinok Oct 7, 2026
a2fa598
Integrate guarded failure publication and local OAuth service
ualtinok Oct 7, 2026
5d2a2a6
mason: expose public migration path and routing source seams
ualtinok Oct 7, 2026
4f61a0e
Narrow failure publication invariants without non-null assertions
ualtinok Oct 7, 2026
50be123
mason: add pure native vault roster seed and resume validation
ualtinok Oct 7, 2026
e9921a4
Integrate public offline migration source seams
ualtinok Oct 7, 2026
682a1ef
mason: add OpenCode 2 native Anthropic HTTP adapter
ualtinok Oct 7, 2026
640686f
mason: add typed native menu action executor
ualtinok Oct 7, 2026
ed203ad
Integrate pure custody roster seed and resume validation
ualtinok Oct 7, 2026
d4a085e
Integrate typed native menu action executor
ualtinok Oct 7, 2026
cb3e3f8
Integrate OpenCode 2 HTTP adapter foundation
ualtinok Oct 7, 2026
95e2079
Clarify OAuth supplemental header ownership
ualtinok Oct 7, 2026
0a3204c
mason: adopt verified common-auth 0.11.2
ualtinok Oct 7, 2026
9d49ea2
feat: support Claude Haiku 5.5 across OpenCode and Pi
ualtinok Oct 7, 2026
370f421
docs: clarify Haiku prefix policy and configuration
ualtinok Oct 7, 2026
206b0cf
merge: retain Haiku 5.5 support in native cutover
ualtinok Oct 7, 2026
bbd9bdf
chore: adopt verified common-auth 0.11.3 orphan recovery
ualtinok Oct 7, 2026
c4a5a56
feat(core): expose native host services through a curated public API
ualtinok Oct 7, 2026
835e12e
mason: add replayable Bun guard mutation catalogue
ualtinok Oct 7, 2026
6253544
Merge verified Bun guard mutation catalogue into native cutover
ualtinok Oct 7, 2026
0e63151
ci: add pinned mutation guard replay and nightly breadth
ualtinok Oct 7, 2026
cb5e1ef
test(ci): clarify literal workflow expressions
ualtinok Oct 7, 2026
afc0834
fix(ci): isolate mutation fixtures and parse native GitHub output
ualtinok Oct 8, 2026
b00317e
fix(ci): retain genuine negated assertion failures in breadth audits
ualtinok Oct 8, 2026
b8d2028
docs: explain Haiku replay controls and preserved behavior
ualtinok Oct 8, 2026
d72829d
merge: retain final Haiku documentation on isolated native branch
ualtinok Oct 8, 2026
5a4d02d
ci: adopt verified mutation runner 0.9.2
ualtinok Oct 8, 2026
ba2c296
docs: align mutation runner installation with verified 0.9.2
ualtinok Oct 8, 2026
f2701de
chore: adopt verified common-auth 0.11.4
ualtinok Oct 8, 2026
1bc2f02
ci: gate native packaging and mutation wrappers
ualtinok Oct 8, 2026
a5c6e47
feat(core): expose captured migration journal reader
ualtinok Oct 8, 2026
389fb53
feat(core): expose captured migration journal reader
ualtinok Oct 8, 2026
1084066
feat(core): expose checked Claude menu renderer
ualtinok Oct 8, 2026
4a124ab
style(core): simplify checked menu request guard
ualtinok Oct 8, 2026
b625bb3
feat(core): expose bundled command protocol types
ualtinok Oct 8, 2026
44d4961
test(opencode): exercise packed TUI loader invocation
ualtinok Oct 8, 2026
63e8f56
chore(core): adopt verified common-auth 0.11.5
ualtinok Oct 8, 2026
3713bdc
mason: add native account and vault runtime
ualtinok Oct 8, 2026
dada4ca
Merge verified native account and vault runtime
ualtinok Oct 8, 2026
203409e
fix(core): refuse OAuth credential redirects
ualtinok Oct 8, 2026
025fd1e
fix(core): authorize native quota polls at transport dispatch
ualtinok Oct 8, 2026
78e8b66
mason: implement offline native migration controller and recovery proofs
ualtinok Oct 8, 2026
ab11781
Merge verified offline migration controller and semantic recovery proofs
ualtinok Oct 8, 2026
d3220b8
mason: add reviewed offline setup enrollment and path helpers
ualtinok Oct 8, 2026
24cb57f
mason: complete native Pi authority and single Claude menu
mason Oct 8, 2026
e82907b
mason: unify checked Claude menu UI and host IPC
ualtinok Oct 8, 2026
efd5e46
Merge verified Pi native account serving and unified Claude menu
ualtinok Oct 8, 2026
d42c1bb
Merge verified unified Claude menu renderer and session-scoped IPC
ualtinok Oct 8, 2026
f27e80f
chore(core): adopt verified common-auth 0.11.7 deletion fence
ualtinok Oct 9, 2026
abe3657
mason: integrate reviewed offline setup helpers
ualtinok Oct 9, 2026
1a3b8cc
mason: preserve OC1 native serving and single claude menu
ualtinok Oct 9, 2026
c038b8b
mason: document offline setup integration checks
ualtinok Oct 9, 2026
670dc38
mason: integrate reviewed OC1 host preservation
ualtinok Oct 9, 2026
d1963e5
mason: add OpenCode native positive test fixture foundation
ualtinok Oct 9, 2026
cb6aa29
Merge commit 'd1963e5da49b590d2eedb4382f085c135c9c2d74' into alfonso/…
ualtinok Oct 9, 2026
69ae321
Merge commit 'd1963e5da49b590d2eedb4382f085c135c9c2d74' into alfonso/…
ualtinok Oct 9, 2026
ff18e22
mason: recheck pool authority before local credentials leave the service
ualtinok Oct 9, 2026
1bf2896
mason: normalize verified OC1 native serving slice on accepted base
ualtinok Oct 9, 2026
6ef2bb2
mason: restore native committed-mutation effects in the shared runtime
ualtinok Oct 9, 2026
e3f29f0
mason: route the OpenCode add-apikey menu action through the plugin's…
ualtinok Oct 9, 2026
5d1aa31
Merge verified offline enrollment and host process fences
ualtinok Oct 9, 2026
84b3773
test(core): align explicit migration consent and redirect fixture types
ualtinok Oct 9, 2026
04037ab
mason: normalize nullable quota reset windows
ualtinok Oct 9, 2026
7bf81f2
Merge reviewed OpenCode 1 native serving adapter
ualtinok Oct 9, 2026
9755de2
mason: preserve usable native OAuth browser URLs
ualtinok Oct 9, 2026
b6bcb5a
Merge explicit offline migration fixtures for positive host tests
ualtinok Oct 9, 2026
e2eb791
Merge commit '04037ab696e7' into alfonso/task/bg_dd64ff0056cc3118-nat…
ualtinok Oct 9, 2026
b27916c
Merge final local credential authority fence
ualtinok Oct 9, 2026
a9d165f
Merge nullable upstream quota reset normalization
ualtinok Oct 9, 2026
4bcf2ec
Merge usable OAuth browser URL presentation
ualtinok Oct 9, 2026
b8c51a2
mason: report only the final rejected vault 401 record
ualtinok Oct 9, 2026
2e049f8
Merge commit 'b8c51a2402bd' into alfonso/task/bg_dd64ff0056cc3118-nat…
ualtinok Oct 9, 2026
6e9872e
Merge final rejected vault receipt reporting
ualtinok Oct 9, 2026
420164d
mason: judge native account and setting effects on locked outcomes
ualtinok Oct 9, 2026
f87f229
mason: run Group B scoped custody suites on real native migration
ualtinok Oct 9, 2026
709843c
Merge commit '420164ddc5f991d08f822745145a5bfb1901b56c' into alfonso/…
ualtinok Oct 9, 2026
08aec56
mason: omit unusable quota cache instead of refusing migration
ualtinok Oct 9, 2026
afb2103
mason: migrate Group C lifecycle, logging and RPC suites to native fi…
ualtinok Oct 9, 2026
6fb3913
mason: migrate e2e process fixtures through native offline migration
ualtinok Oct 9, 2026
a55d43f
mason: complete offline native vault custody activation
ualtinok Oct 9, 2026
d2c1fb9
Merge verified native committed command effects
ualtinok Oct 9, 2026
afc9205
mason: restore native profile status hydration and cache settings shape
ualtinok Oct 9, 2026
ff83b8a
Integrate native custody and status; preserve legacy credentials on i…
ualtinok Oct 9, 2026
c6e1a5e
Integrate native migration fixtures and offline primary recovery
ualtinok Oct 9, 2026
f40de33
Preserve ordered last-main attempts and refresh-backoff quota inventory
ualtinok Oct 9, 2026
27c5aa6
Honor proactive refresh backoff and fence stale credential errors
ualtinok Oct 9, 2026
416c337
Refresh stale model-scoped quota before migrating ordered requests
ualtinok Oct 9, 2026
2023e24
Reject quota observations from another or unidentified native account
ualtinok Oct 9, 2026
a71bf83
Defer fallback-first main credentials and display verified native quotas
ualtinok Oct 9, 2026
615744d
Convert central plugin fixtures to committed native account authority
ualtinok Oct 9, 2026
2dbee8a
Bind deferred primary quota before admitting paid fallback
ualtinok Oct 9, 2026
f90be15
Refuse unsupported native OAuth without poisoning refresh state
ualtinok Oct 9, 2026
d01e5e0
Verify native Prime rotation, token adoption and one-poll accounting
ualtinok Oct 9, 2026
7d866fe
Distinguish Prime exchange failures from unavailable accounts
ualtinok Oct 9, 2026
beb5ce5
Invalidate main quota cache on explicit credential replacement
ualtinok Oct 10, 2026
0dce669
Use native OAuth bearers in status profile regression fixtures
ualtinok Oct 10, 2026
b1ae401
Exercise quota feed preservation through native pool writers
ualtinok Oct 10, 2026
6a31ce7
Admit response quota to cache only after native publication
ualtinok Oct 10, 2026
7deb225
Bind fallback quota caches to native credential generations
ualtinok Oct 10, 2026
db9f4bc
Exercise native main identity and quota-feed fences
ualtinok Oct 10, 2026
9292fe3
Honor account usage waits before primary credential admission
ualtinok Oct 10, 2026
a69dd35
fix: route fresh quota without blocking on publication
ualtinok Oct 10, 2026
486915e
test: register native quota and runtime safety mutations
ualtinok Oct 10, 2026
c53ae36
fix: preserve account quota across native token refresh
ualtinok Oct 10, 2026
a6535fd
test: rotate fallback credentials through the native pool
ualtinok Oct 10, 2026
ad9845e
test: bind header fixtures to native account authority
ualtinok Oct 10, 2026
17072c0
test: await refreshed-main quota publication logging
ualtinok Oct 10, 2026
b9e3b5e
fix: make sidebar callback available to early quota fallback
ualtinok Oct 10, 2026
a9258e8
test: require account-bound profile cache inheritance
ualtinok Oct 10, 2026
7b96620
fix: hydrate native startup profiles and publish saved tiers
ualtinok Oct 10, 2026
20b2d1f
test: verify native profile rotation and bounded quota display
ualtinok Oct 10, 2026
faff5e7
test: drain auth bodies before restoring request transport
ualtinok Oct 10, 2026
b5661c1
test: hold the actual native profile publication writer
ualtinok Oct 10, 2026
67c0485
test: isolate profile transport counts from usage polling
ualtinok Oct 10, 2026
6cb3fd3
fix: fence profile display without hiding tiers on write failure
ualtinok Oct 10, 2026
4879a34
test: verify proactive main refresh in the native credential pool
ualtinok Oct 10, 2026
076472b
test: preserve native proactive refresh and backoff reset behavior
ualtinok Oct 10, 2026
515ca58
fix: preserve native refresh retries before arming backoff
ualtinok Oct 10, 2026
2e98871
test: verify native re-login clears only credential-bound restrictions
ualtinok Oct 10, 2026
6080b54
test: exercise stale account writes against native authority
ualtinok Oct 10, 2026
869b187
test: verify native quota menu status and explicit refresh
ualtinok Oct 10, 2026
6fa519e
fix: recheck native activation around credential authorization
ualtinok Oct 10, 2026
9196f72
fix(opencode): enforce fallback quota preflight without credential di…
ualtinok Oct 10, 2026
5eb4d9f
fix(opencode): strip host session metadata from model transport
ualtinok Oct 10, 2026
e5a45b4
test(opencode): migrate CLI API and relay fixtures to native storage
ualtinok Oct 10, 2026
7280520
build(core): adopt verified common-auth 0.13.0
ualtinok Oct 10, 2026
450222b
fix(core): verify OAuth login identity and isolate vault account policy
ualtinok Oct 10, 2026
95921f1
feat(core): expose enrollment authority and isolated vault paths
ualtinok Oct 10, 2026
0a2d25a
fix(core): isolate vault custody from local account recovery
ualtinok Oct 10, 2026
15e327e
test(core): isolate native profile enrollment and vault metadata
ualtinok Oct 10, 2026
52efdb8
fix(setup): isolate vault enrollment from local credential recovery
ualtinok Oct 10, 2026
7715bdf
fix(routing): bind vault session pins to verified account UUIDs
ualtinok Oct 10, 2026
45c2e28
feat(core): preserve Pi auth slots with shared vault disconnect
ualtinok Oct 10, 2026
643fdd5
fix(pi): fence vault session affinity by account UUID
ualtinok Oct 10, 2026
b808733
test(opencode): include native setup checks in the unit suite
ualtinok Oct 10, 2026
dcc18bb
feat(core): expose a safe secret-free host login reader
ualtinok Oct 10, 2026
2356546
fix(quota): pace physical usage requests after credential admission
ualtinok Oct 10, 2026
88f3b8c
test(opencode): migrate CLI and account fixtures to native custody
ualtinok Oct 10, 2026
ae6a028
test(pi): use explicit supported native OAuth fixture tokens
ualtinok Oct 10, 2026
4c53bcd
fix(pi): forward physical quota dispatch through native reads
ualtinok Oct 10, 2026
19a0769
feat(auth): integrate custody-aware menus and truthful vault disconnect
ualtinok Oct 10, 2026
4f31a2c
feat: integrate native OpenCode hosts and preserve quota ordering
ualtinok Oct 11, 2026
4be73c9
mason: scope Pi SDK import guards by runtime entry
ualtinok Oct 11, 2026
c78d4bd
mason: repair native login and setup recovery fixtures
ualtinok Oct 11, 2026
8faf5ee
fix: scope Pi SDK import checks by runtime entry point
ualtinok Oct 11, 2026
2e3ece1
fix: refuse native custody markers before refresh bookkeeping
ualtinok Oct 11, 2026
69ae2e0
mason: drive custody tombstone plugin tests through native boundaries
ualtinok Oct 11, 2026
d5b18bb
test: exercise migrated native OAuth recovery boundaries
ualtinok Oct 11, 2026
8f75c6d
mason: restore custody tombstone fetch only after native bodies settle
ualtinok Oct 11, 2026
e97e965
mason: expose packed RPC client and record failed host phases
ualtinok Oct 11, 2026
ee19153
test: prepare process vault fixtures from enrollment authority
ualtinok Oct 11, 2026
dfa318e
test: verify native custody marker refusals with drained fixtures
ualtinok Oct 11, 2026
0e4751b
mason: drain both host fixtures and prove failure-phase reporting
ualtinok Oct 11, 2026
25c8de5
mason: bind stand-in children to owning test cancellation
ualtinok Oct 11, 2026
ae327ef
mason: keep unsupported consumed OAuth successors without refresh bac…
ualtinok Oct 11, 2026
f0424bf
mason: cover unsupported successor for a row with no confirmed accoun…
ualtinok Oct 11, 2026
d8b9603
fix: expose packed RPC client and diagnose failed host phases
ualtinok Oct 11, 2026
45d853b
mason: repair three native E2E fixture contracts
ualtinok Oct 11, 2026
260b47c
mason: admit package-local mutation test catalogue paths
ualtinok Oct 11, 2026
b393014
fix: retain unsupported OAuth successors without retry backoffs
ualtinok Oct 11, 2026
75171dd
mason: seed OC1 1.18.31 startup dependencies in packed host fixture
ualtinok Oct 11, 2026
09f495e
test: lock the OC1 executable without install scripts
ualtinok Oct 11, 2026
94e007c
fix: admit all owned mutation catalogue test paths
ualtinok Oct 11, 2026
21be410
mason: require the genuine OC1 SDK fixture and prove seeded links sta…
ualtinok Oct 11, 2026
e0935e5
test: read isolated native state in OC1 process fixtures
ualtinok Oct 11, 2026
4a8ee8d
test: seed matching packed OC1 startup dependencies
ualtinok Oct 11, 2026
827572a
fix: recognize genuine Bun promise assertion failures
ualtinok Oct 11, 2026
b586874
fix: require quota evidence for enabled killswitch floors
ualtinok Oct 11, 2026
5e63f31
build: adopt verified common-auth 0.14.2
ualtinok Oct 11, 2026
a7f0a1f
test: migrate the real Pi tool fixture before host startup
ualtinok Oct 11, 2026
0b66927
docs: describe native account and vault setup accurately
ualtinok Oct 11, 2026
688a8be
test: defend quota preflight and serialized sweep guards
ualtinok Oct 11, 2026
4ed8c94
test: distinguish host title requests and ratchet native floors
ualtinok Oct 11, 2026
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
16 changes: 8 additions & 8 deletions .ci/test-count-floors.json
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
{
"floors": {
"core": 325,
"opencode": 1741,
"pi": 155
"core": 1508,
"opencode": 2010,
"pi": 220
},
"measurement": {
"head": "eb10f1479ff7fb91bdfbc2ce266666a569f41db5",
"head": "688a8becd40c25d851116f987b55707c99f3d870",
"dirtyPaths": 0
},
"evidence": {
"_note": "Pinned Bun 1.3.14 runner totals after the mural cache anchor fix. The clean branch commit was measured locally; clean PR CI independently matched all totals. Runner counts, not source declaration counts, are the authority at the gate.",
"core": "325 passing at clean branch commit eb10f147; independently matched by clean CI run 37244390451",
"opencode": "1741 passing at clean branch commit eb10f147; independently matched by clean CI run 37244390451",
"pi": "155 passing at clean branch commit eb10f147; independently matched by clean CI run 37244390451"
"_note": "Pinned Bun 1.3.14 unit totals measured on native cutover head 688a8bec by CI run 38161601147. The unit census passed, including disposable packed hosts; the later E2E step failed separately. Runner counts, not source declaration counts, are the authority at the gate.",
"core": "1508 passing at head 688a8bec; CI run 38161601147 MEASURED: core 1508",
"opencode": "2010 passing at head 688a8bec, including packed host cases; CI run 38161601147 MEASURED: opencode 2010",
"pi": "220 passing at head 688a8bec; CI run 38161601147 MEASURED: pi 220"
}
}
8 changes: 7 additions & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,11 +19,16 @@ jobs:
fetch-depth: 0
- uses: jdx/mise-action@c2a87611a18de5b3828c5652fe268e992400cb5c # v4
- run: bun install --frozen-lockfile
- name: Install the locked OC1 config dependency fixture
run: npm ci --prefix packages/e2e-tests/fixtures/opencode1-config-deps --ignore-scripts --no-audit --no-fund
- run: bun run check:workspace-lock
- run: bun run types
- run: bun run build
- run: bun test --cwd packages/opencode scripts/check-bundle-globals.test.ts
- run: bun test scripts/check-pi-dist-imports.test.ts
- run: bun run check:pi-dist-imports
- run: bun run --cwd packages/core test:scripts
- run: bun test scripts/tests/run-mutation-ci.test.ts scripts/tests/run-mutation-bun.test.ts
- run: bun run check:claustrum-golden
env:
GITHUB_TOKEN: ${{ github.token }}
Expand All @@ -34,7 +39,8 @@ jobs:
env:
TUI_SMOKE_SKIP_BUILD: "1"
- run: bun run test:pi-host
- run: npm install -g opencode-ai@1.18.18
- run: bun run test:e2e
env:
ANTHROPIC_AUTH_E2E_OPENCODE_CONFIG_DEPS: ${{ github.workspace }}/packages/e2e-tests/fixtures/opencode1-config-deps
- run: bun run format:check
- run: bun run lint
54 changes: 54 additions & 0 deletions .github/workflows/mutations.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
name: Mutation guards

on:
pull_request:
push:
branches: [main]
schedule:
- cron: '17 3 * * *'
workflow_dispatch:

permissions:
contents: read

concurrency:
group: mutation-${{ github.event_name }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

jobs:
guards:
runs-on: ubuntu-latest
timeout-minutes: 30
env:
MUTATION_EVENT: ${{ github.event_name }}
MUTATION_BASE: ${{ github.event.pull_request.base.sha }}
MUTATION_HOME: ${{ github.workspace }}/node_modules/.cache/ckdev-mutate-0.9.2
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v6
with:
fetch-depth: 0
persist-credentials: false
- uses: jdx/mise-action@c2a87611a18de5b3828c5652fe268e992400cb5c # v4
- run: bun install --frozen-lockfile
- name: Build shared Core for test preloads
run: bun run --cwd packages/core build
- name: Install pinned mutation runner
shell: bash
run: |
CARGO_HOME="$MUTATION_HOME/cargo-home" \
CARGO_TARGET_DIR="$MUTATION_HOME/target" \
cargo install --locked --git https://github.com/cortexkit/commons \
--rev b491012199d98b09fd167e00783df297d35a62b8 \
--root "$MUTATION_HOME/install" cortexkit-mutate
echo "$MUTATION_HOME/install/bin" >> "$GITHUB_PATH"
- name: Verify CI selection and report guards
run: bun test scripts/tests/run-mutation-ci.test.ts scripts/tests/run-mutation-bun.test.ts
- name: Replay mutation guards
run: bun scripts/run-mutation-ci.ts
- name: Retain reports and raw test evidence
if: always()
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
with:
name: mutation-${{ github.run_id }}-${{ github.run_attempt }}
path: tmp/mutations/
if-no-files-found: warn
Loading
Loading