Watch
1
0
Fork
You've already forked SouveraineOS
0
Commit graph

232 commits

Author SHA1 Message Date
Fimeg
2e0642181f task-49: wifi->LTE failed to attach 2026-08-01; pd_mapper is a real suspect
sdm845_domains[] carries mpss_root_pd and mpss_wlan_pd, so wifi and cellular
share the modem's PD broker on this SoC. A broker that stops serving explains
a no-attach that only a reboot clears.

The stranded mic-fix commit is not the fix: it edits arch/arm64/configs and
debian/config, and the PKGBUILD reads neither (cp config-blueline.aarch64,
olddefconfig, no merge_config.sh). Whether =m should become =y in the config
we do ship is open, and untestable until the failure is captured live.
2026-08-01 12:39:03 -04:00
Fimeg
c614b3a83e task-44: piece 1 built; two corrections to the task's own premises
The staged vendor driver is the fpc_fingerprint variant, which blueline does
not build (b1c1_defconfig sets CONFIG_FPR_FPC=y, the other copy). The shipping
one has an empty vreg_conf[] and manages no regulators at all.

The TZ pointer was wrong: secure_load_tz_frontier.md is superseded and covers
hyp-assign/XPU, not TA loading. tz_listener_archaeology.md plus the four
qseecom commits are the record, and they already show TZ answering us -
version query succeeds, listener 0x5000 registers live. What is missing is
app loading, not the channel.

Pins confirmed against this unit's DTBO; the FPC1075 caution is resolved.
2026-08-01 09:16:46 -04:00
Fimeg
80ea42cbbb task-48: daemon half fixed and live; shell half shipped and measured failing 2026-07-31 20:14:45 -04:00
Fimeg
ec2f856cfb TASK-49: bearer selection and DNS belong to the state machine
Measured on the phone: all IPv4 left over cellular while on wifi, because NM
penalised the wifi metric +20000 for a failed connectivity check, which failed
because the VPN profile injected a resolver reachable only over the degraded
default. Prior art read off the local LineageOS image and Sailfish tree: both
route DNS per link and gate preference on a probe. We do neither.
2026-07-31 13:55:02 -04:00
Fimeg
bd528e3443 docs: 08(f) surfaced — the state machine has a readout
Device page renders state, evidence, per-source health, sensors_degraded and the
decision trail. Notes what is still absent from device_state: last-seen per
source, and grip as a fourth source.
2026-07-31 13:12:19 -04:00
Fimeg
012e4e1d59 docs: subconscious surface is hosted
Tier 2 reached the tree on 07-30 and the glass on 07-31 — nothing mounted it in
between, and that was invisible because a component nobody instantiates logs
nothing. Notes why verifying a row means looking at the glass.
2026-07-31 12:54:51 -04:00
Fimeg
705e7b55ae shell-tree unification: done, zero stranded files 2026-07-31 08:25:09 -04:00
Fimeg
6b0bf5c745 shell-tree unification is all but done: 918 files -> 7
Re-measured by md5 across both devices. The ii-base pin + ii-phone overlay
landed without this task being worked and killed the drift: laptop-only is 0,
the settings suite is byte-identical everywhere, and the 4 phone-only files
are the declared overlay.

Six stranded files remain. Also corrects two claims in the 07-21 record: the
phone-only KEEP list names three files that no longer exist anywhere, and
deploy.sh no longer 'only rsyncs surfaces/' - it rsyncs the pin with --delete,
which is why an undeclared phone-local file cannot survive.
2026-07-31 08:22:56 -04:00
Fimeg
25bb99c850 VPN: correct the port, the peer, and the keepalive
51822 not 51820; the phone has its own peer (10.8.0.6) rather than sharing
the laptop's key; keepalive 25 not 0. Records that the autonomous gate is
dead and why a full tunnel that cannot handshake takes the machine with it.
2026-07-31 07:57:30 -04:00
Fimeg
d64579a6c3 CLAUDE.md: the umbrella repo had none
An agent landing here got nothing. Says what the project is, the reading
order, and the rule that keeps being broken: ls by date and read, do not
grep — these documents argue, and the argument is the content.
2026-07-30 19:13:34 -04:00
Fimeg
4df694cd5d tasks: TASK-17 dictation status — CLI shipped, key-anim patch pending build 2026-07-30 15:08:13 -04:00
Fimeg
051da9e0d3 docs: Wiuf VPN — phone split-tunnel + semi-intelligent gate 2026-07-30 14:19:31 -04:00
Fimeg
ee68f5b47b mark package stranding resolved (TASK-25)
Pixel3Arch packages.yml now publishes all 14 device packages; pacman -Sl
souveraine-aarch64 is the manifest. Update TASK-25 status/acceptance +
record the four cross-build shapes and the committed-junk CI trap. DUMP
for the session. STATE.md last-updated 2026-07-30.
2026-07-30 13:57:00 -04:00
Fimeg
66dbb601fa docs: add SHELL-SURFACES.md — the migration checklist
Migrations have been silently lossy: the subconscious surface was stranded for
over a week by the ii -> souveraine shell move, and five packages went stale,
both because there was no list of what exists to tick off. SHELL-SURFACES.md is
that list — every shell surface and first-party service, the contract it is
defined against, its substrate today, and whether it reaches the glass.

