Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1051 commits
Select commit Hold shift + click to select a range
84774a6
ven
doublemover Mar 21, 2026
ecb7c5d
Fix runtime manifest and workspace-only context-pack routing
doublemover Mar 21, 2026
6356f8a
Fix piece assembly duplicate chunkUid merges
doublemover Mar 21, 2026
a4072fc
Issue #323 add Rust CI validation for TUI crate
doublemover Mar 21, 2026
99187ce
Issue #324 expand Dependabot ecosystem coverage
doublemover Mar 21, 2026
d3b6fb5
Issue #325 broaden CodeQL scanning to Rust
doublemover Mar 21, 2026
fbb18e4
Issue #326 add generated surfaces registry
doublemover Mar 21, 2026
a2c9ccd
Issue #328 add contributor and CI coverage contracts
doublemover Mar 21, 2026
c0a42b4
Issue #327 enforce generated surface freshness in CI
doublemover Mar 21, 2026
d48cf42
Issue #329 add changed-file and critical-surface coverage reporting
doublemover Mar 21, 2026
2f68c90
Issue #307 centralize CLI command metadata
doublemover Mar 21, 2026
ee107c4
Issue #305 complete canonical CLI coverage
doublemover Mar 21, 2026
0bb846a
Issue #308 enforce command surface parity contracts
doublemover Mar 21, 2026
ffbe712
Issue #309 reduce npm contributor surface
doublemover Mar 21, 2026
7e6e48c
Issue #310 add tiered CLI help and discovery
doublemover Mar 21, 2026
f120baa
Issue #311 add CLI completions and self-audit
doublemover Mar 21, 2026
cf0d839
Issue #306 demote legacy root wrappers to compatibility shims
doublemover Mar 21, 2026
cd15712
Issue #316 complete host-local TUI install flow
doublemover Mar 21, 2026
dbd2a7e
Issue #315 add TUI frame capture harnesses
doublemover Mar 21, 2026
ace4ea9
Issue #313 add TUI session runtime model
doublemover Mar 21, 2026
0a4774e
Issue #314 refine TUI operator rendering
doublemover Mar 21, 2026
e07016c
Move TUI defaults off repo-local .cache
doublemover Mar 21, 2026
9b7cf71
Fix TUI startup handshake and idle metrics spam
doublemover Mar 21, 2026
9e09c30
Issue #318 add TUI operator workflows
doublemover Mar 21, 2026
9b5bbc8
Issue #319 add TUI workload summaries
doublemover Mar 21, 2026
97e9361
Issue #321 add shipped surface registry
doublemover Mar 21, 2026
b332526
Issue #330 add artifact-level release surface verification
doublemover Mar 21, 2026
8ee731f
Issue #320 add promotion-based release automation
doublemover Mar 21, 2026
52acb9b
Issue #322 add release trust materials
doublemover Mar 21, 2026
077863b
Issue #331 add integrated release readiness gate
doublemover Mar 21, 2026
19212e0
ven
doublemover Mar 21, 2026
9945be4
Fix manual release checkout and trust artifact publish
doublemover Mar 22, 2026
5e88458
Issue #342 tighten bench diagnostics severity and parity
doublemover Mar 22, 2026
4e25155
Issue #337 make artifact publication cleanup transactional
doublemover Mar 22, 2026
cb2b1c7
Issue #336 harden bench timeout adaptation and attribution
doublemover Mar 22, 2026
a303523
Issue #338 harden provider degraded fidelity contracts
doublemover Mar 22, 2026
7f089a1
Issue #340 enforce canonical chunk identity reconciliation
doublemover Mar 22, 2026
58e4478
Issue #339 classify Windows checkout and Rust metadata failures
doublemover Mar 22, 2026
29834d1
Bench fallback and reuse diagnostics cause-aware
doublemover Mar 22, 2026
b27fb5e
Issue #341 add extracted prose quality budgets
doublemover Mar 22, 2026
faef1db
Fix schema index and legacy search help contracts
doublemover Mar 22, 2026
d97c225
Prune unused vulnerable direct dependencies
doublemover Mar 22, 2026
30008a1
Update runtime dependencies for security advisories
doublemover Mar 22, 2026
0d11edf
Replace import counterpart regexes with deterministic parsing
doublemover Mar 22, 2026
b1e5c24
Harden file-type probe bounds
doublemover Mar 22, 2026
c56c524
Pin minimatch to patched dev version
doublemover Mar 22, 2026
234f453
Upgrade TUI stack to patched ratatui
doublemover Mar 22, 2026
b4ac8ab
Clear stale cross-file call targets on reuse
doublemover Mar 22, 2026
563208e
Fix risk delta file seeds and release workflow gating
doublemover Mar 22, 2026
41a3ef6
Add structured bench runtime timeout diagnostics
doublemover Mar 23, 2026
57827ae
Refine bench watchdog phase ownership
doublemover Mar 23, 2026
cd0a594
Make artifact publication transactional
doublemover Mar 23, 2026
4ea7dec
Unify active build root resolution
doublemover Mar 23, 2026
f579d22
Isolate artifact family closeout queues
doublemover Mar 23, 2026
e628df5
Surface gopls partial workspace coverage
doublemover Mar 23, 2026
6d41ceb
Preserve SourceKit fidelity taxonomy
doublemover Mar 23, 2026
57f75dc
Make tree-sitter crash quarantine explicit
doublemover Mar 23, 2026
19a5151
Surface Rust workspace fidelity causes
doublemover Mar 23, 2026
dcafca8
Normalize provider fidelity issue reporting
doublemover Mar 23, 2026
24a038a
Make import warning suppression structured and bounded
doublemover Mar 23, 2026
ea5acfb
Make reuse diagnostics generation-aware
doublemover Mar 23, 2026
70c0ebe
Add production-clean bench verdict gate
doublemover Mar 23, 2026
9eb6728
Add bench runtime canary harnesses
doublemover Mar 23, 2026
f724261
Fix release gating and import-scan regressions
doublemover Mar 23, 2026
2c96eae
Make serving freshness request-boundary generation-aware
doublemover Mar 23, 2026
5353356
Make retrieval freshness and backend fidelity explicit
doublemover Mar 23, 2026
c54ac66
Make federated partial success explicit
doublemover Mar 23, 2026
56806a8
Formalize queue at-least-once replay state
doublemover Mar 23, 2026
d7c2586
Govern daemon worker execution classes
doublemover Mar 23, 2026
f67bc45
Add MCP fast-lane request scheduling
doublemover Mar 23, 2026
4c7bfc3
Make watch consistency state explicit
doublemover Mar 23, 2026
0328be0
Harden API trust-boundary startup policy
doublemover Mar 23, 2026
4d7d2b6
Surface degraded atomic-persistence signals
doublemover Mar 23, 2026
d6b35f5
Split snapshot and diff lock domains
doublemover Mar 24, 2026
73bbe9a
Add SQLite runtime telemetry for WAL pressure
doublemover Mar 24, 2026
80cb7c8
Strengthen LSP fidelity coverage contracts
doublemover Mar 24, 2026
eaf361e
Make document extraction fidelity explicit
doublemover Mar 24, 2026
de9387a
Make context-pack evidence fidelity explicit
doublemover Mar 24, 2026
5273ca9
Make suggest-tests fidelity explicit
doublemover Mar 24, 2026
5b0f641
Harden triage ingest fidelity and ID provenance
doublemover Mar 24, 2026
5802495
Make serving freshness request-boundary aware
doublemover Mar 24, 2026
bea256a
Make retrieval freshness generation-aware
doublemover Mar 24, 2026
6937eb7
Make federated workspace freshness generation-aware
doublemover Mar 24, 2026
f0462ef
Expose queue delivery contracts and duplicate inspection
doublemover Mar 24, 2026
388dbca
Govern daemon session reuse budgets
doublemover Mar 24, 2026
35e5837
Reserve MCP fast-lane capacity under load
doublemover Mar 24, 2026
7463cfb
Persist watch consistency state for status surfaces
doublemover Mar 24, 2026
e0bd225
Harden API trust-boundary startup policy
doublemover Mar 24, 2026
f5ab4fd
Surface degraded atomic durability in status
doublemover Mar 24, 2026
0414fa6
ven
doublemover Mar 24, 2026
eb15ffd
Fix context-pack repo resolution and hidden help topics
doublemover Mar 24, 2026
af2ba17
Fix Windows bare wrapper command resolution
doublemover Mar 25, 2026
8545444
Fix analysis API client error classification
doublemover Mar 25, 2026
7f72e2a
Fix release workflow dependency installs and CI gating
doublemover Mar 25, 2026
3b7a9e0
Add live benchmark canary lane and closure evidence
doublemover Mar 25, 2026
3e27d2b
Capture benchmark environment fingerprints in canary and run artifacts
doublemover Mar 25, 2026
99c9efd
Add benchmark blocker closure evidence tooling
doublemover Mar 25, 2026
b459ee7
Tame sharded chunk_meta write tails
doublemover Mar 25, 2026
342058c
Move bench timeout ownership into stage hints
doublemover Mar 25, 2026
e1cb98a
Capture and quarantine Windows bench crashes
doublemover Mar 25, 2026
be275a6
Turn SourceKit taxonomy into admission policy
doublemover Mar 25, 2026
1b0e066
Execute ready gopls partitions cleanly
doublemover Mar 25, 2026
359e1d7
Reduce Rust toolchain probe false degradation
doublemover Mar 25, 2026
40a162d
Generate ordered test lane manifests
doublemover Mar 26, 2026
516c1e2
Add shared API server cohorts for tests
doublemover Mar 26, 2026
9f88140
Add test stability artifacts and lane governance
doublemover Mar 26, 2026
ae4c157
Consolidate tooling provider state tests into matrices
doublemover Mar 26, 2026
76a885c
Consolidate search and serving contract tests
doublemover Mar 26, 2026
637a1f6
Fix release artifact layout and upload naming
doublemover Mar 26, 2026
37c89c5
Consolidate indexing contract tests into matrices
doublemover Mar 26, 2026
e580f23
Refactor tree-sitter and VFS contract tests
doublemover Mar 26, 2026
43c1cd8
Refresh config inventory docs
doublemover Mar 26, 2026
359ca64
Consolidate embeddings and ANN contract tests
doublemover Mar 26, 2026
38c9bd0
Fix CLI capability metadata and API trust-boundary leaks
doublemover Mar 26, 2026
f486a14
Rationalize artifact and sqlite storage tests
doublemover Mar 26, 2026
a5cf285
Add test suite taxonomy and remove placeholder lane artifact
doublemover Mar 26, 2026
d5bf9ee
Add shared module census and scan ledger
doublemover Mar 26, 2026
1b0aaeb
Review root shared core primitives
doublemover Mar 26, 2026
e2832a7
Review tools shared module surface
doublemover Mar 26, 2026
cce4eae
Stabilize config inventory and idle-timeout tests
doublemover Mar 26, 2026
813dd6b
Fix sqlite incremental search-after-update test scope
doublemover Mar 26, 2026
0339118
Review shared artifact and cache module families
doublemover Mar 26, 2026
8d8ba1a
Review shared concurrency and subprocess families
doublemover Mar 26, 2026
0028a17
Review shared CLI and dispatch module families
doublemover Mar 26, 2026
ed32178
Review shared domain helper families
doublemover Mar 26, 2026
3bde955
Fix symlinked entrypoint execution and CLI help dispatch
doublemover Mar 26, 2026
ed20c39
Scan shared platform and workspace adoption seams
doublemover Mar 26, 2026
c35e96d
Scan shared runtime and server adoption seams
doublemover Mar 26, 2026
45ba48d
Align shared scan artifact schema for runtime scan
doublemover Mar 26, 2026
aeb73bc
Add scan mappings for runtime server adoption artifact
doublemover Mar 26, 2026
49222ea
Scan shared core product adoption seams
doublemover Mar 26, 2026
2301815
Scan shared tooling surface adoption seams
doublemover Mar 26, 2026
cf7e9b8
Scan shared editor and integration adoption seams
doublemover Mar 26, 2026
f801df6
Scan shared test and reporting adoption seams
doublemover Mar 26, 2026
ee83fe4
Create shared repo path and generation helper family
doublemover Mar 26, 2026
3f36969
Create shared command invocation helper family
doublemover Mar 26, 2026
7952a49
Create shared API request helper family
doublemover Mar 26, 2026
f2761bf
Create shared search and risk request helpers
doublemover Mar 26, 2026
a16334f
Create shared JSON file helpers
doublemover Mar 26, 2026
74a4644
Create shared JSON gate harness for tests
doublemover Mar 26, 2026
e4767f4
Create shared progress event helpers
doublemover Mar 26, 2026
c362fc2
Add shared-module architecture guardrails
doublemover Mar 26, 2026
f323436
Add shared-module migration codemod tooling
doublemover Mar 26, 2026
b4860cc
Add shared-module implementation reduction backlog
doublemover Mar 26, 2026
9fa9766
Fix bundle checksum compatibility and help alias handling
doublemover Mar 26, 2026
ff3d8ad
Migrate runtime dict-utils consumers off tools/shared
doublemover Mar 26, 2026
cffc6dc
Hoist repo cache and index-state helpers into src/shared
doublemover Mar 26, 2026
1accc87
Split shared env, runtime-envelope, and auto-policy families
doublemover Mar 26, 2026
af7018c
Split shared metrics and ops root families
doublemover Mar 26, 2026
e03c5ec
Split artifact manifest and loader core helpers
doublemover Mar 26, 2026
2ba9d4b
Fix limits regression and sublime contract path
doublemover Mar 26, 2026
d436294
Split shared IO, cache, and bundle helper families
doublemover Mar 26, 2026
e29eea3
Fix shared dict-utils realpath import
doublemover Mar 26, 2026
b28041b
Fix bundle IO patch helper references
doublemover Mar 26, 2026
bca2137
Refresh config inventory docs
doublemover Mar 26, 2026
9629959
Relocate contract and metadata shared helpers
doublemover Mar 26, 2026
f1edeee
Split runtime lock and subprocess control layers
doublemover Mar 26, 2026
1c4df3d
Split progress and adaptive scheduler internals
doublemover Mar 26, 2026
e9d6a02
Split CLI shared surface modules
doublemover Mar 26, 2026
201792c
Clean up dispatch shared surface
doublemover Mar 26, 2026
c5e7d62
Split embedding and dense-vector shared families
doublemover Mar 26, 2026
a9a9c97
Split shared token, build, timeout, and risk helpers
doublemover Mar 26, 2026
70a5716
Cut over weak tools shared helpers
doublemover Mar 26, 2026
66eb156
Adopt shared entrypoint and runtime helpers
doublemover Mar 26, 2026
b2fd509
Finish shared adoption follow-through for search and report helpers
doublemover Mar 26, 2026
60d48a7
Prune dead shared exports after hard cutovers
doublemover Mar 26, 2026
23ba9ed
Add shared module performance baselines and guard
doublemover Mar 26, 2026
46f577f
Simplify shared import graph hotspots
doublemover Mar 26, 2026
b423867
Normalize generated shared-module surfaces
doublemover Mar 26, 2026
94aac5d
Add direct shared module contract coverage
doublemover Mar 26, 2026
82d08e1
Add shared module cycle detection guard
doublemover Mar 26, 2026
909cf27
Remove obsolete top-level dependencies
doublemover Mar 26, 2026
a2cf509
Add shared module error contract coverage
doublemover Mar 26, 2026
db944b4
Guard H33 support surfaces against stale paths
doublemover Mar 26, 2026
6be3099
fix: restore legacy json fallback reads
doublemover Mar 26, 2026
f1a65ef
fix: stabilize bench runtime tests
doublemover Mar 26, 2026
fcc1081
perf: speed up triage context pack assembly
doublemover Mar 26, 2026
614360c
test: stabilize cli and lsp signature fixtures
doublemover Mar 26, 2026
4410ebc
docs: fix stale shared module links
doublemover Mar 26, 2026
a74a947
docs: refresh config inventory
doublemover Mar 26, 2026
8c37e23
fix: redirect beam crash dumps into test roots
doublemover Mar 26, 2026
88e6dc7
test: move dedicated provider bootstrap matrix to ci
doublemover Mar 26, 2026
48a2bda
fix: normalize analysis request errors across surfaces
doublemover Mar 26, 2026
b3355a0
test: stabilize lsp fixtures and rebalance ci lanes
doublemover Mar 26, 2026
49c4ee1
ven
doublemover Mar 26, 2026
aabf3db
fix: normalize filters and stabilize release checks
doublemover Mar 28, 2026
4e980e0
feat: overhaul search terminal output and debug tooling
doublemover Mar 28, 2026
6c4685b
feat: refine search terminal rendering and review tooling
doublemover Mar 28, 2026
3bf12ed
test: consolidate matrix coverage and lane evidence
doublemover Mar 28, 2026
e7b37a6
test: harden lock and LSP suite races
doublemover Mar 28, 2026
533e314
docs: refresh config inventory
doublemover Mar 28, 2026
c7fbfe2
test: consolidate reduction program capsules
doublemover Mar 28, 2026
abce9b3
fix: preserve incremental artifact manifests and sqlite promotion state
doublemover Mar 29, 2026
efca92b
test: harden smoke, tooling, and retrieval suites under load
doublemover Mar 29, 2026
0729036
test: rebalance ci lanes by measured runtime
doublemover Mar 29, 2026
c618bc9
docs: refresh config inventory
doublemover Mar 29, 2026
e65f7c3
test: complete reduction program consolidation pass
doublemover Mar 29, 2026
b5b18dd
test: rebalance lanes and fix stale coverage targets
doublemover Mar 29, 2026
653e8fe
test: finalize lane cleanup and editor harness alignment
doublemover Mar 29, 2026
2ed8148
test: refresh script coverage action targets
doublemover Mar 29, 2026
3fa2706
fix: restore CLI help and runtime env contracts
doublemover Mar 29, 2026
293ffed
docs: remove stale test and spec references
doublemover Mar 29, 2026
e55f7dc
test: consolidate long-lane storage capsules and stale docs
doublemover Mar 29, 2026
1fde680
test: tighten smoke heroes and reduce long lane
doublemover Mar 30, 2026
3909922
test: narrow sqlite long-lane contracts
doublemover Mar 30, 2026
ca75d96
fix: restore runtime env and clean stale docs
doublemover Mar 30, 2026
2b5fe4b
test: reuse long-lane setup and sort lane order
doublemover Mar 30, 2026
7761ded
fix: align service queue identity and admission policy
doublemover Mar 30, 2026
be67ca5
test: reduce search hotspots and reuse storage setup
doublemover Mar 30, 2026
b305c24
test: shrink storage fail-closed fixtures
doublemover Mar 30, 2026
f6b28ba
test: tighten incremental sqlite storage setup
doublemover Mar 30, 2026
e8193b6
test: shrink indexing long-lane heroes
doublemover Mar 30, 2026
39d5c32
test: reduce remaining ci hotspot fixtures
doublemover Mar 30, 2026
1776e55
test: automate lane governance refresh
doublemover Mar 30, 2026
5ccbdae
test: enforce smoke and stale reference hygiene
doublemover Mar 30, 2026
7a3d526
test: stabilize dart provider session reuse
doublemover Mar 30, 2026
338debb
fix: validate service config before runtime startup
doublemover Mar 30, 2026
5d5c36e
docs: add production readiness workflow and operator guidance
doublemover Mar 30, 2026
e7c6fc9
test: refresh governance artifacts and lane manifests
doublemover Mar 30, 2026
2f63ca5
fix: align MCP risk filter schemas and cleanup guards
doublemover Mar 30, 2026
3760d50
test: harden dart provider process reuse
doublemover Mar 30, 2026
0338fde
fix: align cli wrapper flags and service config coercion
doublemover Mar 30, 2026
ef1e8bb
fix: repair ansi stripping regexes
doublemover Mar 30, 2026
44d1689
fix: preserve resolved tooling commands after degraded preflight
doublemover Mar 30, 2026
7f06254
fix: harden bench provider diagnostics and tooling fallbacks
doublemover Mar 31, 2026
352beed
fix: resolve go workspace preflight through tooling shims
doublemover Mar 31, 2026
cc67bc1
fix: fail open when gopls finds no workspace roots
doublemover Mar 31, 2026
6cb7c51
fix: relax sourcekit mixed-workspace startup policy
doublemover Mar 31, 2026
fa16b31
fix: install and validate managed lua language server
doublemover Mar 31, 2026
8a6b38a
fix: promote broken rust example members to workspace roots
doublemover Mar 31, 2026
0f11c4d
fix: reuse field postings shards for legacy merge
doublemover Mar 31, 2026
adb0789
fix: avoid scm fallback debt after full recovery
doublemover Mar 31, 2026
b7f8e8d
fix: reduce non-actionable bench warning debt
doublemover Mar 31, 2026
2386e29
fix: narrow mixed gopls workspaces by nearest nested root
doublemover Mar 31, 2026
339ff44
ven
doublemover Mar 31, 2026
5e534c2
fix: harden queue persistence and shared artifact safety
doublemover Mar 31, 2026
c9ed8d1
suuuuuuuplies!
doublemover Apr 7, 2026
7a24249
chore: add duplicate audit tooling
doublemover May 22, 2026
162895f
ci: harden release readiness evidence gates
doublemover May 22, 2026
0d79b7b
feat: complete USR schema and matrix guardrails
doublemover May 22, 2026
7e7dbc4
refactor: consolidate shared runtime primitives
doublemover May 22, 2026
d38738d
test: align suites with shared runtime refactors
doublemover May 22, 2026
9875b14
docs: consolidate roadmap and implementation status
doublemover May 22, 2026
b75f9f7
feat: complete roadmap implementation surfaces
doublemover May 22, 2026
2cb445a
chore: keep eslint format out of temp worktrees
doublemover May 22, 2026
d552450
fix: tighten sweet16 bench report contract
doublemover May 22, 2026
6ee59d9
perf: reduce sweet16 cache and file-meta overhead
doublemover May 22, 2026
6dad868
perf: speed cache key builders and sqlite ingest
doublemover May 22, 2026
09dd102
perf: clean sweet16 performance signals
doublemover May 22, 2026
1938552
fix: reject duplicate MCP request ids
doublemover May 23, 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.
52 changes: 41 additions & 11 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -1,14 +1,44 @@
# To get started with Dependabot version updates, you'll need to specify which
# package ecosystems to update and where the package manifests are located.
# Please see the documentation for all configuration options:
# https://docs.github.com/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file

