Skip to content

release: promote verified develop snapshot 97f6425484 to main#15637

Merged
NubsCarson merged 186 commits into
mainfrom
promote/verified-97f6425484
Jul 9, 2026
Merged

release: promote verified develop snapshot 97f6425484 to main#15637
NubsCarson merged 186 commits into
mainfrom
promote/verified-97f6425484

Conversation

@NubsCarson

@NubsCarson NubsCarson commented Jul 9, 2026

Copy link
Copy Markdown
Member

Promotes verified develop snapshot 97f6425484 to main → prod. Closes the 82-commit gap (prod was on 9ff78abfb).

Carries (highlights)

Migrations (2, additive — migrate-db gate will run + needs reviewer approval)

  • 0173_agent_backup_verification.sql
  • 0174_agent_backup_latest_index.sql
    Both additive (backup verification + index); no destructive/omnibus schema change.

Gate

Standard promote: migrate-db (prod-env reviewer) + full CI. Do not merge until the meaningful lanes are green and migrate-db is approved. QA-gated by [qa-agent]; sign-in matrix (Google/Magic/Passkey/Discord/GitHub) verified live on prod, EVM fix verified on develop.

Evidence

  • before-screenshots
  • after-screenshots
  • N/A - promotion PR metadata and generated-manifest refresh; no backend server was run for this evidence patch
  • N/A - app audit/manual-target artifacts provide rendered UI proof; no browser console/network capture was run in this metadata patch
  • N/A - promotion gate/evidence patch only; no agent prompt/model behavior changed in this commit
  • N/A - no domain data artifact is produced by the promotion gate artifact refresh