States the rule that would have caught it: a feature defined as QML in a shell
tree dies with that tree; one defined against a contract survives (the
subconscious model in services/Ai.qml crossed untouched; only its views, riveted
to the ii overlay system, stranded). Marks the ii-substrate furniture rows
UNVERIFIED — that verification is the checklist's first demand. STATE.md points
at it from the resume anchor.
2026-07-30 12:59:59 -04:00
Fimeg
d4ea575404 tasks: settle viewtop scene composition + selection design; cross-link
TASK-43 gains the §Scene composition design settled 2026-07-30: the
texture/content wall, pose (geometry, the agent's) and expose (legibility,
gate-veiled) as authority-split verbs, the selection surface as a scene element
not a layer surface, and the primary-selection/data-control source now wired
(234a631) with its owed refinements named.

TASK-18: the selection chip's Hyprland surface layer is terminal (the tap bug
is layer-shell); its backends are portable. TASK-30: viewtop's wire table is one
of its surfaces, grown by pose/expose. TASK-17: the OSK z-order this task fought
is structurally enforced under viewtop.
2026-07-30 11:36:50 -04:00
Fimeg
d811870fae TASK-18: shipped-partial; detection settled, chip still not tappable 2026-07-29 18:17:13 -04:00
Fimeg
39c9a022b4 TASK-32: record that --phone rsyncs --delete with no snapshot
Folds in the 2026-07-29 finding instead of a new task file; TASK-32 already owns
how these surfaces ship.
2026-07-29 17:55:18 -04:00
Fimeg
00d2449acc TASK-49: the shell surface has no package, and --phone deletes on-device edits
deploy.sh:246 rsyncs --delete into the phone's surface tree with no snapshot,
unlike the local compose which snapshots to .ii-previous. Root cause is
installing into $HOME, which has no file-ownership model. Payload belongs in
/usr/share owned by a package; $HOME keeps only overrides.
2026-07-29 17:48:37 -04:00
Fimeg
aef29b875d tasks: 46 is no longer 'never produced a frame' 2026-07-29 11:57:28 -04:00
Fimeg
38c9be0262 task-46: the front camera works — first frame captured, recipe recorded 2026-07-29 11:57:12 -04:00
Fimeg
85b172aaf1 tasks 47/48: auto-brightness is unbuilt; the shell dies on a lock-owing reload 2026-07-29 10:45:06 -04:00
Fimeg
e421975646 dump 07-29: status — section 8 closed, grip answered, pkgs/ has no CI 2026-07-29 08:46:22 -04:00
Fimeg
162891571a task-46: the front pair was already wired; the rear IMX363 was the gap 2026-07-29 08:28:23 -04:00
Fimeg
daad100eee docs: session dump — squeekboard /usr/local prefix regression, pill lift across OSK swap, TASK-38 consolidation 2026-07-29 06:38:01 -04:00
Fimeg
1b7a14e4c2 tasks: archive what shipped, say what is left, add fingerprint/haptics/camera
13 (grip) and 35 (sessiond deadlock) are done; both moved to archive/ with
closing notes. Index regrouped by state with a one-line what's-left per task
instead of a flat table of history; the archive prose moved to archive/README.

Corrected stale statuses: 29 shipped (read-only pending polkit), 31's component
and squeeze are live and only its contents are open, 42's layer 1 is built, 34
no longer blocks grip, 43 was numbered 42.

