Share native current-line speech with Remote

This commit is contained in:
ak47 committed 2026-11-05 17:55:11 -05:00
1 parent 103fbfd81a
commit ee3d91af23
11 files changed
+289 -16

No files matched your search

+17 -5
View File
@@ -98,8 +98,8 @@ in an assembled line must have a known role and no password ancestry. Say All
classifies all spoken lines before admission; a sensitive or unclassified line
keeps the entire batch private, including sentence-mode continuations. Local
navigation failures stay private. Derived phonetic hints retain their parent's
origin and original observation ticket. Native current-line commands,
reading-context announcements, separate key-name echo and notification paths
origin and original observation ticket. Reading-context announcements,
separate key-name echo and notification paths
still need explicit source and sensitivity review.
Visual-line assembly now retains each contributing object's complete captured
@@ -142,9 +142,21 @@ or stale ancestry and sensitive neighboring fragments keep the report private.
Classification does not add context announcements or change local reading,
caret position, focus or Braille. Spelling retains repeated letters, character
state and phonetic expansion through the existing speech owner, with its original
lease/generation ticket and pronunciation policy. Errors remain private. Native
focused-line reads lack complete ancestry and remain private even when a supplied
snapshot appears ordinary.
lease/generation ticket and pronunciation policy. Errors remain private.
Native focused-line reports now capture the focused source and every parent
through its application on the GLib owner, without scanning children or changing
the caret. Capture refreshes role/state metadata and detects cycles, missing
parents, invalid identities, provider errors and truncated walks. It has a
64-object bound and checks a 100-millisecond context between provider calls;
an individual synchronous AT-SPI call still has its existing provider timeout.
Failure leaves privacy metadata empty while preserving successful local text.
Export requires the original focus/epoch, matching source identities and complete
application ancestry; the shared classifier rejects password, unknown/invalid
and defunct sources or ancestors. Spelling, phonetics, pronunciation and blank
line handling use the existing speech owner and original lease/generation.
Lock/handoff are rechecked after foreground synchronization and before presenting
a completed report. Native Where Am I and other unreviewed producers stay private.
Say All exports each resolved chunk immediately before its completion-paced
backend call. Sentence boundaries, pronunciation and the original request's