# Automated dependency maintenance for every shipped ecosystem and workflow surface.
version: 2
updates:
# Enable version updates for npm
- package-ecosystem: "npm"
# Look for `package.json` and `lock` files in the `root` directory
directory: "/"
# Check the npm registry for updates every day (weekdays)
- package-ecosystem: 'npm'
directory: '/'
schedule:
interval: 'weekly'
day: 'monday'
time: '06:00'
timezone: 'America/New_York'
open-pull-requests-limit: 10
labels:
- 'dependencies'
- 'npm'
commit-message:
prefix: 'deps'

- package-ecosystem: 'cargo'
directory: '/crates/pairofcleats-tui'
schedule:
interval: 'weekly'
day: 'monday'
time: '06:00'
timezone: 'America/New_York'
open-pull-requests-limit: 10
labels:
- 'dependencies'
- 'cargo'
commit-message:
prefix: 'deps'

- package-ecosystem: 'github-actions'
directory: '/'
schedule:
interval: "daily"
interval: 'weekly'
day: 'monday'
time: '06:00'
timezone: 'America/New_York'
open-pull-requests-limit: 5
labels:
- 'dependencies'
- 'github-actions'
commit-message:
prefix: 'ci'
8 changes: 6 additions & 2 deletions .github/workflows/ci-long.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,9 @@ permissions:
contents: read

