Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
43 commits
Select commit Hold shift + click to select a range
54ac2c9
chore(matrix): scaffold install/update matrix harness
dev-punia-altimate May 30, 2026
88eeff2
feat(matrix): aggregator renders install/update matrices + blocking gate
dev-punia-altimate May 30, 2026
b889c8d
test(matrix): cover aggregate CLI files + exit code
dev-punia-altimate May 30, 2026
779dcec
feat(matrix): hermetic dbt-duckdb env setup for the fixture
dev-punia-altimate May 30, 2026
93ff0d8
feat(matrix): in-host activation + dbt-init assertion suite
dev-punia-altimate May 30, 2026
569f7c4
feat(matrix): vscode cell driver (fresh + upgrade install + dbt activ…
dev-punia-altimate May 30, 2026
cc8b08b
feat(matrix): code-server cell adapter emits RESULT_JSON
dev-punia-altimate May 30, 2026
7a971b4
fix(matrix): seed dbt python override + telemetry-off in cell user se…
dev-punia-altimate May 30, 2026
dc14e20
ci(matrix): install/update matrix workflow (PR + daily) with Slack + …
dev-punia-altimate May 30, 2026
0d9fa48
ci(matrix): gate marketplace publish on Install/Update Matrix; set st…
dev-punia-altimate May 30, 2026
c01cdd2
ci(matrix): match multi-segment base branches (** not *) so PR runs t…
dev-punia-altimate May 30, 2026
90003a8
fix(matrix): run editor CLI via shell on Windows (.cmd needs it)
dev-punia-altimate May 30, 2026
f3a79d5
fix(matrix): address final review — gate on empty/corrupt results, OS…
dev-punia-altimate May 30, 2026
f417a55
feat(matrix): data-driven upgrade baselines from live App Insights ve…
dev-punia-altimate May 30, 2026
8de2ae0
feat(matrix): data-driven upgrade baselines via plan job (live App In…
dev-punia-altimate May 30, 2026
3394acf
feat(matrix): dynamic >=90%-user-coverage version set, all 3 OSes per…
dev-punia-altimate May 30, 2026
44cc077
feat(matrix): add Cursor provisioner + cell driver (not yet wired; fo…
dev-punia-altimate May 30, 2026
8919990
ci(matrix): wire non-blocking Cursor fork lane (fresh + representativ…
dev-punia-altimate May 30, 2026
ce7bba2
ci(matrix): use existing SLACK_WEBHOOK_URL secret as fallback for not…
dev-punia-altimate May 30, 2026
c6d8e39
fix(matrix): cursor cell — detached process group + group-kill + hard…
dev-punia-altimate May 30, 2026
13345e8
fix(matrix): cursor cell can't hang — execFileSync timeouts + outer t…
dev-punia-altimate May 30, 2026
88fb4b2
fix(matrix): install Cursor extensions by Open VSX download + unzip (…
dev-punia-altimate May 30, 2026
a0a13b2
diag(matrix): capture Cursor stdout+verbose to a log, scan it for the…
dev-punia-altimate May 30, 2026
18bda1e
fix(matrix): retry flaky marketplace baseline install (3x) + verify i…
dev-punia-altimate May 30, 2026
8f2a54b
feat(matrix): add Windsurf fork lane (reuses cursor-cell.mjs via --ru…
dev-punia-altimate May 30, 2026
7e18bfe
feat(matrix): add Kiro fork lane (reuses cursor-cell.mjs via --runtim…
dev-punia-altimate May 31, 2026
c184202
fix(matrix): retry fork launch once on crash + add local runner script
dev-punia-altimate May 31, 2026
36312ec
fix(matrix): don't double-print the board in run-local.sh (aggregate …
dev-punia-altimate May 31, 2026
27f730f
feat(matrix): parity Docker container — run the FULL matrix (incl. fo…
dev-punia-altimate May 31, 2026
60d5082
fix(matrix): parity Dockerfile — COPY full repo before npm ci (postin…
dev-punia-altimate May 31, 2026
8568137
fix(matrix): parity image needs pytest + real xvfb-run; wrap VSCode l…
dev-punia-altimate May 31, 2026
da7d6cf
fix(matrix): remove Slack notification entirely — was posting to shar…
dev-punia-altimate May 31, 2026
116acbe
fix(matrix): make fork lanes (Cursor/Windsurf/Kiro) run locally under…
dev-punia-altimate May 31, 2026
c161f4f
test(repro): telemetry stack scrubber leaks later secrets (field-erro…
dev-punia-altimate May 31, 2026
426861f
test(repro): reproduce 4 App Insights field-error families as verifie…
dev-punia-altimate May 31, 2026
f3ca770
docs(findings): correct D — extendErrorWithSupportLinks IS a real bug…
dev-punia-altimate May 31, 2026
02a7db2
docs(findings): bug report for 5 reproduced field-error bugs (AI-6873)
dev-punia-altimate Jun 1, 2026
2ae4c7e
docs(findings): scope AI-6873 to the 3 NEW bugs; #3/#4 are existing G…
dev-punia-altimate Jun 1, 2026
bd23dca
feat(matrix): per-version×OS user-impact % on the board + explicit sc…
dev-punia-altimate Jun 5, 2026
65b13ef
feat(matrix): readable board + GITHUB_STEP_SUMMARY render
dev-punia-altimate Jun 5, 2026
a97e4b2
fix(matrix): 4 board bugs found in Codex review
dev-punia-altimate Jun 5, 2026
31ea8d7
fix(matrix): real IDE launcher discovery + honest failure reasons + r…
dev-punia-altimate Jun 8, 2026
1c5b28e
fix(docker-setup): web IDE works out of the box on macOS
dev-punia-altimate Jun 8, 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
31 changes: 29 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -201,8 +201,35 @@ jobs:
retention-days: 14
if-no-files-found: ignore

# Release gate: block marketplace publish until the Install/Update Matrix
# reports green for this tag commit. The matrix workflow (triggered by the
# same tag push) sets the 'Install/Update Matrix' commit status; we poll it.
matrix-gate:
runs-on: ubuntu-latest
if: success() && startsWith(github.ref, 'refs/tags/')
timeout-minutes: 60
steps:
- name: Wait for Install/Update Matrix status on this commit
uses: actions/github-script@v7
with:
script: |
const ref = context.sha;
// Poll up to ~50 min (100 x 30s): the matrix builds 3 platforms +
// runs 12 cells, which on a cold cache can exceed 30 min.
for (let i = 0; i < 100; i++) {
const { data } = await github.rest.repos.getCombinedStatusForRef({
owner: context.repo.owner, repo: context.repo.repo, ref });
const s = data.statuses.find((x) => x.context === 'Install/Update Matrix');
if (s && s.state === 'success') { core.info('Install/Update Matrix green'); return; }
if (s && s.state === 'failure') { core.setFailed('Install/Update Matrix failed — blocking release'); return; }
if (s && s.state === 'error') { core.setFailed('Install/Update Matrix status errored — blocking release'); return; }
core.info('waiting for Install/Update Matrix status...');
await new Promise((r) => setTimeout(r, 30000));
}
core.setFailed('Timed out waiting for Install/Update Matrix status');

release-vsstudio-marketplace:
needs: [build, release-smoke]
needs: [build, release-smoke, matrix-gate]
runs-on: ubuntu-latest
if: success() && startsWith( github.ref, 'refs/tags/')
strategy:
Expand Down Expand Up @@ -256,7 +283,7 @@ jobs:
text: "Tag: ${{ github.ref_name }} release to Visual Studio Marketplace status: ${{ needs.release-vsstudio-marketplace.result == 'success' && 'succeeded' || 'failed' }} :${{ needs.release-vsstudio-marketplace.result == 'success' && 'tada' || 'disappointed' }}:"

release-openvsx-marketplace:
needs: build
needs: [build, matrix-gate]
runs-on: ubuntu-latest
if: success() && startsWith( github.ref, 'refs/tags/')
strategy:
Expand Down
Loading
Loading