-
Notifications
You must be signed in to change notification settings - Fork 2.6k
feat: add 6 Boost VC AI capability domains #2261
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
Sathvik-1007
wants to merge
48
commits into
tinyhumansai:main
Choose a base branch
from
Sathvik-1007:feat/boost-vc-ai-capabilities
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
48 commits
Select commit
Hold shift + click to select a range
e2ff9de
feat: add 6 Boost VC AI capability domains
Sathvik-1007 e6e4843
fix: add schema registrations + fix deadlock
Sathvik-1007 e284445
fix: prevent panics on UTF-8 slice + short ID
Sathvik-1007 51c76c1
feat: add RPC E2E tests + capability plan doc
Sathvik-1007 cec9af6
fix: correct E2E test params + fmt
Sathvik-1007 f59a324
ci: retrigger checks
Sathvik-1007 f396b2e
feat(chat-with-data): add real SQL generation via sqlparser
Sathvik-1007 0d801f3
feat(operator-inbox): add real email parsing via mail-parser
Sathvik-1007 163fce1
feat(boost-vc): add real engines — scoring, LLM intent, IMAP, anomaly
Sathvik-1007 c4f053e
feat: wire LLM into draft gen, summarization, SQL gen
Sathvik-1007 43047a0
refactor: use create_chat_provider for LLM calls
Sathvik-1007 c96c58c
fix: correct LLM provider method + cleanup
Sathvik-1007 1bee788
fix: sql_gen empty validation + group-by priority
Sathvik-1007 656fa39
fix: align test assertions with wired implementations
Sathvik-1007 0cc213e
feat: make LLM primary intelligence across all modules
Sathvik-1007 30049ea
fix(voice_actions): remove fake execute_action, store LLM intents, au…
Sathvik-1007 8a96796
style: cargo fmt
Sathvik-1007 ac95e8d
feat(chat_with_data): add in-memory query execution, proactive anomal…
Sathvik-1007 ab4e226
refactor: remove dead code, add tool_recommendation flow, harden SQL …
Sathvik-1007 e838267
fix: block subqueries in is_safe_query
Sathvik-1007 1b5e4e4
fix: harden voice brain error propagation, SQL AST execution, E2E cov…
Sathvik-1007 e98347b
style: cargo fmt
Sathvik-1007 6f20b73
fix: harden voice domains — session eviction, race guard, store caps,…
Sathvik-1007 d4f5e23
refactor: dedup audio utils, add session_id validation
Sathvik-1007 f274c0c
feat(voice): harden mutex safety, rename password field, add ws route…
Sathvik-1007 713f48a
feat: replace hand-rolled algos with proper crates
Sathvik-1007 ba4fc08
fix: audit fixes — sql inject, race cond, perf, validation
Sathvik-1007 0470150
fix: clippy never_loop + coderabbit nits
Sathvik-1007 30bbe08
fix: propagate non-retryable stream errors
Sathvik-1007 315a23f
fix: update streaming test for non-retryable error forwarding
Sathvik-1007 36b63f4
fix: address 20 CodeRabbit review issues
Sathvik-1007 82a59dd
fix: propagate row decode errors in schema/tables queries
Sathvik-1007 8ea1f97
refactor: adopt RpcOutcome<T> for guided_flows
Sathvik-1007 9496590
fix: scheme validation + diarize fallback segment
Sathvik-1007 d211054
fix: block IPv6 link-local+unique-local in SSRF check
Sathvik-1007 2c314e3
chore: trigger CI
Sathvik-1007 78dbfc1
chore: retrigger CI
Sathvik-1007 0535921
merge: upstream/main into feat/boost-vc-ai-capabilities
Sathvik-1007 1b5d189
merge: upstream/main — resolve all.rs + catalog.rs conflicts
Sathvik-1007 b3cbb69
ci: retrigger
Sathvik-1007 7edf358
ci: retrigger coverage gate
Sathvik-1007 ab07bce
chore: retrigger ci
Sathvik-1007 4eb7d48
fix: persist test race — unique tmp dir per test
Sathvik-1007 9b73ef1
Merge remote-tracking branch 'upstream/main' into pr/2261
senamakel 1a358d3
Merge remote-tracking branch 'upstream/main' into pr/2261
senamakel b46e6d7
Merge branch 'main' into feat/boost-vc-ai-capabilities
Sathvik-1007 8897b42
merge: upstream/main — resolve json_rpc_e2e conflict
Sathvik-1007 9d4452b
fix: missing closing brace in e2e test
Sathvik-1007 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
Large diffs are not rendered by default.
Oops, something went wrong.
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
Large diffs are not rendered by default.
Oops, something went wrong.
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,77 @@ | ||
| # Boost VC AI Capability Plan | ||
|
|
||
| ## Commercial Inspirations | ||
|
|
||
| | Capability | Inspiration | What we replicate | | ||
| |-----------|-------------|-------------------| | ||
| | Voice Foundation | Siri, Google Assistant | Local STT (Whisper) + TTS (Piper) desktop assistant | | ||
| | Live Captions | Otter.ai, Microsoft Teams captions | Real-time transcription with saved transcripts | | ||
| | Voice Actions | Alexa Skills, Siri Shortcuts | Utterance → controller-backed action routing | | ||
| | Operator Inbox | Front, Superhuman | Triage, draft replies, follow-up scheduling | | ||
| | Chat-with-Data | Julius AI, ChatGPT Code Interpreter | NL queries over local/connected datasets | | ||
| | Guided Recommendations | Typeform, Intercom Product Tours | Quiz-style intake flows with branching logic | | ||
|
|
||
| ## Features Replicated (v1) | ||
|
|
||
| ### Voice Foundation (#1831) | ||
| - Session lifecycle (start/stop/status) | ||
| - PCM buffering with VAD (voice activity detection) | ||
| - STT via whisper-rs (local, open-source) | ||
| - TTS via Piper (local, open-source) | ||
| - LLM turn orchestration (STT → LLM → TTS) | ||
| - Conversation history context | ||
|
|
||
| ### Live Captions (#1832) | ||
| - Transcript lifecycle (start/pause/resume/complete) | ||
| - Real-time segment appending with timestamps | ||
| - Extractive summarization on completed transcripts | ||
| - Source-agnostic (microphone or desktop audio) | ||
|
|
||
| ### Voice Actions (#1833) | ||
| - Action registration with trigger phrases | ||
| - Fuzzy intent recognition (word overlap scoring) | ||
| - Safety levels (safe/confirmation_required/destructive) | ||
| - Confirmation flow for non-safe actions | ||
| - Execution tracking with status | ||
|
|
||
| ### Operator Inbox (#1834) | ||
| - Priority scoring (urgent/high/medium/low) | ||
| - Multi-tone draft generation (professional/casual/formal) | ||
| - Follow-up scheduling | ||
| - Archive workflow | ||
|
|
||
| ### Chat-with-Data (#1835) | ||
| - Dataset registration (CSV, database, API sources) | ||
| - Natural language query routing | ||
| - Proactive insight generation (anomaly detection) | ||
| - Dataset listing and metadata | ||
|
|
||
| ### Guided Recommendations (#1836) | ||
| - Flow definition with branching steps | ||
| - Answer validation (type checking, choice validation) | ||
| - State machine (active → completed) | ||
| - Recommendation generation based on answers | ||
| - Builtin onboarding setup flow | ||
|
|
||
| ## Explicit Non-Goals (v1) | ||
|
|
||
| - **No real-time streaming STT** — batch transcription per VAD segment only | ||
| - **No speaker diarization** — single-speaker assumption for v1 | ||
| - **No actual email/Slack integration** — operator inbox is schema-only, no transport | ||
| - **No real SQL execution** — chat-with-data generates mock query results | ||
| - **No ML-based intent recognition** — word overlap heuristic, not a trained model | ||
| - **No persistent storage** — all state is in-memory (process-lifetime) | ||
| - **No frontend components** — backend domain modules only, frontend wiring is follow-up | ||
| - **No multi-language TTS** — English-only for Piper in v1 | ||
|
|
||
| ## Architecture | ||
|
|
||
| All capabilities follow the same pattern: | ||
| - Rust domain module under `src/openhuman/<domain>/` | ||
| - `types.rs` — domain types with serde | ||
| - `engine.rs` — business logic + state machine | ||
| - `rpc.rs` — JSON-RPC handlers | ||
| - `schemas.rs` — controller registry schemas (Def pattern) | ||
| - Wired into `core/all.rs` (controller registry + namespace description) | ||
| - Catalog entry in `about_app/catalog.rs` | ||
| - Structured tracing (`debug!`/`info!`/`warn!`) at all state transitions |
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
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
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
Oops, something went wrong.
Oops, something went wrong.
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.
Uh oh!
There was an error while loading. Please reload this page.