New: 44 fingerprint (DT + shim sat unused in staging/ since 07-07), 45 haptics
(settle which chip drives the motor before porting cs40l2x), 46 camera (drivers
and CAMSS are already in-tree; blueline's DT has no camera node).
2026-07-28 18:20:23 -04:00
Fimeg
4daeef48ce TASK-43: viewtop runs on the phone (renumbered; 42 was taken) 2026-07-28 17:51:14 -04:00
Fimeg
f7b4b04525 tools: read CI outcomes from the API, and do it automatically
A rotted action pin skipped the publish job rather than failing it, so
edge stopped publishing and the phone sat on an old build for a working
day with nothing saying why. The runner journal logs task pickup and
never outcome, which is what was being read.

ci-status.sh asks Gitea instead, drilling run -> job -> log tail on a
failure. claude-hook-push-ci.sh runs it after every git push so the
answer arrives without anyone choosing to look. TASK-42 has the
three-layer plan; this is layer 1.
2026-07-28 17:38:44 -04:00
Fimeg
32ed4fcf6c TASK-42: viewtop compositor
Foundation landed: lock handoff, admission gate, layer stack, back verb,
intent table. 123 tests, CI green for the first time (repo was never
fmt-clean). No Wayland/DRM yet.

Records the two traps: the lock handoff is the normal path, and sessiond
is already the availability layer so the compositor gets no fallback
presenter.
2026-07-28 17:22:28 -04:00
Fimeg
b7ea433467 audio: WirePlumber persistence measured working; settings owes a state-machine readout
TASK-39 step 1 is done and clean — default-routes stores 0.49 cubed and
rewrites within 6s of a change. 'Pinned on boot' is a faithful restore
of a value lower than wanted, so this is defaults and roles. No second
writer.

TASK-19 gains Casey's ask: source health, evidence and confidence have
no surface anywhere. Readout now, controls after 08(g) decides.
2026-07-28 14:28:50 -04:00
Fimeg
7af82e4f6e TASK-13: force works, excitation closed by the gpio-hog ordering
07-27's 'ignores force' conclusion is superseded — same binary, no
nanoapp, 2502-2990 deflection. Kept verbatim below the correction.
The nanoapp is off grip's critical path but still wanted for doze,
the real detector, haptics and TASK-40.
2026-07-28 13:50:06 -04:00
Fimeg
0100fa34c8 viewtop: assess denial as the base; the lock model is the one thing we cannot take
Our engine pins are already theirs. The embedder, the eleven-patch
DMSAA/external-texture series, KMS and the GBM atlas path are the
expensive parts and they are readable.

Their lock is a compositor-internal bool with PAM dlopened in-process
and no ext-session-lock served at all. It is invisible to logind and
sessiond, and it gates input against every caller including Annie.
viewtop serves the protocol; sessiond keeps the decision.

Also adds TASK-41 (attested producers), raised out of grip bring-up.
2026-07-28 13:41:37 -04:00
Fimeg
6c5d39bac5 task-36: nanoapp loader built and verified; task-34: SSR does not recover the wedge 2026-07-27 18:35:24 -04:00
Fimeg
4287d8765d tasks: index 36-40, correct TASK-34's invalid test, add inference tiering task 2026-07-27 15:49:09 -04:00
Fimeg
b24963ad01 device-state §12: manual brightness override is anchors, not a bias 2026-07-27 15:36:25 -04:00
Fimeg
04831db5ff task-36: the chre_slpi method table, recovered by disassembly 2026-07-27 13:43:14 -04:00
Fimeg
0533f9faa9 task-36: chrecd already runs CHRE; the gap is three chre_slpi methods 2026-07-27 10:23:11 -04:00
Fimeg
4973393736 tasks 37-39: back verb, pill swipe osk swap, audio levels as state 2026-07-27 09:29:10 -04:00
Fimeg
ed21db0f44 task-13: elmyra nanoapp imports ash*ElmyraFilters; task-36 CHRE host 2026-07-27 09:00:33 -04:00
Fimeg
78c62a602d task-24: dead band above the letters page was max_rows across layers 2026-07-27 08:46:12 -04:00
Fimeg
ccf02e3bae task-13: PM8998 gpio2 power-source is VIN0 on both stacks; no DT patch fixes excitation 2026-07-27 08:36:58 -04:00
Fimeg
3abf45a5a4 task-13: registry and vddio ruled out; pad VIN selection is the open question 2026-07-27 02:03:19 -04:00
Fimeg
db5220633d task-13: elmyra_raw streams at 100Hz; force produces no deflection 2026-07-26 22:12:13 -04:00
Fimeg
f2213ce194 task-13: SUID opens, zero reports; irq_skip_pin_config is the next lead 2026-07-26 21:39:39 -04:00
Fimeg
736567c0d4 device-state: §12 — where ambient light enters, and why it is an Action not a daemon 2026-07-26 18:29:57 -04:00
Fimeg
f7aa5ce8a2 task-35: sessiond accepts and never answers; 347 parked handler threads 2026-07-26 17:57:57 -04:00
Fimeg
6b455fc841 task-13: the rail is up and held from boot; step 2 blocked on TASK-34 2026-07-26 17:15:21 -04:00
Fimeg
bb023669d3 task-34: SLPI bring-up sequencing regression; doorbell dies on SSR and stays dead 2026-07-26 17:12:56 -04:00
Fimeg
cbda7c87cf task-13: registry side is complete on device; 177 groups incl. elmyra ADC + touch_gesture 2026-07-26 16:52:29 -04:00
Fimeg
adfc1070a7 task-13: downstream has no gpio2 node either; mainline exposes it as gpiochip0 line 1 2026-07-26 16:49:10 -04:00
Fimeg
1b38367eb2 task-13: gpiochip0 is live; test the rail with libgpiod before scheduling a kernel build 2026-07-26 16:39:35 -04:00