sync: Idea Genealogy + Quick Capture Overhaul

From private repo:

Idea Genealogy:
- Required edge explanations across UI/tools/API/MCP
- Inferred edge schema (category/type/confidence)
- Added part_of relationship type
- Connection UI chips (Made by / Part of / Came from / Related)

Quick Capture Overhaul:
- Jina.ai fallback for JS-rendered sites (Twitter, SPAs)
- Simplified UI: removed mode buttons, auto-detect input type
- Renamed to "Add Stuff", moved to top-right
- Auto-edge creation from description entities
- Increased content summary length (500→1500 chars)

Description Generation Fix:
- Simplified prompt to "what is this"
- Added link/dimensions context
- Better creator attribution

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
“BeeRad”
2026-01-14 17:08:26 +11:00
co-authored by Claude Opus 4.5
parent f7b8b2058c
commit 2cbc950fd4
21 changed files with 1296 additions and 389 deletions
+35 -3
View File
@@ -58,10 +58,40 @@ export interface Edge {
from_node_id: number;
to_node_id: number;
context?: any;
source: 'user' | 'ai_similarity' | 'helper_name';
source: EdgeSource;
created_at: string;
}
export type EdgeSource = 'user' | 'ai_similarity' | 'helper_name';
export type EdgeContextCategory = 'attribution' | 'intellectual';
export type EdgeContextType =
| 'created_by'
| 'features'
| 'part_of'
| 'source_of'
| 'extends'
| 'supports'
| 'contradicts'
| 'related_to';
export type EdgeCreatedVia = 'ui' | 'agent' | 'mcp' | 'workflow' | 'quicklink' | 'quick_capture_auto';
export interface EdgeContext {
// SYSTEM-INFERRED (AI classifies from explanation + nodes)
category: EdgeContextCategory;
type: EdgeContextType;
confidence: number; // 0-1
inferred_at: string; // ISO timestamp
// PROVIDED AT CREATION / EDIT
explanation: string;
// SYSTEM-MANAGED
created_via: EdgeCreatedVia;
}
export interface Chat {
id: number;
user_message?: string;
@@ -120,8 +150,10 @@ export interface ChunkData {
export interface EdgeData {
from_node_id: number;
to_node_id: number;
context?: any;
source: 'user' | 'ai_similarity' | 'helper_name';
explanation: string;
created_via: EdgeCreatedVia;
source: EdgeSource;
skip_inference?: boolean; // reserved for bulk imports / migrations
}
export interface ChatData {