Repository navigation
Description
Release: 0.8.0.
Owner: Codex, assigned by Anders on 11 Oct; Anders owns released Mac/Linux/Jetson acceptance after alpha.15.
Goal
SmolLM2 135M and Qwen2.5 1.5B work stably on Mac, Linux and Jetson: Get a signed model in Marketplace, use it in Assistant, switch and stop it, and keep it across restart and update. Prompts and replies stay on the device. Runtime decides which model fits a device and explains a refusal plainly.
Done means
Release acceptance: Each exposed feature works clearly from start to end, including recovery. Keep unfinished or confusing features hidden until their complete journey passes. Hiding a feature does not complete its task; source checks alone do not establish installed acceptance.
- Marketplace Get leads directly to Assistant use. Model switching and Stop work without a Home restart. Test: Get SmolLM2 → Open in Assistant → reply. Pick Qwen and reply. Press Stop once during a long reply and see 'Stopped.' Then Get and reply again without restarting Home.
- Runtime enforces memory limits and exclusive local execution within the documented installation boundary. Test: PR Local AI for 0.8.0: reliable Stop and switch, engine updates keep models, plain refusals, bounded journals (#84) #348 CI source-home-linux shows
finite_1gib_refusalandfinite_4gib_lifecyclepassed. - An established Home keeps its chats, draft, selection and retained models across offline use, restart and a supported update. Test: with a model kept and selected, a saved chat and an unsent draft: restart Home, reply with the network off, then update in System. Everything stays and a reply still works. alpha.22 PASS
- SmolLM2 and Qwen2.5 1.5B reply through Assistant on Mac, Linux and Jetson, or the device explains a capacity refusal. Test: fresh install on Mac, Linux x86, Linux ARM and Jetson. Get SmolLM2, then Qwen2.5 1.5B. Send 'Say hello in one sentence.' Record the reply or the exact refusal text.
- Final update acceptance comes from UP-07 (UP-07: Accept updates on Mac, Linux and Jetson #113).
Model packages are published separately from Runtime releases (#236, #242). Hosted models and remote inference are after 0.8.0.
Remaining
alpha.15 runs on Linux x86, Linux ARM and Jetson→ superseded by later installed runs: alpha.22 update keeps models, alpha.23 ARM64/amd64 11/11, alpha.24 Linux.LA-04: Bound memory and local execution #98 memory bound (page-cache fix in alpha.15)→ moved to After 0.8.0 (LA-04: Bound memory and local execution #98 is in that milestone)LA-07: Make model state and recovery clear #101 plain refusal reasons→ moved to After 0.8.0 (LA-07: Make model state and recovery clear #101 is in that milestone)LA-08: Preserve model state through catalogue and Runtime updates #102 model state across updates→ moved to After 0.8.0 (LA-08: Preserve model state through catalogue and Runtime updates #102 is in that milestone)LA-06: Activate and switch without restarting Home #100: on alpha.15 ARM and Jetson, Stop leaves the run unsettled and the next Get says 'Model service unavailable' (on Jetson even after restart). Fix is Local AI for 0.8.0: reliable Stop and switch, engine updates keep models, plain refusals, bounded journals (#84) #348 item 1.→ moved to After 0.8.0 (LA-06: Activate and switch without restarting Home #100 is in that milestone)- Moved to 0.8.1: 0.8.1: Jetson model Get is slow and replies use the CPU only #365 (Jetson on alpha.15: Get runs at 0.44–0.55 MB/s, Qwen 43 min, and inference uses the CPU only). Known issue in the 0.8.0 release notes.
Assistant: full screen hides Home, and a missing model gives no hint #331: on alpha.15 ARM, Assistant shows 'No model' with no hint during Get. The Mac black screen is not yet rechecked.→ moved to After 0.8.0 (Assistant: full screen hides Home, and a missing model gives no hint #331 is in that milestone)- 'Preparation failed.' after resuming an interrupted Get still happens on alpha.15 ARM and Jetson (Jetson restarts from 0 B); Local AI for 0.8.0: reliable Stop and switch, engine updates keep models, plain refusals, bounded journals (#84) #348 item 3 gives the plain cause.
- Jetson reports "Storage capacity is unavailable." with 16 GB free; the 11 Oct source audit identifies storage-service shutdown during download. Item 3 fixes the cause report. Not seen on Jetson alpha.15.
- Moved to 0.8.1: 0.8.1: Mac model Get fails on a slow link #366 (Mac on a slow link: Get fails with 'Model content could not be read'). Known issue in the 0.8.0 release notes.
Deferred to after 0.8.0: #85 (hosted AI), #99 (provider confinement), #104 (Qwen3.5 qualification), #105 (production model publication; scope is SmolLM2 and Qwen2.5 1.5B).
Code work left (audit of develop 291dd04, 11 Oct)
Causes found for two Remaining items: "Storage capacity is unavailable." with 16 GB free comes from stopping Home during a download (the storage service stops first and its failure is recorded as a capacity failure). "Preparation failed." after resume is restart cleanup of a killed download that keeps the part but gives no reason; Retry resumes correctly.
For 0.8.0, in order of user impact. Checked rows have source regression proof. Item 5 remains open for owner journal recovery after adversarial review. Item 7 has a tested CI harness and still needs its hosted installed run:
- Stop and activation: a local Stop confirms the engine stopped, so later Get, activation and Remove are not blocked by an "unknown" run; pending models re-activate after idle stop or run end; activation failure is reported (LA-06: Activate and switch without restarting Home #100). Tests:
local_llama_stop_confirms_closure_and_unblocks_offer_refresh;pending_model_status_retries_activation_without_repreparing_content. - Engine replacement: an update that changes the engine keeps the saved model working (rebuild activation, map the saved CID to the current offer), with a regression test (LA-08: Preserve model state through catalogue and Runtime updates #102). Tests:
model_startup_binding_rebuilds_only_verified_engine_successors;restored CID uses its current engine offer and preserves historical runs, inactive chats and drafts. - Plain refusal reasons: interrupted download, stopped storage service (not "capacity"), memory and cache budget refusals, activation failure (LA-07: Make model state and recovery clear #101). Tests:
model_preparation_capacity_owner_distinguishes_space_and_service;model_preparation_resumes_after_a_restart_from_the_bytes_on_disk;model_preparation_budget_causes_refuse_before_effects_and_recover. - Device fit before Get: Marketplace says whether the model fits this device's memory. Tests:
model_catalog_device_fit_is_a_signed_row_fact_with_safe_refusals;model_get_device_refusal_starts_no_worker_or_storage_calls. Run journal bounds (count and size), useful owner recovery and fail-closed memory check on unreadable cgroup files (LA-04: Bound memory and local execution #98). Passing bounds tests:→ moved to After 0.8.0: owner recovery from old journals is not implemented (LA-07: Make model state and recovery clear #101); bounds tests already pass.unreadable_root_and_required_ancestor_files_refuse;census_bounds_entries_and_aggregate_before_any_decode_or_prune. Owner recovery from retained uncertain history and legacy over-limit journals remains open under LA-07: Make model state and recovery clear #101 (lesson 195).- Replayed old request IDs are refused safely (LA-07: Make model state and recovery clear #101). Tests:
retained_request_precedes_freshness_floor_policy_and_unrelated_pruning;pruned_floor_survives_restart_and_refuses_clock_rollback_replay. - Installed CI proof: 1 GiB refusal and 4 GiB lifecycle. Source fixture:
test_finite_cleanup_needs_whole_exit_reap_empty_unit_and_finished_observer, plus 17 other finite-memory fault fixtures (18 total). Installed Linux x86-64 CI receipts now pass bothfinite_1gib_refusalandfinite_4gib_lifecycle: validated journey and summary, receipt bundle. The rawcore-summary.jsonand individual installed-journeys receipts were inspected. This is the installed CI fixture proof; final signed-candidate and Mac/Jetson acceptance remain separate. - One engine per machine across Runtime data roots: document the boundary (LA-04: Bound memory and local execution #98). Test:
model_host_lock_is_data_root_scoped. One provider owns one engine; separate data roots own separate locks. Supported operation uses one active Home per device; account-global coordination follows under LA-05: Enforce Linux model process isolation #99.
After 0.8.0: content-only Get/Keep beyond execution capacity (#100) and a catalogue path separate from Runtime releases (#102, #105).
Acceptance record
- Candidate: see 0.8.0: Release 0.8.0 #93.
- Exercised checks: focused CI/setup regressions passed 3/3; adjacent model-repair/timing fixtures passed 9/9 and source-upstream consumers passed 9/9. Product-data passed 99/99 with zero skips. Shell syntax, diff, workspace, chain-provider and model-provider formats pass. The new Rust tests cover hosted Unknown followed by local use, hosted/mixed addition refusal, 1.5-second polling with bounded retry and verified stamp reuse, a waiting Reserved Get, changed-file verification, reboot-reused PID recovery, held-writer recovery and oversized archive locking. The focused exact-4096 provider library check finished with exit 101 at 12:08 UTC13Oct: E0559 at
state.rs:6269, where the new hosted-Unknown test suppliesbackend_reporttoDispatchResult::Terminal, which has no such field. Zero tests executed. The later process, server preparation and setup stages stayed unrun. The same fixture and enum exist in train 04016; lesson435 records this compile failure and the source review gap. The official exact-head 4096 precheck retry passed at 07:21 UTC13Oct, with actual PASS in its final verdict and the exact-head precheck record. The first attempt returned NO VERDICT due model capacity; lesson413 retains that separate check failure. Reuse the admitted PASS while HEAD remains unchanged. The premortem checks retained all baseline test names and original 93 policy checks, explicit platform cases, production callers and target sets, real module fixtures, and fd/device/inode ownership. Prior cc1 and a81d checks remain ancestor evidence. - Reviews: Anders's independent Claude FAIL at cc1 identified five P2 findings, with Stop itself correct. The hosted Unknown correction is in
c022ad04b; retry/cache/Reserved correction ine300ada67; abandoned transaction recovery in4096a19f7; required workflow journey/summary in511e18b66; early qualified-bundle setup guidance in2b4d22616. Independent development source review passes for each corrected scope, carried to the prepared head through unchanged reviewed bytes. Provider peer review also fixed the overbroad hosted exemption and the oversized archive writer-lock gap in the same round. Review lessons395-399 and406-407 record these misses. Source review grants no Rust test or installed acceptance. OMP owns the current train adversarial review. - Installed release evidence: the exact cc1 Ubuntu24/systemd model-repair command exited 0. The complete bounded raw packet passed independent custody, artifact and result checks: all 10 installed and 5 UI results passed. A visible reply followed by one Stop settled as known
cancelledand closed the engine. The distinct real Qwen model became ready and replied before any Home restart; the old journal outcome stayed cancelled. After a forced Home exit during Get, Retry retained 15,138,816 weight bytes, began the remaining read at that offset and reached the pinned full Qwen hash. The four normal owner-stop/startup regressions provide separate source proof. The reviewers viewed all 11 model and 2 Home screenshots. Desktop Stop, Qwen reply and Retry media pass; Qwen phone capture has a sidebar overlay, so phone media acceptance stays open. Built, installed and actual process hashes agree. The earlier a81d navigation failure packet stays private. Earlier amd64 qualification gave a real reply with libgomp1 absent and all 8 engine/20 capsule ELF audits passed. Released Jetson and hosted finite evidence retain separate scope; item7 stays open. - Remaining gate: box 5 (UP-07: Accept updates on Mac, Linux and Jetson #113); Jetson Get on the last alpha for the two open Remaining rows (status); Jetson Qwen re-measure (#93).
- Next owner: OMP owns train publication, correction, Mac gate, dispatched CI and integration. Anders froze
feat/84-local-ai-080and assigned Codex a separate model-picker investigation from train 04016. The integrator owns shared tools and reclaim; Anders owns released-device acceptance.
Released-device run procedure
Anders owns these runs on Mac, Linux x86-64 and the actual Jetson on the last alpha. Record results in this issue. Keep raw logs, private screenshots, operator paths and credentials in the existing private evidence store. Installed CI and released-device acceptance have separate results.
-
Bind the release and installation. Confirm that the published release includes the accepted Local AI changes. Record the release version, signed release/head CIDs, source commit/tree, platform, physical memory, effective memory limit and free disk space. Verify the installed and running Runtime, model-provider, Assistant and Marketplace hashes against the release. Use the actual installed Runtime for version and Home status. Run one active Home per device. A fresh installed Home must prove on-demand acquisition of the release's verified engine; CI starts with a verified engine prerequisite and supplies separate evidence.
-
Check the signed models in a fresh receiving Home. Open Assistant before Get: expect “Get a model to start. Models run on this Home.” and the
Get a modelaction. Open Marketplace → Models → Technical details. Expect “Runtime verified the catalog publisher signature”, the publisher and complete Content ID. Record the actual signed catalogue/head and model CIDs. Current source packages are SmolLM2 135M Instruct Q8_0 (bafybeiew3vuq32fvuz2kmps7lmgl4rxpvwsvklxykx4covogbrkhgy5qky) and Qwen2.5 1.5B Instruct Q4_K_M (bafybeievyi6xp5b62qkuh65ywkd72medhx6uxrmik2fhnr3aameeqnxvwe). A published successor needs its verified identity recorded explicitly. -
Get, time and reply with each model. Use normal Marketplace Get from the separate publisher/holder. Start a monotonic timer at the deliberate Get click; stop when “Available on this device” and enabled
Open in Assistantappear. Record model payload bytes, elapsed seconds, progress, any read failure and separate download/setup intervals. Open in Assistant, confirm the model, send “Say hello in one sentence.” and retain the visible reply plus matching completed Runtime run. Repeat for Qwen. A capable device needs an actual Qwen reply; a capacity refusal proves only its refusal row. On Mac, open Assistant during Get and check usable content and a visible return to Home; record black-screen or navigation failures under Assistant: full screen hides Home, and a missing model gives no hint #331. -
Compare the Jetson SmolLM2 Get with 430 seconds. Use a fresh isolated receiving Home with neither admitted model bytes nor cached package/Kubo blocks. Preserve existing Homes and caches. Record network/holder conditions, OS cache warmth and whether the engine was already installed. Report
tseconds,t - 430seconds and(t - 430) / 430 × 100%; keep resumed/cached and engine-acquisition measurements separate. Verify the alpha.14 receipt used the same timing boundaries before treating the comparison as a speed result. The 430-second baseline remains the reference; the new elapsed result is pending this real run. -
Stop, switch and release the engine. Start a bounded long reply, select the other model, and verify that the current run keeps its original identity. Press Stop once; wait for the confirmed cancelled outcome and “Stopped.” Send with the other model and obtain its reply or measured capacity refusal. Also Get the second model while a reply is active, keep the active run intact, then confirm pending activation completes after settlement. Check a competing reply displays “Model is busy.” Record engine PID/birth identity, closure before replacement and one active local engine. After 60 seconds without requests, observe engine closure and confirm another reply starts it again.
-
Recover a partial Get. In the isolated test Home, stop Home normally during download and retain the completed-byte observation. Restart, inspect the cause, then Retry. Confirm verified saved bytes resume and Get completes. Test Cancel preparation separately: cancellation has a separate retention result. Exercise storage interruption, failed shutdown, corruption and imposed memory/cache limits only in the owner's isolated fixture. Verify the cause, next action, retained model/chat/draft and usable return to Home.
-
Restart with retained Qwen. Set and read back
Keep on this devicein System → Models. Save a harmless chat, an unsent draft and selected model. With both models retained, stop and cold-start Home. Observe Runtime and child memory for the first 60 seconds, including the prior 15-second failure window; record Linux OOM counter changes where available. Confirm stable startup, preserved model hashes/Keep/selection/chat/draft and another reply from each model or its measured capacity refusal. -
Use retained content offline. Deny the receiving device's external routes while preserving localhost; keep the publisher online. Sign in, reply from retained models, cold-restart and reply again. Observe zero model-fetch and hosted-inference traffic at the Runtime/provider boundary. Record unavailable new-content Get as a separate result.
-
Prove the update that keeps models. Use an established alpha.15 Home with already downloaded models for the 15→16 hop. Record its signed head, model hashes, Keep choices, selection, chat and draft before update. Update through System with normal passkey approval. Verify the new installed/running hashes, then repeat restart, both replies, switch and Stop. Model bytes and saved state must survive. Link this row to LA-08: Preserve model state through catalogue and Runtime updates #102/LA-09: Verify the local model journey on all targets #103/UP-07: Accept updates on Mac, Linux and Jetson #113. Fresh install and update have separate receipts. UP-07: Accept updates on Mac, Linux and Jetson #113's two Mac update runs, Wi-Fi-off run and fresh-installer repetition remain open until Anders records them.
Refusal and recovery text to verify
| Cause | Expected visible text |
|---|---|
| Signed minimum exceeds device capacity | “This device has less memory than this model requires. Choose a smaller model.” Get is disabled. |
| Required memory observation unavailable | “This Home could not check the device memory. Ask the Home owner to check the memory limits, then try again.” |
| Insufficient free memory at Assistant Send | “Model run failed: Not enough free memory for this model. Close other apps or choose a smaller model.” |
| Competing reply | “Model is busy.” |
| Interrupted download | “The download stopped before it finished. Retry.” |
| Stopped storage service | “The storage service is unavailable. Retry when it is running.” |
| Disk shortage | “Not enough free disk space for this model. Free some space, then Retry.” |
| Cache budget | “This model does not fit the local cache budget. Remove an unneeded model, choose a smaller model, or increase the budget, then Retry.” |
| Model memory budget | “This model exceeds the local model memory budget. Choose a smaller model or increase the budget, then Retry.” |
| Content read failure | “Preparation failed. Model content could not be read.” |
| Activation failure | “Local AI could not start. The model stays on this device. Retry.” |
| Expired request | “This request is no longer valid. Check your device's clock, then try again.” |
Qwen's signed minimum is 2048 MiB; its description asks for about 3 GB free. Runtime separately checks weights, context, scratch and Home headroom at engine start. With each refusal, record the observed memory facts, cause code and engine-spawn evidence; Home remains usable and retained content, chats and drafts stay intact.
Receipt and retention requirements
Run the accepted source's scripts/installed-provider-verify.sh --require-verified model-provider with ELASTOS_DATA_DIR set to the intended installed data directory. Check the engine and libraries against their .elastos-engine.json entry hashes separately. Bind catalogue trust, complete model CID/payload hashes, UI/run identity, built/installed/running artifact hashes, memory/OOM evidence, restart/update state and final process cleanup. Stop each isolated Home and its owned children at test end; keep its data until the owner records its retention decision.
Activity
andersalm commentedon Sep 29, 2026
Deferred product research retained from the old notes: after the current local-model journey passes, consider one selected-document task with a cited answer, approved save, reopen, export and restore. Treat instructions inside documents as content rather than permission. A compatible model/service replacement should preserve work and access decisions. This remains later research, outside the current 0.7.1 gate.
29 remaining items
andersalm commentedon Oct 14, 2026
RC 0.8.0-alpha.16, Jetson (fresh RC Home, Anders): Qwen 2.5 1.5B Get completed; first reply 22 s, second 3.6 s. Mac (24 GB): Qwen Get stopped twice at 64/67 MB, Retry resumed and completed; reply works once memory pressure is normal (refusal under pressure was correct, #379).
andersalm commentedon Oct 15, 2026
RC 0.8.0-alpha.17 (source 37df2f6), fresh install, Linux x86_64 + ARM64 Namespace boxes: PASS. SmolLM2 Get 160 s / 157 s, first reply 1.6 s / 2.6 s; Delete asks in the row ("Delete this message? Cancel Delete") and removes it; a 2.5k/4.9k-char reply ends at y=760 above the composer (top 810). Browser is not installed on Linux ("not available on this computer yet"), so Browser Settings was checked on neither box.
Observed: a reply just streamed has no Delete icon until the chat re-renders (user row has it); on one ARM run, Assistant showed "No model" 10 s into the SmolLM2 Get, whereas the other runs showed "downloading (12-15%)" (#331).
andersalm commentedon Oct 15, 2026
Ticked with proof (audit 15 Oct): box 1, Get, use, switch and Stop without a restart pass on alpha.16 Linux x86/ARM (6169389408); box 2, develop CI job 116595929400 at 5b60f67, whose summary fails unless finite_1gib_refusal and finite_4gib_lifecycle pass (ci-installed-journeys.sh:111-119); box 4, SmolLM2/Qwen replies on Linux x86/ARM, Mac and Jetson (6169389408, 6172285958, 6185094482). Left: box 3 and box 5 come from the alpha.18 to alpha.19 System update run (#113).
andersalm commentedon Oct 16, 2026
Mac "not enough free memory" refusals (Anders, alpha.19): the check counts free - speculative + purgeable + file-backed pages (host_memory.rs:429-474); at normal pressure models up to 40% of RAM always start; refusals happen only in the kernel Warn state, where the 10%-of-RAM headroom (2.4 GiB on 24 GiB; SmolLM2 needs 3.23 GiB of which 0.83 is the model) is still demanded. Tonight the Mac hit Warn ~92 min under dev load. Non-blocking for 0.8.0; 0.8.1 fix: at Warn, start when weights + KV + scratch fit without compression (drop the headroom), keep the full check at Critical.
andersalm commentedon Oct 16, 2026
Remaining for 0.8.0 (15 Oct 22:45 COT; final candidate alpha.21 = alpha.20 + automatic Community recovery; plan #93 6207232773): box 3 (model, chat and draft kept across the alpha.20 -> alpha.21 update, plus an offline reply) and box 5 (via #113). Mac memory refusals under macOS Warn pressure are non-blocking, fix in 0.8.1 (6206039915).
changelog: 0.8.0 notes match what a new user gets: phone layout reach…
andersalm commentedon Oct 16, 2026
Milestone sweep (16 Oct, alpha.22): no box ticked.
andersalm commentedon Oct 16, 2026
Box 3 on installed alpha.22: PASS (Linux x86 Namespace box
dns5u3j4jsa3k, now destroyed; data dir/home/rita/.local/share/elastos)How: official canary install of alpha.22, then
elastos update --rollback-to QmXuy56RTFzXaifTuyCbMb6Ky1p5wuM9iP8eFbMghHxWijto reach alpha.21, thenelastos setup. Sign-up used a virtual passkey in headless Chromium.On alpha.21: signed up, ran Get on SmolLM2 135M Instruct (144,834,897 bytes, about 0.7 MB/s), and got one reply to "Say hello in one sentence.". Then left an unsent draft in the Assistant box ("Assistant draft kept 1792184716599") and one in Chat › Community.
elastos --versionreports 0.8.0-alpha.22.--rollback-tostraight afterELASTOS_INSTALL_ONLYinstall failed with "Error: No such file or directory (os error 2)". The retry succeeded. On alpha.21, Chat stayed disabled for more than 5 min before showing Live.elastos stop/start.Evidence (Anders's Mac):
~/.local/share/elastos-ops/rc-tests/runs/a22-offline-20261016T2005Z/containsbox/out/drv-a/*.png(02 first reply, 08/09 drafts, 10–12 after update, 13 offline reply),update.out,box/out/offline/{log,result.json}and the install, rollback and setup logs.andersalm commentedon Oct 16, 2026
Body updated (0.8.0 scope rule): #98, #101, #102, #100, #331 lines struck → After 0.8.0 (each issue is in that milestone). Run-journal owner recovery struck → After 0.8.0 (not implemented, #101). Stay: alpha.15 runs, Preparation-failed/storage cause items (#348 merged, needs installed check), installed CI proof, final acceptance via #113.
andersalm commentedon Oct 17, 2026
Evidence reconciliation: the installed Linux x86-64 CI journey and summary and raw receipts pass both finite-memory cases. The stale pending note is corrected.
This covers the installed CI fixture; final signed-candidate and device acceptance remain open. Another run is unnecessary solely to clear that old note.
andersalm commentedon Oct 18, 2026
User reports that alpha.22 SmolLM2 135M Instruct first refused to start on Sasha’s macOS Home with 48 GB RAM, then worked after he freed memory. This supports pressure-sensitive admission; installed hashes and numeric readings remain unverified.
Static audit at f346147 maps the reported text to model_memory_unavailable before engine spawn. The estimate includes weights, KV/scratch and max(10% of observed RAM, 1 GiB) headroom; normal macOS pressure also admits estimates within 40% of total. These files are unchanged in bfefe92.
Collect observed total/available bytes, pressure result/level, model/config and hashes to explain the decision. The proposed measured-policy and recovery follow-up is in #98 (comment); actual engine OOM is unproven and installed Local AI acceptance stays open.
andersalm commentedon Oct 18, 2026
alpha.23 installed Linux journey (amd64, fresh
install.shfrom canary, evidencerc-tests/runs/linux-amd64-20261018T171924Z):Two follow-ups:
andersalm commentedon Oct 18, 2026
Independent audit of the completed alpha.23 amd64 report confirms 10/11 steps passed; Stop was not exercised. The saved screenshot shows a completed Qwen refusal (10 tokens, 6.2 seconds) and a normal Send control, consistent with the reported end before the Stop click.
This does not establish a cancellation failure or the cause of the harmless-request refusal. Signup/sign-in and both model download/reply paths passed in this run; the rerun must still exercise Stop.
Saved installer checks report signatures, checksum and alpha.23 version success, but this bounded evidence lacks a retained full Runtime SHA/source-tree receipt. Home and box cleanup are harness reports; the observer read saved evidence only.
andersalm commentedon Oct 18, 2026
Independent saved-evidence audit confirms 11/11 UI journey checks PASS for alpha.23 ARM64 (1592.864 s) and amd64 rerun (736.523 s), including visible Stopped/Retry after the Stop interaction. This supersedes the unexercised Stop result only for these later runs.
The harness checks UI state, without backend cancellation or engine-exit assertions; full Runtime SHA/source-tree and final provider-cleanup receipts are absent. ARM used the story prompt; amd64 used the new counting prompt, and both Stop screenshots show partial refusals.
Answer quality is separate from the PASS: amd64 SmolLM2 says two plus two is “twenty five”; ARM answers four. The source default has no explicit ban on these tasks (agent-live.js:54–58); local output is capped at 1024 tokens or less (config.rs:728–731), and the stream parser omits finish_reason (adapters.rs:2526–2541). Actual request/model/template/sampler evidence is still needed to explain the refusal or wrong answer.
andersalm commentedon Oct 19, 2026
Status of the Remaining row "Jetson reports 'Storage capacity is unavailable.' with 16 GB free": the cause is fixed on develop. CHANGELOG [0.8.0-alpha.12] Fixed: "Getting a model on a slower connection no longer stops after about ten minutes with 'Storage capacity is unavailable'. Home was shutting down its storage service as idle while the model was still downloading." (https://github.com/Elacity/elastos-runtime/blob/3beb816438fd567145a8d725e22465bd83277cf0/elastos/CHANGELOG.md#L1188-L1190), plus the plain cause report tested by
model_preparation_capacity_owner_distinguishes_space_and_service(Done row above). The row is left unticked until a Jetson Get on alpha.24 confirms it.New follow-ups filed from comments here: #453 (Chat draft lost on reload), #454 (Chat disabled >5 min before Live, re-check on alpha.24), #455 (Qwen refused a harmless prompt).