[feature] settings: auto-analyze toggle so an external AI can own recording analysis - #230
Merged
Merged
Conversation
…ording analysis Settings.autoStudyAnalysis (default true — existing behavior is unchanged, and old persisted states fall back to true through the settings merge). Off, the study pipeline dispatches nothing: an imported or finished recording stays UNANALYZED so an external AI can claim it over MCP (list_recordings' `analyzed` flag) and write the analysis back with set_recording_analysis. The ingest wizard skips its Confirm-time pass for the same reason. Manual regeneration still works either way: regenerateArtifact and reanalyzeAll pin store.studyManualForId to the loaded replay id, which the pipeline ORs into StudyPipelineFacts.autoAnalyze — so one recording can be analyzed on demand while the switch stays off. The pin is compared by id, so loading another recording drops it without any reset path. Display follows the same fact: with auto off, untouched artifacts read "idle" instead of queuing forever against a pipeline that will never run.
|
YJack0000
added a commit
that referenced
this pull request
Aug 17, 2026
The site and the README were still selling three subsystems that shipped their last release weeks ago — the live intelligence board, the accounts mini-CRM, and live voice translation — while the thing that actually grew, the MCP server, got one code block and three bullet points. Both are rewritten around where the app converged in v0.22.14–v0.22.18: record, transcribe, analyze, search, and an MCP surface wide enough that an external agent can own the library, including the analysis. website/index.html - Hero, metadata, OG/Twitter cards and JSON-LD rewritten around the record + MCP story instead of real-time coaching. Pre-flight is gone from the workflow steps; meeting context replaces the meeting-type picker. - The MCP section grows from one code block to all 48 tools in five groups, each name checked against src-tauri/src/mcp.rs, plus the auto-analyze-off handover flow that #230 and #229 built. - The iPhone section gets the real App Store link (id6795031201). Android is described honestly as built and syncing but not on Play yet. - Footer regrouped into Product / Project / Legal & support; account deletion moves out of the top-level nav into Legal (the /account-deletion/ URL is unchanged — Play requires it to stay reachable). - Pathors is de-emphasised: the nav link and the "A Pathors AI open source project" line are gone, the JSON-LD Organization graph collapses to a single author field, and the open-source section explains the origin without leaning on the brand. website/{privacy,support,account-deletion} - English-only, per the repository convention. lang was zh-Hant with an "English summary" appended; now there is one language and no duplication. - Support gains three desktop entries that did not exist before: a failed system-audio tap, an MCP client that cannot connect, and analysis not running because auto-analyze is off. README.md - Drops the live-translation section, the Gemini-key install step and the virtual-mic build step. Adds the MCP server as a first-class section with the tool table and the external-analyst flow. showcase-accounts.png is deleted: it pictures the accounts mini-CRM removed in #245 and nothing referenced it any more. Note that the remaining desktop screenshots predate the removals — hero still shows the intel board — and need a reshoot in a follow-up.
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.



What this changes
Adds
Settings.autoStudyAnalysis(default true — existing behavior unchanged). When switched off:list_recordings'analyzedflag) and write results back withset_recording_analysis;Manual regeneration still works either way:
regenerateArtifact/reanalyzeAllpinstore.studyManualForIdto the loaded replay id, whichfactsOfORs intoStudyPipelineFacts.autoAnalyze. So one recording can be analyzed on demand while the switch stays off. The pin is compared by id, so loading a different recording drops it — no reset path has to remember it.The toggle sits in the MCP settings panel, since turning it off is exactly what hands analysis to the MCP client configured on that page.
Why
Follow-up to #229, which added the MCP write-back surface (
update_recording_meta,set_recording_analysis). With that in place the remaining friction is that every recording still gets a built-in pass first, which an external analyst then has to overwrite — wasted model spend, and a window where the saved analysis is the one nobody wants. This makes "external AI owns the analysis" a real mode instead of a race.Note:
StudyPipelineFacts.autoAnalyzeis unrelated to the store's live-modeautoAnalyzere-analysis timer; the JSDoc calls that out.How it was verified
bunx tsc --noEmitpassesbunx vitest runpasses (332 tests;studyPipeline.test.ts14 → 16)cargo checkclean (Rust untouched)evaluateStagesreturns nothing when auto is off even with every prerequisite met, and is unchanged when onzh-TWandeninsrc/i18n/messages.tsbun run tauri dev) and exercised the change — verified on the release build after merge