Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
236 commits
Select commit Hold shift + click to select a range
99ae892
Dictation muffle: stop the AirPods false 170 ms lag, soften the cut
r3dbars Oct 6, 2026
9afb608
Dictation muffle: hold the AirPods copy back by its lag instead of wa…
r3dbars Oct 6, 2026
487d614
Dictation muffle: return the held copy fully muffled; review follow-ups
r3dbars Oct 6, 2026
70a0a5d
Dictation muffle: swell the held AirPods copy in over half the gap
r3dbars Oct 6, 2026
1a0fb24
Dictation muffle: describe the AirPods swell in docs and comments
r3dbars Oct 6, 2026
8d96dcd
fix: retry refused status popovers with a temporary anchor
r3dbars Oct 7, 2026
ec0f13b
test: classify the transparent popover anchor privacy surface
r3dbars Oct 7, 2026
92f1b11
Test onboarding privacy through its real window configuration
r3dbars Oct 7, 2026
1bf6588
Agent docs: refresh every AGENTS.md and add six missing ones
r3dbars Oct 7, 2026
7817a22
Sentry: split Release Health sessions at sleep/wake and once a day
r3dbars Oct 7, 2026
9a35dc7
Writing scrubber: catch sudo asked by brew/make/scripts and $-prefixe…
r3dbars Oct 7, 2026
9347cef
Shortcuts: remove dead paste-last and Hands-Free shortcut code
r3dbars Oct 7, 2026
038491b
Rank search_context across kinds by relevance, not date
r3dbars Oct 7, 2026
76a64ba
Test shape: assert busy outcome, not elapsed time, in snapshot lock test
r3dbars Oct 7, 2026
502e5c9
Overlay uses the shared wholeSecondTicks publisher; drop its source-t…
r3dbars Oct 7, 2026
fa5e120
Split TranscriptedPermissionAccess (file-size cleanup)
r3dbars Oct 7, 2026
ced99af
Test shape: Sentry policy test checks reason codes by value, not sour…
r3dbars Oct 7, 2026
391e68a
Move NotchIslandVoiceRowView into its own file
r3dbars Oct 7, 2026
ac431ec
Test shape: drop wall-clock budget from summary backfill test, assert…
r3dbars Oct 7, 2026
860d57a
Split GhostInputController into Suggestions, Context and Outcomes ext…
r3dbars Oct 7, 2026
00e93a3
Move personal-history key provider and trained-model types out of Per…
r3dbars Oct 7, 2026
e14d724
Test shape: test Discard availability through a policy, not source text
r3dbars Oct 7, 2026
3a07ce6
Drop PersonalHistoryStore from file-size baseline
r3dbars Oct 7, 2026
bad0186
Move UISmoke menu-bar audit and report types into their own files
r3dbars Oct 7, 2026
8edf2f1
Concurrency (UI): Mark MenuTokens.Font constants nonisolated(unsafe)
r3dbars Oct 7, 2026
cce1609
Concurrency (UI): Mark ISO8601 formatters nonisolated(unsafe)
r3dbars Oct 7, 2026
d86c7f7
Shrink source pin baseline for MeetingSessionUIPolicyTests
r3dbars Oct 7, 2026
9d2a423
Threat model and review guidelines for Codex reviews
r3dbars Oct 7, 2026
f85576a
Review guidelines: don't report commit identity
r3dbars Oct 7, 2026
97cbcde
Make hasValidEnvelope internal so the store can still read it after t…
r3dbars Oct 7, 2026
aec0094
Codex automation playbooks: gate and finding responder
r3dbars Oct 7, 2026
01ee4fb
Module edges: Settings names saved people with SpeakerNameChoice inst…
r3dbars Oct 7, 2026
9a61160
Merge origin/main
r3dbars Oct 7, 2026
d890bfc
Merge origin/main into cleanup/file-size/GhostInputController-1
r3dbars Oct 7, 2026
a72782f
Open the Home meeting cache with plain sqlite3 and Support's owner-on…
r3dbars Oct 7, 2026
cc4015b
Shrink module-boundary baseline: RecentMeetingMetadataCache SQLiteHan…
r3dbars Oct 7, 2026
33f9c1a
Shrink source-pin baseline for the audit regression contract
r3dbars Oct 7, 2026
098bcde
Codex playbooks: morning triage, docs drift, stale PRs, worktree cleanup
r3dbars Oct 7, 2026
8b2e628
Move QA-pressed and click-flow identifier contracts to a repo check
r3dbars Oct 7, 2026
b0b3c1d
Morning triage: label bug and triage only
r3dbars Oct 7, 2026
bab6e6e
Playbooks: waiting-on-owner is the hand-off label
r3dbars Oct 7, 2026
1f89e6f
Playbooks: hand-off label is waiting-on-human
r3dbars Oct 7, 2026
81e893f
Merge remote-tracking branch 'origin/main' into cleanup/file-size/Not…
r3dbars Oct 7, 2026
cde3667
Test shape: clipboard paster tests assert outcomes, notice preview vi…
r3dbars Oct 7, 2026
e4cc9a1
Merge remote-tracking branch 'origin/main' into claude/search-context…
r3dbars Oct 7, 2026
a2aa77c
Merge origin/main into cleanup/file-size/GhostInputController-1
r3dbars Oct 7, 2026
65520da
Resolve the Settings speaker database through the Meeting session
r3dbars Oct 7, 2026
bbb0f4f
Shrink module-boundary baseline: Settings window SpeakerDatabase edge
r3dbars Oct 7, 2026
57d9fcf
Merge remote-tracking branch 'origin/main' into cleanup/file-size/Per…
r3dbars Oct 7, 2026
4bae868
Playbooks: run overnight jobs 11 PM to 3 AM
r3dbars Oct 7, 2026
6aa2ae5
Make module boundaries absolute: drop the grandfathered baseline
r3dbars Oct 7, 2026
680df55
Pin search_context fusion tie and dedupe rules; say results are relev…
r3dbars Oct 7, 2026
0a3f75e
Merge remote-tracking branch 'origin/main' into cleanup/test-shape/se…
r3dbars Oct 7, 2026
e2db1ef
Test shape: analytics policy test uses value lists with drift guards,…
r3dbars Oct 7, 2026
b27ae5d
Test shape: QA harness permission-state contract becomes a repo check
r3dbars Oct 7, 2026
d992006
Telemetry tests iterate SpeakerFinalizationFailureReason.allCases
r3dbars Oct 7, 2026
540ed48
QA: Sparkle smoke drops a stale launch report before launching
r3dbars Oct 7, 2026
f0446be
Speaker lab: don't let the shared speaker DB leak between runs
r3dbars Oct 7, 2026
716e70b
Writing scrubber: redact the whole key=value secret when inline rules…
r3dbars Oct 7, 2026
e7bc711
ScreenScene: only lower-half matches set the compose floor
r3dbars Oct 7, 2026
01ae51a
Speakers: un-merge keeps the pre-merge voiceprint for partly legacy p…
r3dbars Oct 7, 2026
051080d
Notch island: the review hard cap never closes a review mid-answer
r3dbars Oct 7, 2026
9ac8442
Failed queue: keep out-of-root rows whose old library is offline
r3dbars Oct 7, 2026
fb426ae
Audio signal: don't call a mic track unusable from a quiet start
r3dbars Oct 7, 2026
ddfb832
Speakers: a failed rename from Everyone keeps the name and says so
r3dbars Oct 7, 2026
cacd747
ScreenScene: the lowest lower-half match is the compose floor
r3dbars Oct 7, 2026
cad4a48
Speakers: test that un-merge weighs post-merge rows by the keeper's c…
r3dbars Oct 7, 2026
aeb2437
Failed queue: only keep relocated rows the disk can't answer for yet
r3dbars Oct 7, 2026
58e5846
Audio signal: one click in a dead mic's hiss isn't usable signal
r3dbars Oct 7, 2026
6c29d2b
Notch island: re-check the review hard cap when an answer finishes
r3dbars Oct 7, 2026
9f3b055
Speakers: ignore a second Return while an Everyone rename is saving
r3dbars Oct 7, 2026
ab126bc
Merge remote-tracking branch 'origin/main' into HEAD
r3dbars Oct 7, 2026
57c22e7
Protect automation playbooks and human review holds
r3dbars Oct 7, 2026
87e0e3f
Merge remote-tracking branch 'origin/main' into tm-findings
r3dbars Oct 8, 2026
b43621d
Threat model and playbooks: match the code, tighten automation safety
r3dbars Oct 8, 2026
8db837c
Close automation review gaps and protect renamed paths
r3dbars Oct 8, 2026
882708f
Guard stale PR comparisons against untrusted fork diffs
r3dbars Oct 8, 2026
64f5b5c
Merge remote-tracking branch 'origin/main' into settle-2068
r3dbars Oct 8, 2026
a31df3b
Merge remote-tracking branch 'origin/main' into settle-2069
r3dbars Oct 8, 2026
e233abd
Merge origin/main into cleanup/file-size/NotchIslandSpeakerReviewView-1
r3dbars Oct 8, 2026
d346176
Concurrency census: --shrink never adds or raises a baseline folder
r3dbars Oct 8, 2026
a329958
Merge remote-tracking branch 'origin/main' into HEAD
r3dbars Oct 8, 2026
cde9db9
Concurrency baseline: Sources/UI to measured 26
r3dbars Oct 8, 2026
cc47fe7
Merge remote-tracking branch 'origin/main' into HEAD
r3dbars Oct 8, 2026
62bcfcf
Merge remote-tracking branch 'origin/main' into HEAD
r3dbars Oct 8, 2026
5b84fe3
SparkleUpdateSmoke: refuse to delete a stale report through a symlink…
r3dbars Oct 8, 2026
e402c81
Automation playbooks: settle Codex review findings
r3dbars Oct 8, 2026
7f8a069
WritingSecretScrubber: bump rulesVersion to 2 so saved day files are …
r3dbars Oct 8, 2026
c8f45e1
Writing port ledger: record the compose-field floor deviation
r3dbars Oct 8, 2026
7e8f027
Merge origin/main; keep not-pasted words as the island preview
r3dbars Oct 8, 2026
54b0d8d
Merge remote-tracking branch 'origin/main' into cleanup/test-shape/me…
r3dbars Oct 8, 2026
f459fc1
Merge remote-tracking branch 'origin/main' into wt-pr2080
r3dbars Oct 8, 2026
970bccd
Merge remote-tracking branch 'origin/main' into wt-pr2079
r3dbars Oct 8, 2026
466e051
Merge origin/main into speaker-name-choice
r3dbars Oct 8, 2026
6b648d3
Merge remote-tracking branch 'origin/main' into wt-pr2078
r3dbars Oct 8, 2026
d148db3
Merge remote-tracking branch 'origin/main' into HEAD
r3dbars Oct 8, 2026
67a0ac9
Merge remote-tracking branch 'origin/main' into HEAD
r3dbars Oct 8, 2026
61d14db
Merge remote-tracking branch 'origin/main' into HEAD
r3dbars Oct 8, 2026
5cbd668
Merge remote-tracking branch 'origin/main' into HEAD
r3dbars Oct 8, 2026
d42d128
Point the Companion doc at the real launcher path
r3dbars Oct 8, 2026
100fee4
Keep failed-queue rows when the old audio folder itself refuses access
r3dbars Oct 8, 2026
1f890c7
meeting-lab: keep the shared DB marker honest (timeouts, series order…
r3dbars Oct 8, 2026
d80840b
Merge remote-tracking branch 'origin/main' into HEAD
r3dbars Oct 8, 2026
ef30714
Merge remote-tracking branch 'origin/main' into HEAD
r3dbars Oct 8, 2026
38671d2
Merge remote-tracking branch 'origin/main' into HEAD
r3dbars Oct 8, 2026
daae8ae
Merge remote-tracking branch 'origin/main' into HEAD
r3dbars Oct 8, 2026
59f1900
Threat model: scope the password-manager guarantee; docs drift: page …
r3dbars Oct 8, 2026
ed888c8
Concurrency baseline: Sources/UI to 21 on the merged tree
r3dbars Oct 8, 2026
5b4e93a
Speaker lab: let --force --only start at any shared meeting
r3dbars Oct 8, 2026
86fba9b
Writing scrubber: redact a post-install line even when it names the p…
r3dbars Oct 8, 2026
1553e31
Scrubber test: a redaction that swallows an existing token still repo…
r3dbars Oct 8, 2026
3b0f0bf
Scrubber: report a kind when a redaction swallows an existing token
r3dbars Oct 8, 2026
a335f1f
Merge origin/main; drop only the clipboard paster test entries from t…
r3dbars Oct 8, 2026
1dcd9d0
Menu bar: raise the fallback popover anchor above full-screen content
r3dbars Oct 8, 2026
42b3019
Clipboard paster: drop a stray 'if false' that disabled the auto-ente…
r3dbars Oct 8, 2026
aa73250
Merge origin/main into claude/agents-md-refresh; carry over Support l…
r3dbars Oct 8, 2026
95e9de8
Speaker lab: fingerprint custom --embedder-model bundle contents
r3dbars Oct 8, 2026
27187d5
Playbooks: check every PR path before running branch code; threat mod…
r3dbars Oct 8, 2026
1eed190
Merge remote-tracking branch 'origin/main' into HEAD
r3dbars Oct 8, 2026
e21a9a8
CI: let the Mac runner run two job VMs at once
r3dbars Oct 8, 2026
48e063a
Playbooks: check lane deny globs, pin head commit, treat PR file name…
r3dbars Oct 8, 2026
2e99cdb
Mac runner: need 40 GB free per job VM before starting another
r3dbars Oct 8, 2026
0ec2def
Merge main and verify every meeting in summary backfill
r3dbars Oct 8, 2026
8232b44
Close maintenance gate review gaps
r3dbars Oct 8, 2026
08a3e24
Check all backfilled summaries through supported search outcomes
r3dbars Oct 8, 2026
5514192
Merge remote-tracking branch 'origin/main' into HEAD
r3dbars Oct 8, 2026
78d7a18
Prove snapshot busy timeout with an injected clock
r3dbars Oct 8, 2026
b15b701
Preserve exact redaction kinds when old tokens are swallowed
r3dbars Oct 8, 2026
be529e4
Handle installer options and preserve shell variable expansions
r3dbars Oct 8, 2026
2c02d1a
Merge remote-tracking branch 'origin/main' into HEAD
r3dbars Oct 8, 2026
95e11d7
Merge remote-tracking branch 'origin/main' into HEAD
r3dbars Oct 8, 2026
3843acf
Merge main preserving both QA and synced-copy contracts
r3dbars Oct 8, 2026
27edaff
Merge remote-tracking branch 'origin/claude/writing-scrubber-gaps' in…
r3dbars Oct 8, 2026
4777b95
Merge commit 'ee20de649ce21488f68f222ede08ec32ba25fbb1' into HEAD
r3dbars Oct 8, 2026
6336a6c
Merge commit 'ee20de649ce21488f68f222ede08ec32ba25fbb1' into HEAD
r3dbars Oct 8, 2026
17200b4
Include token bookkeeping in standalone scrubber measurement
r3dbars Oct 8, 2026
92084f0
Fix Mac runner PID admission and serial fallback self-tests
r3dbars Oct 8, 2026
c939780
Merge remote-tracking branch 'origin/main' into HEAD
r3dbars Oct 8, 2026
9372e99
Merge main preserving the measured concurrency baseline
r3dbars Oct 8, 2026
27adc8b
Merge commit 'b32f2346c4cdd49a570070ef39569dd5c9239ec8' into HEAD
r3dbars Oct 8, 2026
24d5507
Merge commit 'b32f2346c4cdd49a570070ef39569dd5c9239ec8' into HEAD
r3dbars Oct 8, 2026
35f0a17
Keep timestamp formatter state local while preserving output
r3dbars Oct 8, 2026
c7e52f9
Merge main preserving current concurrency limits
r3dbars Oct 8, 2026
b52e880
Isolate menu font constants to the UI actor
r3dbars Oct 8, 2026
45be8cd
Merge remote-tracking branch 'origin/main' into HEAD
r3dbars Oct 8, 2026
1af2203
Merge commit 'b32f2346c4cdd49a570070ef39569dd5c9239ec8' into HEAD
r3dbars Oct 8, 2026
f2cb162
Integrate reviewed PR #2035
r3dbars Oct 8, 2026
593aa86
Merge commit 'b32f2346c4cdd49a570070ef39569dd5c9239ec8' into HEAD
r3dbars Oct 8, 2026
dbb7bf7
Integrate PR #2034 preserving both test baseline removals
r3dbars Oct 8, 2026
4322442
Integrate reviewed PR #2068
r3dbars Oct 8, 2026
1350fee
Integrate reviewed PR #2069
r3dbars Oct 8, 2026
8695939
Integrate reviewed PR #2092
r3dbars Oct 8, 2026
9df7740
Integrate reviewed PR #2139
r3dbars Oct 8, 2026
a909ea7
Integrate reviewed PR #2055
r3dbars Oct 8, 2026
c454b4d
Integrate PR #2079 preserving both file splits
r3dbars Oct 8, 2026
8d523ba
Integrate reviewed PR #2171
r3dbars Oct 8, 2026
bb20627
Integrate reviewed PR #2169
r3dbars Oct 8, 2026
671baf0
Integrate PR #2089 preserving all test baseline removals
r3dbars Oct 8, 2026
80bfbc4
Integrate reviewed PR #2110
r3dbars Oct 8, 2026
8e659c7
Fix automation checker mapping and complete input coverage
r3dbars Oct 8, 2026
8d72073
Exercise discard confirmation ordering through production flow
r3dbars Oct 8, 2026
4cf24f4
Integrate scrubber fixes preserving file-size ratchets
r3dbars Oct 8, 2026
4483b89
Preserve exact latest PR #2032 ancestry
r3dbars Oct 8, 2026
f4b4845
Correct agent doc facts and route tools to their owning guides
r3dbars Oct 8, 2026
cd71e28
Preserve complete refresh identifier prefix ban
r3dbars Oct 8, 2026
9c15980
Integrate reviewed and repaired PR #2073
r3dbars Oct 8, 2026
e57f4d4
Integrate PR #2042 preserving all size baseline reductions
r3dbars Oct 8, 2026
774baf7
Integrate exact PR #2121 head
r3dbars Oct 8, 2026
7f68e0b
Integrate exact PR #2122 head
r3dbars Oct 8, 2026
91e6df1
Integrate exact PR #2098 head
r3dbars Oct 8, 2026
57cc7bb
Refresh Core layout references after main cleanups
r3dbars Oct 8, 2026
d7e62af
Merge commit 'b32f2346c4cdd49a570070ef39569dd5c9239ec8' into HEAD
r3dbars Oct 8, 2026
ccab75a
Integrate exact PR #2078 head
r3dbars Oct 8, 2026
5834419
Isolate documented MCP self-test from user state
r3dbars Oct 8, 2026
4a0e857
Merge commit '466e051bb1e6dcddde5b8f3586155f8ddfdec8d7' into HEAD
r3dbars Oct 8, 2026
8c71247
Merge commit 'f459fc11ba3c82f7de7f4bc3675344e872328745' into HEAD
r3dbars Oct 8, 2026
295685a
Merge commit 'd148db375422a23e74cc87433e0f68514b1c82f5' into HEAD
r3dbars Oct 8, 2026
e72d3d7
Merge commit 'e233abda407e50110bdc39c5c97be0b7120de34d' into HEAD
r3dbars Oct 8, 2026
187a6de
Preserve failed rows when their archive refuses access
r3dbars Oct 8, 2026
647f7ee
Merge main before muffle review repair
r3dbars Oct 8, 2026
be4538f
Muffle held output before opening the copy gate
r3dbars Oct 8, 2026
6248d85
Keep speaker review and permission capture behind Meeting boundaries
r3dbars Oct 8, 2026
873a1b4
Integrate reviewed speaker and permission module boundaries
r3dbars Oct 8, 2026
0a9acd9
Integrate reviewed AirPods dictation splice repair
r3dbars Oct 8, 2026
c1b0867
Integrate reviewed offline failed-queue preservation
r3dbars Oct 8, 2026
d897aa3
Integrate reviewed quiet-start signal classification
r3dbars Oct 8, 2026
ece85cb
Integrate reviewed legacy speaker unmerge preservation
r3dbars Oct 8, 2026
fbaed0d
Integrate reviewed owner documentation refresh
r3dbars Oct 8, 2026
c2fef71
Merge commit '42b30198110ec6113f2dadffc4a83a4815cecf63' into HEAD
r3dbars Oct 8, 2026
8e547d4
Merge commit '38671d201e1b6e51bc087b9c42be4dd1121ed551' into HEAD
r3dbars Oct 8, 2026
a5d1d6b
Merge commit '95e9de8669f961c3db4fd9bdedc3e9089e9ef816' into HEAD
r3dbars Oct 8, 2026
b01cb2e
Merge commit '5b84fe3d212c961dccfa0ee677ce311e6b733de7' into HEAD
r3dbars Oct 8, 2026
46cbe88
Move shared dictation cap policy into its owning module
r3dbars Oct 8, 2026
45d0de7
Integrate cross-kind search relevance ranking
r3dbars Oct 8, 2026
0a45b3c
Keep dictation hosts and packed token values within Speech boundaries
r3dbars Oct 8, 2026
33a82ed
Compare cross-kind search tie timestamps as real instants
r3dbars Oct 8, 2026
540df4f
Integrate reviewed narrow Speech composition boundaries
r3dbars Oct 8, 2026
4e69421
Fail closed on missing lab databases and guard stale result cleanup
r3dbars Oct 8, 2026
1b15dfc
Integrate reviewed paste, duration, Sparkle and isolated speaker-lab …
r3dbars Oct 8, 2026
1ac6afd
Merge commit '7817a224ba68b5896102a7de79d583b95a03e2d3' into HEAD
r3dbars Oct 8, 2026
a4d882c
Merge commit '9347ceffeb14d23cf881721acde4787c541e5536' into HEAD
r3dbars Oct 8, 2026
312de43
Merge commit '1dcd9d0c9d627861a1b7d194f4ccf49716ffa03f' into HEAD
r3dbars Oct 8, 2026
f0fa776
Keep Settings speaker persistence behind Meeting seams
r3dbars Oct 8, 2026
c88cf89
Integrate reviewed Meeting-owned speaker settings persistence
r3dbars Oct 8, 2026
f5c8c40
Validate the trusted lab fixture command and document one-key routing
r3dbars Oct 8, 2026
06646d6
Integrate reviewed session rotation, shortcut cleanup and fullscreen …
r3dbars Oct 8, 2026
1d30e2e
Integrate absolute module boundary enforcement last
r3dbars Oct 8, 2026
5b1e971
Align source guide with absolute module boundaries
r3dbars Oct 8, 2026
b83446e
Document resolved lower-module dependency seams
r3dbars Oct 8, 2026
aa9c6b9
Mac runner: a slot finishing doesn't clear another slot's backoff
r3dbars Oct 8, 2026
91ee05f
Preserve speaker name edits made during a pending save
r3dbars Oct 8, 2026
03a9bcd
Include production speech packing in fast test sources
r3dbars Oct 8, 2026
93d1cd7
Update plugin supervisor fixture for wrapped process result
r3dbars Oct 8, 2026
3734971
Preserve pending speaker edits and wire token bridge tests
r3dbars Oct 8, 2026
b869475
Update plugin fixture process result envelope
r3dbars Oct 8, 2026
4ac6e3c
Lock clipboard timing skips to the remaining named proofs
r3dbars Oct 8, 2026
6e6fd09
Merge reviewed Mac runner backoff follow-up into integration
r3dbars Oct 8, 2026
3a68e1c
Merge reviewed clipboard CI contract repair into integration
r3dbars Oct 8, 2026
81b7485
Address automation isolation, proof routing and QA registration reviews
r3dbars Oct 8, 2026
e1939ac
Preserve old redaction token lengths during rescrubbing
r3dbars Oct 8, 2026
21cd13f
Publish coherent muffle gate transitions and keep closing fades short
r3dbars Oct 8, 2026
3ad4f6b
Respect executable shell commands when scrubbing prompt answers
r3dbars Oct 8, 2026
26a227e
Fix serial picker proof and reroute stranded runs during unidentified…
r3dbars Oct 8, 2026
6df7db7
Align trigger inventory with intentional dormant shortcut cleanup
r3dbars Oct 8, 2026
cdd8a82
Preserve potentially active runs when job discovery is unknown
r3dbars Oct 8, 2026
456ae43
Stage independently reviewed coherent audio gate repair
r3dbars Oct 8, 2026
3ce1aa4
Prove unknown run activity cannot be rerouted
r3dbars Oct 8, 2026
90cf587
Inspect active shell substitutions without treating quoted literals a…
r3dbars Oct 8, 2026
e79f08d
Exercise meeting overlay subscription through isolated native launch …
r3dbars Oct 8, 2026
b89c0ab
Classify restored token text without finite marker allocation
r3dbars Oct 8, 2026
d2411d5
Document original-token classification during rescrubbing
r3dbars Oct 8, 2026
7f20ba2
Keep launch timing sampled before asynchronous smoke probes
r3dbars Oct 8, 2026
1aeba1c
Stage independently reviewed CI admission and fail-closed rerouting r…
r3dbars Oct 8, 2026
ce891b5
Stage reviewed native overlay duration proof wiring
r3dbars Oct 8, 2026
45a1628
Stage reviewed scrubber corrections and regression coverage
r3dbars Oct 8, 2026
4d238b0
Integrate reviewed audio privacy CI and native proof repairs
r3dbars Oct 8, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 6 additions & 4 deletions .agent-review/AGENTS.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
# Agent Review Folder
# Agent review folder

Only write sanitized PR review evidence here.
Sanitized review evidence from local agent runs. `README.md` here has the rules; the short version:

Do not use existing images in this folder as current UI truth. They may belong
to older branches or closed issues.
- Only sanitized material belongs here: no private transcripts, customer data, tokens, personal paths, or real user content.
- `visuals/` holds screenshots or GIFs for PRs that change UI, app copy, or user-facing flow. Prefer small PNGs; GIFs only when motion matters. `.agents/test-matrix.yml` expects them for UI changes.
- Nothing here is current UI truth. A visual is evidence for the PR or issue it came from. For the current look, read the code or take a fresh screenshot from your branch.
- `test-audit-2026-09-30/` is a point-in-time test audit. It lists tests deleted since, so `scripts/dev/check-doc-paths.py` skips its files; don't trust its paths.
35 changes: 35 additions & 0 deletions .agents/AGENTS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# .agents

Machine-read config for agent workflow and the ratchet baselines behind the repo checks. Not code, but wrong edits here silently loosen a guard.

## Files

- `agent-contract.json` — areas, path prefixes, owning docs, invariants, manual proof. Read by `scripts/dev/agent-context.py` and `scripts/dev/agent-check.py`. A new `AGENTS.md` for an area belongs in its `docs` list.
- `test-matrix.yml` — changed path to required checks. Drives `bash check.sh`, `scripts/dev/agent-preflight.sh`, and `scripts/dev/test-matrix-checks.py`. Commands run only from the allowed executables in `scripts/dev/agent-check.py`.
- `qa-gates.yml`, `board-scorecard.yml` — risk-to-gate map and per-board scoring registry (`docs/board-scorecard.md`).
- `modules.json` — every `Sources/**/*.swift` file maps to one module, with the modules and Core tiers it may name. A new top-level `Sources/` folder needs an entry here and an `AGENTS.md`.
- `plugins/marketplace.json` — local plugin marketplace entry for the companion build.
- `*-baseline.json` — grandfathered violations. See below.

## Baselines only shrink

| Baseline | Guard | Shrink with |
| --- | --- | --- |
| `file-size-baseline.json` (Swift files over 800 lines) | `scripts/dev/check-file-size.py` | `--shrink` |
| `test-shape-baseline.json` (source-text and wall-clock tests) | `scripts/dev/check-test-shape.py` | `--shrink` |
| `source-pin-baseline.json` (`resolved-pins` counts per test file) | `scripts/dev/check-source-pins.py` | `--count-baseline --shrink` |
| `concurrency-baseline.json` (Swift 6 warnings per `Sources/` folder) | `scripts/dev/concurrency-census.sh` | `--shrink` |

- The `--shrink` flags only lower existing counts and drop dead entries. They never add a folder or raise a count; new violations require a reviewed human edit.
- Raising a baseline or adding an entry is a reviewed human edit with the reason in the PR. Don't do it to make a check pass; split the file, move the type down, or pass plain values instead.
- A baseline entry that no longer applies fails the check until you shrink it, so the files carry no dead entries.
- `check-module-boundaries.py` is a lexer. A surprising violation is more likely a checker bug than a real edge: fix the checker or add to `ambiguousNames` with a reason, don't baseline noise.
- `concurrency-census.sh` needs prebuilt deps (`bash build-deps.sh`).

## Editing the contract and matrix

- Keep `agent-contract.json` `docs` entries pointing at files that exist, and consistent with `agentsDoc` in `modules.json`.
- Run `python3 scripts/dev/agent-context.py <paths>` to see what an area change resolves to, and `python3 scripts/dev/agent-check.py --self-test` after changing the matrix or contract.
- `AGENTS.md` at the repo root wins for workflow when it disagrees with these files.

Module boundaries have no baseline or shrink mode: every forbidden crossing fails.
154 changes: 150 additions & 4 deletions .agents/agent-contract.json
Original file line number Diff line number Diff line change
Expand Up @@ -149,7 +149,7 @@
"docs/release-packaging.md",
"docs/sparkle-updates.md"
],
"docs": ["docs/release-packaging.md", "docs/sparkle-updates.md"],
"docs": ["scripts/release/AGENTS.md", "docs/release-packaging.md", "docs/sparkle-updates.md"],
"keywords": ["release", "beta", "signing", "notarization", "sparkle", "homebrew", "appcast", "website", "download page", "transcripted.app", "notarize", "release candidate", "dmg"],
"owns": "Distribution configuration, packaging, signing, notarization, Sparkle, and Homebrew.",
"invariants": [
Expand All @@ -162,7 +162,7 @@
{
"id": "tests",
"path_prefixes": ["Tests/"],
"docs": ["Tests/README.md"],
"docs": ["Tests/AGENTS.md", "Tests/README.md"],
"keywords": ["test", "fast tests", "integration", "e2e", "fixture", "qa"],
"owns": "Fast tests, package tests, deterministic smoke fixtures, and test contracts.",
"invariants": [
Expand All @@ -176,7 +176,7 @@
},
{
"id": "agent-workflow",
"path_prefixes": [".agents/", ".github/", "scripts/dev/"],
"path_prefixes": ["scripts/dev/"],
"exact_paths": ["AGENTS.md", "CLAUDE.md", "WORKFLOW.md"],
"docs": ["AGENTS.md", "docs/agent-closeout.md"],
"keywords": ["agent", "codex", "claude", "preflight", "workflow", "review", "context"],
Expand All @@ -198,7 +198,133 @@
"Tools remain local-first and consume saved artifacts through documented seams.",
"Run the owning package tests for every tool change."
],
"manual_proof": ["Host-client connection behavior for MCP or installed tooling changes."]
"manual_proof": []
},
{
"id": "tools-capture-kit",
"path_prefixes": [
"Tools/TranscriptedCaptureKit/"
],
"docs": [
"Tools/TranscriptedCaptureKit/AGENTS.md"
],
"keywords": ["capture kit", "capture-library parsing"],
"owns": "Shared capture-library resolution and Markdown parsing.",
"invariants": [
"Tools remain local-first and consume saved artifacts through documented seams."
],
"manual_proof": []
},
{
"id": "tools-cli",
"path_prefixes": [
"Tools/TranscriptedCLI/"
],
"docs": [
"Tools/TranscriptedCLI/AGENTS.md"
],
"keywords": ["offline cli", "transcripted cli"],
"owns": "Local capture CLI and offline transcription.",
"invariants": [
"Tools remain local-first and consume saved artifacts through documented seams."
],
"manual_proof": []
},
{
"id": "tools-mcp",
"path_prefixes": [
"Tools/TranscriptedMCP/"
],
"docs": [
"Tools/TranscriptedMCP/AGENTS.md"
],
"keywords": ["mcp", "host-client"],
"owns": "Saved-capture MCP tools and opt-in companion controls.",
"invariants": [
"Tools remain local-first and consume saved artifacts through documented seams."
],
"manual_proof": [
"Host-client connection behavior for MCP or installed tooling changes."
]
},
{
"id": "tools-qa",
"path_prefixes": [
"Tools/TranscriptedQA/"
],
"docs": [
"Tools/TranscriptedQA/AGENTS.md"
],
"keywords": ["qa tool", "artifact validator"],
"owns": "Artifact validators and isolated smoke tools.",
"invariants": [
"Tools remain local-first and consume saved artifacts through documented seams."
],
"manual_proof": []
},
{
"id": "tools-speaker-eval",
"path_prefixes": [
"Tools/SpeakerEvalHarness/"
],
"docs": [
"Tools/SpeakerEvalHarness/AGENTS.md"
],
"keywords": ["speaker eval", "corpus evaluation"],
"owns": "Headless speaker evaluation and corpus tooling.",
"invariants": [
"Tools remain local-first and consume saved artifacts through documented seams."
],
"manual_proof": []
},
{
"id": "tools-lab",
"path_prefixes": [
"Tools/TranscriptedLab/"
],
"docs": [
"Tools/TranscriptedLab/AGENTS.md"
],
"keywords": ["transcripted lab", "native workbench"],
"owns": "Native experiment workbench and CLI.",
"invariants": [
"Tools remain local-first and consume saved artifacts through documented seams."
],
"manual_proof": []
},
{
"id": "tools-live",
"path_prefixes": [
"Tools/TranscriptedLive/"
],
"docs": [
"Tools/TranscriptedLive/AGENTS.md"
],
"keywords": ["live broker", "live transport"],
"owns": "Opt-in live meeting broker and transports.",
"invariants": [
"Tools remain local-first and consume saved artifacts through documented seams."
],
"manual_proof": [
"Live transport and client connection behavior."
]
},
{
"id": "tools-companion",
"path_prefixes": [
"Tools/TranscriptedCompanion/"
],
"docs": [
"Tools/TranscriptedCompanion/AGENTS.md"
],
"keywords": ["companion plugin", "plugin packaging"],
"owns": "Portable plugin packaging and fixture tests.",
"invariants": [
"Tools remain local-first and consume saved artifacts through documented seams."
],
"manual_proof": [
"Host-client connection behavior for installed companion tooling."
]
},
{
"id": "scripts-ops",
Expand Down Expand Up @@ -318,6 +444,26 @@
"Do not infer product behavior from archived or generated material."
],
"manual_proof": []
},
{
"id": "agent-config",
"path_prefixes": [".agents/"],
"exact_paths": [],
"docs": ["AGENTS.md", ".agents/AGENTS.md"],
"keywords": [],
"owns": "Machine-readable agent ownership, proof routing and shrink-only baselines.",
"invariants": ["Use one machine-readable source for ownership and proof routing.", "Do not duplicate executable check rules in prose.", "Scale orchestration with risk instead of file count alone."],
"manual_proof": []
},
{
"id": "github-workflows",
"path_prefixes": [".github/"],
"exact_paths": [],
"docs": ["AGENTS.md", ".github/AGENTS.md"],
"keywords": [],
"owns": "GitHub workflows, branch-check contracts and trusted release automation.",
"invariants": ["Use one machine-readable source for ownership and proof routing.", "Do not duplicate executable check rules in prose.", "Scale orchestration with risk instead of file count alone."],
"manual_proof": []
}
]
}
7 changes: 5 additions & 2 deletions .agents/auto-merge-lanes.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,8 @@
"blocking_labels": [
"needs owner review",
"do not merge",
"hold"
"hold",
"waiting-on-human"
],
"allowed_authors": [
"r3dbars"
Expand Down Expand Up @@ -37,7 +38,9 @@
".agents/modules.json",
".agents/auto-merge-lanes.json",
"AGENTS.md",
"WORKFLOW.md"
"WORKFLOW.md",
"docs/automations/**",
"docs/threat-model.md"
],
"lanes": [
{
Expand Down
13 changes: 4 additions & 9 deletions .agents/file-size-baseline.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,9 @@
"Sources/Meeting/MeetingImportedAudioPreparer.swift": 1052,
"Sources/Meeting/MeetingPromptHeuristics.swift": 992,
"Sources/Meeting/MeetingSessionController.swift": 842,
"Sources/Observability/AnalyticsReporter.swift": 889,
"Sources/Observability/AnalyticsReporter.swift": 885,
"Sources/Observability/SparkleUpdaterController.swift": 1177,
"Sources/Speech/ParakeetDeviceRecovery.swift": 805,
"Sources/Support/TranscriptedPermissionAccess.swift": 975,
"Sources/TranscriptedCore/Audio/Audio.swift": 813,
"Sources/TranscriptedCore/Audio/AudioDeviceRecovery.swift": 1022,
"Sources/TranscriptedCore/Audio/CoreAudioSystemAudioCapture.swift": 1056,
Expand All @@ -21,16 +20,12 @@
"Sources/TranscriptedCore/Services/FailedTranscriptionManager.swift": 856,
"Sources/TranscriptedCore/Speaker/RetroactiveSpeakerUpdater.swift": 1421,
"Sources/TranscriptedCore/Speaker/SpeakerProfileProvenance.swift": 885,
"Sources/TranscriptedKeyboard/GhostInputController.swift": 1434,
"Sources/TranscriptedWriting/Core/Text/WritingSecretScrubber.swift": 1459,
"Sources/TranscriptedWriting/Runtime/PersonalHistory/PersonalHistoryStore.swift": 870,
"Sources/TranscriptedWriting/Core/Text/WritingSecretScrubber.swift": 1286,
"Sources/TranscriptedWriting/Runtime/ScreenMemory/ScreenCaptureService.swift": 920,
"Sources/UI/Overlay/MeetingOverlayController.swift": 1297,
"Sources/UI/Overlay/NotchIslandSpeakerReviewView.swift": 1328,
"Sources/UI/Overlay/MeetingOverlayController.swift": 1292,
"Sources/UI/Overlay/NotchIslandView.swift": 1286,
"Sources/UI/Settings/PermissionsOnboardingView.swift": 948,
"Sources/UI/Settings/QuietHomeLibrary.swift": 1012,
"Sources/UI/Shared/DictionaryPastMeetingFix.swift": 894,
"Tools/TranscriptedQA/Sources/TranscriptedQA/Commands/UISmoke.swift": 1018
"Sources/UI/Shared/DictionaryPastMeetingFix.swift": 894
}
}
95 changes: 0 additions & 95 deletions .agents/module-boundary-baseline.json

This file was deleted.

2 changes: 1 addition & 1 deletion .agents/modules.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"_comment": "Module map for the app's Swift sources. Every Sources/**/*.swift file maps to exactly one module (longest path prefix wins). mayDependOn lists the modules whose types a module may name; Core:<tier> grants a slice of TranscriptedCore's public types (Core:core-engine is all of it). Checked by scripts/dev/check-module-boundaries.py; grandfathered crossings live in .agents/module-boundary-baseline.json. A new top-level Sources/ folder needs an entry here and an AGENTS.md.",
"_comment": "Module map for the app's Swift sources. Every Sources/**/*.swift file maps to exactly one module (longest path prefix wins). mayDependOn lists the modules whose types a module may name; Core:<tier> grants a slice of TranscriptedCore's public types (Core:core-engine is all of it). Checked by scripts/dev/check-module-boundaries.py; nothing is grandfathered, so every crossing fails. A new top-level Sources/ folder needs an entry here and an AGENTS.md.",
"modules": [
{
"name": "Core",
Expand Down
Loading
Loading