merge: integrate v4.7.11 release history#230
Merged
Merged
Conversation
Fresh installs seed current model aliases, but upgraded DBs kept agent rows pointing at claude-sonnet-4-20250514 / claude-opus-4-20250514 from old seeds, and the shared MODEL_MAP still hardcoded the same dated ids. V59 rewrites only those exact known-stale ids to the current aliases (a valid model the user picked on purpose is never touched) and the shared shorthand maps now resolve to claude-sonnet-4-6 / claude-opus-4-8.
A disabled or invalid ANTHROPIC_API_KEY inherited from the shell made the operator loop throw, and the catch quietly fell back to the tool-less CLI answer — ARIA lost every tool with no explanation. The fallback now detects auth rejections (401/403/authentication_error), names which credential failed (stored key vs shell env, mirroring the loop's stored-first precedence), and prepends an actionable notice to the degraded reply. Key values never appear in messages or logs.
CLAUDE_MODEL_IDS in packages/shared is now the canonical id set; MODEL_MAP, resolveModelName, the desktop provider maps (ClaudeRouter/ClaudeProvider), ClaudeAgentService defaults, and the Agent Launcher / Agent Station pickers all derive from it, so a model bump is a one-line change. Station picker drops the superseded claude-sonnet-4-5 option.
V60 companion to the V59 agent refresh: agent_station_configs rows only ever hold values the station picker offered, so claude-opus-4-20250514 and claude-sonnet-4-5 there are DAEMON-originated and safe to remap to the current aliases. Non-Claude rows (gpt-*) pass through untouched. Migration targets now reference CLAUDE_MODEL_IDS so they cannot drift from the canonical set.
Follow-up to the rejected-key notice: instead of prepending the warning to the reply text, emit a dedicated 'notice' transcript event rendered as an amber-lined banner (5px dot language) above the turn, persist it in message metadata so it survives history reloads, and log only the key SOURCE (stored vs shell env) — key values never reach logs or the transcript.
MigrationRunner drives the FULL runMigrations chain against node:sqlite (real SQL engine, no Electron-ABI binding needed): fresh installs seed only sanctioned model IDs, a simulated pre-V59 install gets its agent and station rows remapped, re-running is a no-op, and every refresh-map target is proven to be a canonical CLAUDE_MODEL_IDS value. AriaAuthNotice exercises sendMessage end to end with the real claudeAuth classifier: warn banner names the failing key source, reply text stays clean, metadata survives reloads, GLM turns and network errors never blame the Anthropic key.
… from ARIA Adds an end-to-end game-build flow: a phaser-solana-game project template, ARIA tools to orchestrate it, and the connective tissue to run and merge the result. - ProjectStarter: new self-contained Phaser + TS game template (Starfall ported into gameTemplateFiles.ts) with git-init on scaffold so a fresh project can host a swarm, plus auto dev-server + in-app preview (generalized from the meme path). - WorktreeService.mergeLane: commit a finished lane's work and merge --no-ff into the base branch; done-only guard. Re-exported from SwarmOrchestrator. - ARIA gameStudio tools: scaffold_game, run_dev_server, preview_app, swarm_merge_lane, deploy_app. run_dev_server runs only a discovered dev script (CheckRunnerService.discoverDevScript), never a raw command. - uiEffects open_preview / start_dev_server / open_scaffold, with a scaffoldPreset handoff so scaffold_game preloads the wizard. - ARIA system prompt gains a build-a-game playbook (two-message choreography: launch the swarm and return, then merge/preview/deploy). Test: ProjectStarter.runtime asserts the game template's structure; game template gets an .env.example to keep the universal-files invariant. Gate loop green (typecheck + 1064 tests + build). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…erministically Two bugs surfaced on the first live run of the build-a-game flow: - scaffold_game switched the active project mid-turn, which starts a fresh per-project ARIA session and discarded the pending swarm approval card. Make scaffold_game the last action of its turn and split the flow into explicit turns (scaffold, then build in the new project's session). Updated the tool summary and the ARIA build-a-game playbook accordingly. - The scaffold's initial git commit was chained inside the shell startup command (PowerShell ';' continues past failures), so git init could run while the commit silently did not, leaving an unborn HEAD a swarm can't branch from. Add a deterministic git:init-commit IPC (init + add -A + commit, idempotent) and call it from the scaffold handler right after files are written; drop the git step from buildGameStartupCommand. Gate loop green (typecheck + 1110 tests). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- bundle docs knowledge synced from docs.robinhood.com/chain (17 sections) - canonical token registry: WETH, USDG, 20 stock tokens, 5 ETFs - new tools: rh_chain_info, rh_chain_knowledge, rh_stock_tokens, rh_chain_rpc - fetch-based JSON-RPC reader against the public endpoints, no signing
Ship DAEMON Lite as a separate, small Windows download (~106MB) that is just the ARIA chatbox: paste one BYOK key and chat, no editor, terminal, or project system. Its own installer (com.daemon.lite), appId, and userData so it coexists with the full app. Built from one repo via a second Vite config and a module-swap plugin that redirects toolCatalog/contextAssembler/ProService/EmailTools/ forensics to .lite variants, keeping the heavy Solana/Monaco SDKs out of the Lite bundle. A computed dependency whitelist plus check-lite-deps gate the installer under 110MB and ban heavy SDKs from re-entering. Phase 0 seams keep the full app green: ariaHost port decouples the ARIA runtime from the IDE stores (IDE installs ideAriaHost, Lite a null-project host), and secure-key + planning tools are extracted to shared modules. v1.1 adds DAEMON-focused tools behind the same approval gate: - Wallet: read-only balance/holdings watch, optional wallet create - Trade: token search, watchlist, typed-confirm swaps through ARIA (capped) - Scanner: one-shot forensics rug check with an IDE upsell - Pop-out browser: main-process WebContentsView, https/loopback only, no guest preload Rename the in-IDE free tier display copy from "Light" to "Free" so the standalone app owns the Lite name. Note: shared preload/type surfaces also carry this branch's in-flight autopilot arm-review declarations; the Lite build and full test suite (1,186 tests) are green with them.
* fix: restore signed Apple Silicon releases * test: run macOS workbench smoke --------- Co-authored-by: nullxnothing <nullxnothing@users.noreply.github.com>
Co-authored-by: nullxnothing <nullxnothing@users.noreply.github.com>
Co-authored-by: nullxnothing <nullxnothing@users.noreply.github.com>
Co-authored-by: nullxnothing <nullxnothing@users.noreply.github.com>
Co-authored-by: nullxnothing <nullxnothing@users.noreply.github.com>
Co-authored-by: nullxnothing <nullxnothing@users.noreply.github.com>
Co-authored-by: nullxnothing <nullxnothing@users.noreply.github.com>
Co-authored-by: nullxnothing <nullxnothing@users.noreply.github.com>
Co-authored-by: nullxnothing <nullxnothing@users.noreply.github.com>
# Conflicts: # electron/db/migrations.ts # package.json # test/services/MigrationRunner.test.ts
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Integrates the published v4.7.11 release line into main without rewriting the tag. The integration merge preserves both v4.7.11 and current main ancestry, retains migrations V58-V60, appends receipts migration V61, and keeps package version 4.7.11. Verified with typecheck, 1,211 tests, standard and Lite builds, Lite dependency/package gate, packaged app smoke, packaged workbench smoke, independent review, and gitleaks.