Commit Graph
72 Commits
Author SHA1 Message Date
Eric d5491ff15e [eric] ci: add verify-packaging-parity that pulls every $STAGING_DIR/<x> from build-app.sh and every Join-Path $Staging '<x>' from build-app-win.ps1 then asserts both stage the same set of dirs and that every extraResources from in electron/package.json is staged by both, with webapp-template-node-modules as the one documented mac-only exception 2026-05-28 02:49:22 -07:00
Eric c7a195198a [eric] ci: extend selftest-gate with cross-gate preflight mutation tests so a regression that turns withTimeout into fail-on-hang or readCache into stale-version-passes makes the boot-pipeline gate selftest also go red 2026-05-28 02:49:16 -07:00
Eric 6fc7e23bbe [eric] ci: chain the four new preflight verifiers (selftest, rigs, race, matrix) at the head of verify-all and add hostile-env legs to e2e.yml so network=blocked + appdata=readonly + lang=de-DE all run on every push 2026-05-28 02:13:21 -07:00
Eric 3faacf761c [eric] ci: add verify-preflight Layer 5 matrix verifier that reads OPENSWARM_TEST_NETWORK/_APPDATA/_LANG and asserts the verdict matches the expected envelope per scenario, catching the false-positive class where network=blocked produces fail instead of warn 2026-05-28 02:13:09 -07:00
Eric 051ddf5cd7 [eric] ci: add verify-preflight-race Layer 4 that runs twenty parallel preflights asserting no cache contention, then writes a version-keyed token + corrupts it + asserts the next read returns null so mid-boot kill cannot poison a future boots cached verdict 2026-05-28 02:13:09 -07:00
Eric ddcf2f08df [eric] ci: add verify-preflight-rigs Layer 3 that spins up hanging http, 500 server, close-mid-handshake, EACCES writeFileSync, and a German pwsh stub then drives the WHOLE preflight against each rig asserting the failing-check name + no neighbor corruption + total runtime under budget 2026-05-28 02:13:00 -07:00
Eric 83182b0dfd [eric] ci: add selftest-preflight Layer 1+2 with thirty-eight assertions covering happy paths plus every production failure branch (mips arch, German PowerShell output, statfs throws, dns module missing) and never-resolving fakes for hang fuzz 2026-05-28 02:13:00 -07:00
Eric f9e596160c [eric] ci: chain the five new gates (python-health, mcp-bundles, update-feed, 9router-functional, clean-profile) into verify-all so every leg now exercises bundled-python, mcp init handshake, update feed sha512, router functional routing, and the truly-empty-profile invariant 2026-05-28 01:25:14 -07:00
Eric 485ddaf86d [eric] ci: extend selftest-gate with mutation tests for the new update-feed parser (good yaml passes, missing files[] returns zero) and confirm all twenty-eight discriminators still discriminate 2026-05-28 01:25:08 -07:00
Eric 739d73ac4c [eric] ci: add verify-9router-functional that polls GET :20128/api/providers and asserts 200+JSON so a router that listens on the tcp port but 500s every real request fails red instead of being silently masked by the tcp-only probe in verify-network 2026-05-28 01:25:03 -07:00
Eric f28c9afac9 [eric] ci: add verify-clean-profile (ci-only, gated on CI=true or OPENSWARM_E2E_WIPE=1) that wipes the user data dir, launches, and asserts the app boots+serves+populates backend.log/auth.token from a truly empty profile so first-time-user code paths cant assume prior state 2026-05-28 01:24:56 -07:00
Eric 806b4fba44 [eric] ci: add verify-artifact-manifest that sha256s every file in the packaged dist and either writes a baseline (--write) or diffs against the committed one, catching non-deterministic build steps that survive even fully-pinned dependencies 2026-05-28 01:24:51 -07:00
Eric 0b10fd9ba8 [eric] ci: add verify-update-feed that parses latest.yml/latest-mac*.yml without applying an update, asserts every advertised file exists on disk and its sha512+size match, so a release with a busted feed cant ship an update that bricks on apply 2026-05-28 01:24:45 -07:00
Eric 44233419e4 [eric] ci: add verify-mcp-bundles that spawns each vendored bundle (notion, reddit-buddy, softeria-ms365) under the bundled node and asserts an mcp initialize round-trip so a corrupted esbuild output cant ship green 2026-05-28 01:24:40 -07:00
Eric 41117d6185 [eric] ci: add verify-python-health that execs the bundled interpreter, asserts python 3.13+, and imports the heaviest backend deps so a missing vcredist dll or half-extracted python-env fails the build red instead of giving users a renderer-up-but-backend-dead boot 2026-05-28 01:24:35 -07:00
Eric 32fb3091be [eric] ci: chain deps-pinned and host-leakage first in verify-all so the cheap pure-logic gates fail fast before the build-launch gates spend minutes booting an already-doomed artifact 2026-05-28 00:56:04 -07:00
Eric c5bfc00540 [eric] ci: extend selftest-gate with mutation tests for the new deps-pinned and host-leakage gates so a future weakening of either guard is caught before the build leg runs 2026-05-28 00:55:59 -07:00
Eric d7b7128c6e [eric] ci: add verify-deps-pinned that fails when backend/requirements.txt has any bare-name, floor (>=), or compat (~=) entry since pip would otherwise resolve those to latest-matching and two builds from the same git sha would ship different bytes 2026-05-28 00:55:50 -07:00
Eric 19ca4d81ae [eric] ci: add verify-host-leakage that string-scans the packaged artifact (text files + app.asar) for the build hosts username and home dir, with PEP 610 dist-info metadata auto-allowed since it does not affect runtime 2026-05-28 00:55:45 -07:00
Eric 852b3bb232 [eric] refactor: trim the verifier and mcp comments to one line each per the updated convention 2026-05-27 19:11:12 -07:00
Eric bb6006a896 [eric] test: add a boot-beacon and preflight check and fold it into the run-everything command 2026-05-27 19:11:12 -07:00
Eric aa9d6acb4b [eric] test: add an installer check that observes a real install safely, refuses to clobber it, and has a clean-machine destructive cycle 2026-05-27 19:11:12 -07:00
Eric 92f48db79b [eric] docs: write up the gate red-team - what has teeth and the one auth gap we closed 2026-05-27 19:11:12 -07:00
Eric 8d06c7b7a3 [eric] test: harden the auth check to reject a wrong token, not just a missing one 2026-05-27 19:11:12 -07:00
Eric aa0ace4363 [eric] test: make the boot checks mutation-testable and prove every guard fires on a break 2026-05-27 19:11:11 -07:00
Eric 5a1d0362ef [eric] test: fold the agent-turn check into the run-everything command so it auto-skips unless opted in 2026-05-27 15:41:13 -07:00
Eric 5d8672b9a0 [eric] test: add a check that runs one real agent turn on your own login and proves a genuine reply 2026-05-27 15:41:13 -07:00
Eric 587a7d93d2 [eric] test: add one command that runs every packaged-app check and tallies the score 2026-05-27 15:35:08 -07:00
Eric 993d5391db [eric] test: add a check that auth, 9router, and the update feed are actually wired up 2026-05-27 15:35:08 -07:00
Eric df747893c3 [eric] test: add a check that the app shrugs off a busy port and a double-click 2026-05-27 15:35:08 -07:00
Eric 2ae8bce3d6 [eric] test: add a check that says whether the build is really signed or honestly admits it isnt 2026-05-27 15:35:08 -07:00
Eric 992d075cc0 [eric] test: pull the app-launch plumbing into a shared lib so each check stays tiny 2026-05-27 15:35:08 -07:00
Eric 0531f59fa6 [eric] test: add a script that launches the packaged app and confirms it boots, paints, and serves (no browser automation) 2026-05-27 15:01:22 -07:00
Eric 56282c5080 [eric] build: stop shipping the dead google client id/secret that nothing reads at runtime 2026-05-27 14:40:04 -07:00
Eric b544a9264e [eric] perf: strip type stubs + unix build leftovers from the bundled python so defender frisks fewer files 2026-05-27 13:00:15 -07:00
Eric de599151f2 [eric] docs: move the release runbook, checklist + squirrel plan into docs/ so root stops feeling cluttered 2026-05-27 11:03:43 -07:00
Eric 0b72102adc [eric] build: install python from the lock + slim the bundled stdlib 2026-05-27 10:19:54 -07:00
Eric 237738d928 [eric] build: pin uv + npm ci the builders + add an opt-in squirrel target 2026-05-27 10:19:54 -07:00
Eric c957716e0c [eric] ci: dont call anything latest until both update feeds agree + resolve 2026-05-27 10:19:53 -07:00
Eric 54a7cb96b4 [eric] ci: boot the packaged backend in ci + check its health and agent endpoints 2026-05-27 10:19:53 -07:00
Eric 0d561fa49d [eric] perf: stopwatch the boot + headcount every file we ship 2026-05-27 10:19:53 -07:00
Eric ca5d69301d [eric] app builder: fix windows-built apps failing by always creating the workspace .env (the windows build dropped the .env.example it seeds from) and writing app files as utf-8 (windows cp1252 choked on arrows and chess pieces); stays on 1.1.69 to rebuild only the windows installer 2026-05-26 17:40:51 -07:00
ciregenz a30229bbda [eric] attach: native PDFs on Claude/Gemini/OR, cost calc, meter fix, 9router bypass for image blocks 2026-05-22 23:43:54 -07:00
ciregenz 9001cb8e38 [eric] DMG/EXE slim ~445 MB: drop legacy onboarding videos, per-arch node + lipo-thin uv, electronLanguages=[en], exclude backend/data + uv-bin
from bundle rsync (closes dev auth.token / install_id leak), strip pip + Tcl/Tk + pydoc_data + _pyrepl, both platforms
2026-05-20 01:52:47 -07:00
ciregenz 5d3cfcec2d [eric] Mac publish fixes: NODE_OPTIONS heap + rsync excludes for user-state and template_cache 2026-05-14 01:42:31 -07:00
ciregenz 91508c87b1 [eric] onboarding bug fix and ux op 2026-05-12 22:36:22 -07:00
ciregenz a84aec257b [eric] App Builder uses real React/Vite scaffold + onboarding polish (auto sidebar expand, bigger pill, video crop), onboarding bugs / edgecases 2026-05-11 23:23:59 -07:00
ciregenz 2e2e8c7728 [eric] webapp-template standardization (React + Vite + FastAPI new-app starter) + swarm-debug built-in skill + stale-session recovery 2026-05-11 18:40:27 -07:00
ciregenz 11487456b5 eric] Google OAuth via cloud-proxy + gitleaks CI 2026-05-06 13:28:35 -07:00
ciregenz 8286cc1a5c [eric] delete ~3.6k lines of dead code (old unused agent runtime, ghost fields, orphan scripts). all 660 tests still pass, no functional
change.
2026-05-03 22:39:17 -07:00