Shaw and others added 30 commits July 8, 2026 21:27
Co-authored-by: Shaw <shawgotbags@gmail.com>
Update the docker CI smoke crash scanner so optional plugin resolver skip lines do not fail agent image builds while real top-level package crashes still surface.
Adds mobile-build-smoke build timing budget gates for iOS simulator, iOS full-Bun simulator, and Android cloud-debug builds.
…he 07-04 pin bump (#15575)

Restores the llama.cpp fork pin that includes Kokoro G2P/IPA exports while preserving Gemma4 conversion support.
…he RAM floor (#15576)

Allows the LP3 native agent runtime to bypass the local-agent RAM floor while keeping local-model RAM limits intact.
…d registry

app-core runs vitest with `isolate: false` (maxWorkers:1), so every test file
shares one module registry. Five suites install module-level mocks of shared
modules and re-import them into that registry via `vi.resetModules()` for their
own self-defense, but none clear the registry on teardown. Under isolate:false
those mocked modules persist in the cache after the file finishes and leak into
whichever real-module suite the sequencer happens to run next:

- `ensure-route-min-role` / `database-rows` install a full-replacement
  `@elizaos/shared` mock (no `...actual`), stripping the real
  `normalizeDeploymentTargetConfig` / `normalizeServiceRoutingConfig`
  normalizers — leaking into `first-run-persistence.restart`.
- `auth-pairing-routes` mocks `./auth/sessions` (stubbed `createMachineSession`)
  and `../services/auth-store` — leaking into `auth-pairing-flow`, whose real
  AuthStore mint is then a no-op so `findSession` reads back null.

The victim is non-deterministic because vitest's size-based sequencer order
varies run to run (observed as `auth-pairing-flow:293` and
`first-run-persistence.restart` on different runs of the same tree).

Fix at the correct layer: each mock-heavy suite clears the shared module
registry on teardown (`afterAll(() => vi.resetModules())`) so its mocks cannot
outlive the file. No assertion, status code, or mock behavior is changed. Full
app-core lane is green 3/3 consecutive runs (164 files, 0 fail), each modified
suite passes standalone, and all five polluters + both former victims pass in
one combined run.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
test(app-core): stop mock-heavy suites leaking mocks across the isolate:false registry
Removes the stale mobile null-stub for @elizaos/plugin-aosp-local-inference so Android all-local bundles expose ensureAospLocalInferenceHandlers.
…ico)

Regenerated from packages/app/public/brand/favicons/app-icon-512.png with
the macOS squircle mask; replaces the stale gold Milady art the desktop
bundle was shipping.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…kflow's artifacts

build-android.yml died at gradle :app:copyForkLlamaLib — the task
hard-requires the fused libelizainference.so set for arm64-v8a, and CI
had no staging step (no ~/.eliza, no in-workflow NDK cross-compile).
The fused libs are built by build-llama-ffi-android (green again since
#15565), so stage its latest successful artifacts and export
ELIZA_MTP_ANDROID_LIBDIR{,_X86_64} for gradle. Fails loud with a
pointer at the ffi workflow when no green run exists.

Fixes the build-android half of #15540
The staged fused lib exports the fused-voice ABI, so the elizavoice JNI
wrapper compiles against the omnivoice headers inside the
plugins/plugin-local-inference/native/llama.cpp submodule — which the
workflow never initialized (layer 2 of #15540).
…us-4-8

Both the SDK session and the CLI path hard-defaulted to claude-opus-4-7,
a generation behind the current Opus. Deployments that set
ELIZA_CLI_CLAUDE_MODEL were unaffected; anyone on the bare default was
silently pinned to the older model. Test pins updated; 94/94 green.
…n-device agent

On a sub-12GB device the on-device agent has no local text model
(DeviceRamTierPolicy), so in hybrid mode its @elizaos/plugin-elizacloud must
reach Eliza Cloud (→ Cerebras) for TEXT_LARGE/TEXT_EMBEDDING. The agent runs as
a separate Bun process and ElizaAgentService passed it NO cloud credential, so
plugin-elizacloud booted unauthenticated ('No provider registered for
TEXT_LARGE') and the agent could not generate.

Read the account's Eliza Cloud API key from the CapacitorStorage pref
'eliza:cloud-inference-api-key' (+ optional base URL) and inject it into the
agent process env as ELIZAOS_CLOUD_API_KEY / ELIZAOS_CLOUD_ENABLED. No-op when
the pref is absent (pure-local / not-yet-onboarded), so existing flows are
unchanged.

Proven on a real Light Phone III (6GB, with #15576): pref set → agent restart →
'[CloudAuth] API key validated' → the on-device agent answered 'Say hello in
exactly three words' with 'hello there, friend.' via Cerebras, and its planner
selected the TAKE_PHOTO device action for a camera request. The renderer half —
writing the key to the pref during hybrid onboarding — is the paired follow-up.

Refs #14390, #15539
@claude

claude Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Claude encountered an error —— View job


I'll analyze this and get back to you.

Bypass queued CI per operator instruction.
@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

LifeOps Multi-Tier Benchmark

Suite: smoke — Tiers requested: large,frontier

large — cancelled

frontier — cancelled

Artifacts: lifeops-multi-tier-large-28996441038, lifeops-multi-tier-frontier-28996441038

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

LifeOps Multi-Tier Benchmark

Suite: — Tiers requested:

large — cancelled

frontier — cancelled

Artifacts: lifeops-multi-tier-large-28996654058, lifeops-multi-tier-frontier-28996654058

@claude

claude Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Claude encountered an error —— View job


I'll analyze this and get back to you.

lalalune and others added 6 commits July 9, 2026 01:45
@claude

claude Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Claude encountered an error —— View job


I'll analyze this and get back to you.

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

LifeOps Multi-Tier Benchmark

Suite: smoke — Tiers requested: large,frontier

large — cancelled

frontier — cancelled

Artifacts: lifeops-multi-tier-large-28996844319, lifeops-multi-tier-frontier-28996844319

@claude

claude Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Claude encountered an error —— View job


I'll analyze this and get back to you.

@claude

claude Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Claude encountered an error —— View job


I'll analyze this and get back to you.

@lalalune

lalalune commented Jul 9, 2026

Copy link
Copy Markdown
Member

Promotion branch refresh / local verification update (2026-07-09)

Merged latest origin/develop into promote/verified-97f6425484 and pushed head b92700fd707657f724e5b7228f5c7c1fadd4d1d0 so this PR is no longer testing against a stale develop snapshot.

Local checks run on the updated head:

bun test packages/app/test/native-module-stub-plugin.test.ts
PASS: 2 tests

bun test packages/scripts/__tests__/mvp-board-readiness.test.ts
PASS: 11 tests

bun test packages/cloud/shared/src/lib/services/__tests__/content-safety.test.ts
PASS: 6 tests

bun run --cwd packages/ui test:home-locale-e2e
PASS: en-US/de-DE locale assertions, screenshots generated

node packages/ui/src/components/chat/widgets/__e2e__/run-wallet-widget-e2e.mjs
PASS: default BTC/SOL/ETH rows; held ETH/SOL/USDC ordering; no holding values leaked

bun run --cwd packages/ui test:widget-cert-e2e
RAN: evidence generated; existing demo-buttons tap-target findings remain by design in the certification fixture

Visual/OCR/color evidence was also run locally against the generated screenshots via:

node packages/app/scripts/mvp-visual-verify.mjs --input packages/app/aesthetic-audit-output/promotion-local --viewport desktop

Summary:

states: 5
OCR engine: tesseract.js package
expectation failures: 1
new baselines: 5

Manual screenshot review:

  • home-en-US: 12-hour time with PM, Fahrenheit weather, no visible overlap.
  • home-de-DE: 24-hour time and Celsius weather, no visible overlap.
  • wallet-default: BTC/SOL/ETH price rows only.
  • wallet-held: ETH/SOL/USDC ordered by holding value; displayed numbers are token prices, not holdings.
  • widget-cert-chromium: verifier flags blue-heavy palette and the runner reports known sub-44px demo button findings; this is the certification fixture proving the detector, not a promotion blocker by itself.

The GitHub checks for the new head are still queued/running. I will inspect any completed failures once Actions reports them.

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

LifeOps Multi-Tier Benchmark

Suite: smoke — Tiers requested: large,frontier

large — cancelled

frontier — cancelled

Artifacts: lifeops-multi-tier-large-28997305637, lifeops-multi-tier-frontier-28997305637

@NubsCarson NubsCarson merged commit 0689b38 into main Jul 9, 2026
85 of 99 checks passed
@NubsCarson NubsCarson deleted the promote/verified-97f6425484 branch July 9, 2026 06:07
@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

LifeOps Multi-Tier Benchmark

Suite: smoke — Tiers requested: large,frontier

large

LifeOps Multi-Tier Benchmark

Tier: large
Suite: smoke

frontier

LifeOps Multi-Tier Benchmark

Tier: frontier
Suite: smoke

Artifacts: lifeops-multi-tier-large-28997544388, lifeops-multi-tier-frontier-28997544388

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

LifeOps Benchmark — eliza

Run ID: lifeops-eliza-28997544344

LifeOps Benchmark

Model: gemma-4-31b
Judge: claude-opus-4-7
Scenarios: 25
pass@1: 0.080
pass@k: 0.080
Total cost: $0.0000

Full artifacts: see the lifeops-run-eliza-28997544344 upload on this run.

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

LifeOps Benchmark — hermes

Run ID: lifeops-hermes-28997544344

LifeOps Benchmark

Model: gemma-4-31b
Judge: claude-opus-4-7
Scenarios: 25
pass@1: 0.240
pass@k: 0.240
Total cost: $0.0000

Full artifacts: see the lifeops-run-hermes-28997544344 upload on this run.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Development

Successfully merging this pull request may close these issues.

3 participants