on:
push:
tags:
- 'v*'
workflow_dispatch:

concurrency:
Expand Down Expand Up @@ -53,9 +56,9 @@ jobs:
npm run bootstrap:ci
else
echo "node_modules cache hit; verifying native modules."
if ! npm run verify:native; then
if ! node tools/setup/rebuild-native.js --verify; then
echo "native verification failed; running targeted repair:native."
npm run repair:native
node tools/setup/rebuild-native.js --repair
fi
fi
node -v
Expand All @@ -82,4 +85,5 @@ jobs:
.testLogs/**
.diagnostics/**
if-no-files-found: ignore
include-hidden-files: true
compression-level: 0
142 changes: 136 additions & 6 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,9 @@ permissions:
on:
push:
branches: [main]
tags:
- 'v*'
workflow_dispatch:
pull_request:

concurrency:
Expand Down Expand Up @@ -52,6 +55,12 @@ jobs:
- name: Env usage guardrail
run: npm run env:check

- name: Generated surfaces freshness
run: node tools/docs/generated-surfaces.js --check-freshness

- name: Command surface audit
run: node tools/ci/check-command-surface.js

- name: Gate lane
run: |
node tests/run.js --lane gate --allow-timeouts --junit .testLogs/junit-gate.xml --log-dir .testLogs
Expand All @@ -65,8 +74,50 @@ jobs:
.testLogs/**
.diagnostics/**
if-no-files-found: ignore
include-hidden-files: true
compression-level: 0

rust-tui:
name: rust-tui
runs-on: ubuntu-latest
needs: gate
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Setup Rust toolchain
uses: dtolnay/rust-toolchain@stable
with:
toolchain: 1.86.0
components: rustfmt, clippy
Comment thread
doublemover marked this conversation as resolved.

- name: Restore Cargo cache
uses: actions/cache@v4
with:
path: |
~/.cargo/registry
~/.cargo/git
crates/pairofcleats-tui/target
key: cargo-${{ runner.os }}-${{ hashFiles('crates/pairofcleats-tui/Cargo.lock') }}
restore-keys: |
cargo-${{ runner.os }}-

- name: Cargo fmt
working-directory: crates/pairofcleats-tui
run: cargo fmt --check

- name: Cargo check
working-directory: crates/pairofcleats-tui
run: cargo check --locked

- name: Cargo test
working-directory: crates/pairofcleats-tui
run: cargo test --locked

- name: Cargo clippy
working-directory: crates/pairofcleats-tui
run: cargo clippy --locked -- -D warnings

ubuntu:
name: ubuntu
runs-on: ubuntu-latest
Expand Down Expand Up @@ -110,14 +161,25 @@ jobs:
npm run bootstrap:ci
else
echo "node_modules cache hit; verifying native modules."
if ! npm run verify:native; then
if ! node tools/setup/rebuild-native.js --verify; then
echo "native verification failed; running targeted repair:native."
npm run repair:native
node tools/setup/rebuild-native.js --repair
fi
fi
node -v
npm -v

- name: Install optional LSP tools (best effort)
shell: bash
run: |
set +e
node tools/tooling/install.js --scope cache --tools pyright,yaml-language-server,gopls,csharp-ls,solargraph,phpactor --json
status=$?
if [ $status -ne 0 ]; then
echo "optional tooling install had non-fatal failures (continuing)."
fi
exit 0

- name: CI Suite
run: |
node tools/ci/run-suite.js --mode ci --skip-prechecks
Expand All @@ -130,6 +192,21 @@ jobs:
$env:PAIROFCLEATS_CACHE_ROOT = $cacheRoot
node tools/index/cache-gc.js --apply --grace-days 3 --max-deletes 200 --repo .

- name: Upload quality artifacts
if: always()
uses: actions/upload-artifact@v4
with:
name: ci-quality-artifacts-ubuntu
path: |
.diagnostics/test-summary.json
.diagnostics/test-timings.json
.diagnostics/test-profile.json
.diagnostics/coverage/**
.testLogs/junit.xml
if-no-files-found: ignore
include-hidden-files: true
compression-level: 0

- name: Upload test artifacts
if: failure()
uses: actions/upload-artifact@v4
Expand All @@ -139,6 +216,7 @@ jobs:
.testLogs/**
.diagnostics/**
if-no-files-found: ignore
include-hidden-files: true
compression-level: 0

windows:
Expand Down Expand Up @@ -182,20 +260,44 @@ jobs:
npm run bootstrap:ci
} else {
Write-Host 'node_modules cache hit; verifying native modules.'
npm run verify:native
node tools/setup/rebuild-native.js --verify
if ($LASTEXITCODE -ne 0) {
Write-Host 'native verification failed; running targeted repair:native.'
npm run repair:native
node tools/setup/rebuild-native.js --repair
if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }
}
}
node -v
npm -v

- name: Install optional LSP tools (best effort)
shell: pwsh
run: |
node tools/tooling/install.js --scope cache --tools pyright,yaml-language-server,gopls,csharp-ls,solargraph,phpactor --json
if ($LASTEXITCODE -ne 0) {
Write-Host 'optional tooling install had non-fatal failures (continuing).'
}
exit 0

- name: CI Suite
run: |
node tools/ci/run-suite.js --mode ci --skip-prechecks

- name: Upload quality artifacts
if: always()
uses: actions/upload-artifact@v4
with:
name: ci-quality-artifacts-windows
path: |
.diagnostics/test-summary.json
.diagnostics/test-timings.json
.diagnostics/test-profile.json
.diagnostics/coverage/**
.testLogs/junit.xml
if-no-files-found: ignore
include-hidden-files: true
compression-level: 0

- name: Upload test artifacts
if: failure()
uses: actions/upload-artifact@v4
Expand All @@ -205,6 +307,7 @@ jobs:
.testLogs/**
.diagnostics/**
if-no-files-found: ignore
include-hidden-files: true
compression-level: 0

macos:
Expand Down Expand Up @@ -248,18 +351,44 @@ jobs:
npm run bootstrap:ci
else
echo "node_modules cache hit; verifying native modules."
if ! npm run verify:native; then
if ! node tools/setup/rebuild-native.js --verify; then
echo "native verification failed; running targeted repair:native."
npm run repair:native
node tools/setup/rebuild-native.js --repair
fi
fi
node -v
npm -v

- name: Install optional LSP tools (best effort)
shell: bash
run: |
set +e
node tools/tooling/install.js --scope cache --tools pyright,yaml-language-server,gopls,csharp-ls,solargraph,phpactor --json
status=$?
if [ $status -ne 0 ]; then
echo "optional tooling install had non-fatal failures (continuing)."
fi
exit 0

- name: CI Suite
run: |
node tools/ci/run-suite.js --mode ci --skip-prechecks

- name: Upload quality artifacts
if: always()
uses: actions/upload-artifact@v4
with:
name: ci-quality-artifacts-macos
path: |
.diagnostics/test-summary.json
.diagnostics/test-timings.json
.diagnostics/test-profile.json
.diagnostics/coverage/**
.testLogs/junit.xml
if-no-files-found: ignore
include-hidden-files: true
compression-level: 0

- name: Upload test artifacts
if: failure()
uses: actions/upload-artifact@v4
Expand All @@ -269,4 +398,5 @@ jobs:
.testLogs/**
.diagnostics/**
if-no-files-found: ignore
include-hidden-files: true
compression-level: 0
25 changes: 23 additions & 2 deletions .github/workflows/codeql.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,16 @@ on:

jobs:
analyze:
name: CodeQL (javascript)
name: CodeQL (${{ matrix.language }})
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
include:
- language: javascript
build-mode: none
- language: rust
build-mode: autobuild
steps:
- name: Rate limit (nightly)
if: github.event_name == 'schedule'
Expand Down Expand Up @@ -71,8 +79,21 @@ jobs:
if: (github.event_name != 'push' || steps.rate.outputs.skip != 'true') && (github.event_name != 'schedule' || steps.nightly.outputs.skip != 'true')
uses: github/codeql-action/init@v4
with:
languages: javascript
languages: ${{ matrix.language }}
build-mode: ${{ matrix.build-mode }}

- name: Setup Rust toolchain
if: matrix.language == 'rust' && (github.event_name != 'push' || steps.rate.outputs.skip != 'true') && (github.event_name != 'schedule' || steps.nightly.outputs.skip != 'true')
uses: dtolnay/rust-toolchain@stable
with:
toolchain: 1.86.0

- name: Autobuild Rust
if: matrix.language == 'rust' && (github.event_name != 'push' || steps.rate.outputs.skip != 'true') && (github.event_name != 'schedule' || steps.nightly.outputs.skip != 'true')
uses: github/codeql-action/autobuild@v4

- name: Perform CodeQL Analysis
if: (github.event_name != 'push' || steps.rate.outputs.skip != 'true') && (github.event_name != 'schedule' || steps.nightly.outputs.skip != 'true')
uses: github/codeql-action/analyze@v4
with:
category: '/language:${{ matrix.language }}'
Loading