@triflux/remote 10.51.0 → 10.53.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. package/cto/brief.mjs +0 -8
  2. package/cto/collect.mjs +1 -127
  3. package/cto/current.schema.json +2 -19
  4. package/cto/hygiene.mjs +2 -61
  5. package/cto/lake-root.mjs +0 -56
  6. package/cto/status.mjs +5 -139
  7. package/hub/index.mjs +0 -9
  8. package/hub/team/agents-row-attach.py +120 -0
  9. package/hub/team/agents-row.mjs +200 -0
  10. package/hub/team/claude-daemon-control.mjs +1 -2
  11. package/hub/team/claude-session-projection.mjs +5 -73
  12. package/hub/team/claude-transcript.mjs +19 -0
  13. package/hub/team/cli/commands/debug.mjs +1 -2
  14. package/hub/team/cli/commands/start/index.mjs +2 -1
  15. package/hub/team/cli/commands/start/start-headless.mjs +2 -0
  16. package/hub/team/cli/commands/start/start-mux.mjs +2 -4
  17. package/hub/team/cli/services/state-store.mjs +5 -20
  18. package/hub/team/headless.mjs +132 -551
  19. package/hub/team/psmux.mjs +3 -33
  20. package/hub/team/results-index.mjs +92 -0
  21. package/hub/team/session-context.mjs +1 -1
  22. package/hub/team/tui-viewer.mjs +9 -56
  23. package/hub/team/tui.mjs +0 -37
  24. package/hub/team/uds-orchestrator.mjs +20 -599
  25. package/hub/workers/factory.mjs +6 -51
  26. package/hub/workers/interface.mjs +1 -7
  27. package/hub/workers/lib/jsonrpc-core.mjs +11 -0
  28. package/hub/workers/lib/jsonrpc-ws-uds.mjs +5 -6
  29. package/package.json +3 -8
  30. package/scripts/lib/agent-route-policy.mjs +0 -67
  31. package/scripts/lib/cli-claude.mjs +0 -12
  32. package/scripts/lib/env-probe.mjs +0 -70
  33. package/scripts/lib/legacy-mcp-cleanup.mjs +283 -0
  34. package/scripts/lib/mcp-guard-engine.mjs +42 -101
  35. package/hub/hub-lifecycle.mjs +0 -248
  36. package/hub/pipe.mjs +0 -825
  37. package/hub/promote-penalties.mjs +0 -138
  38. package/hub/public/dashboard.html +0 -416
  39. package/hub/schema.sql +0 -209
  40. package/hub/server.mjs +0 -3048
  41. package/hub/store-adapter.mjs +0 -182
  42. package/hub/store.mjs +0 -1736
  43. package/hub/team/cli/services/hub-client.mjs +0 -178
  44. package/hub/team/conductor-registry.mjs +0 -121
  45. package/hub/team/cto-auto-collect.mjs +0 -115
  46. package/hub/team/lead-control.mjs +0 -191
  47. package/hub/team/session-sync.mjs +0 -316
  48. package/hub/team/swarm-intent.mjs +0 -18
  49. package/hub/team/synapse-cli.mjs +0 -458
  50. package/hub/team/synapse-http.mjs +0 -311
  51. package/hub/team/synapse-registry.mjs +0 -618
  52. package/hub/team/tui-synapse.mjs +0 -223
  53. package/hub/team/worker-sandbox.mjs +0 -125
  54. package/hub/tools.mjs +0 -900
  55. package/hub/workers/codex-app-server-worker.mjs +0 -1067
  56. package/hub/workers/delegator-mcp.mjs +0 -1098
  57. package/hub/workers/lib/jsonrpc-stdio.mjs +0 -204
  58. package/scripts/lib/claudemd-scanner.mjs +0 -26
  59. package/scripts/lib/context.mjs +0 -51
  60. package/scripts/lib/handoff.mjs +0 -187
  61. package/scripts/lib/logger.mjs +0 -122
  62. package/scripts/lib/stealth-fetch.mjs +0 -176
package/hub/schema.sql DELETED
@@ -1,209 +0,0 @@
1
- -- tfx-hub 상태 저장소 스키마
2
- -- SQLite WAL 모드 기반 메시지 버스
3
-
4
- -- 에이전트 등록 테이블
5
- CREATE TABLE IF NOT EXISTS agents (
6
- agent_id TEXT PRIMARY KEY,
7
- cli TEXT NOT NULL CHECK (cli IN ('codex','gemini','claude','other')),
8
- pid INTEGER,
9
- capabilities_json TEXT NOT NULL DEFAULT '[]',
10
- topics_json TEXT NOT NULL DEFAULT '[]',
11
- last_seen_ms INTEGER NOT NULL,
12
- lease_expires_ms INTEGER NOT NULL,
13
- presence_generation INTEGER NOT NULL DEFAULT 0,
14
- status TEXT NOT NULL CHECK (status IN ('online','stale','offline')),
15
- metadata_json TEXT NOT NULL DEFAULT '{}',
16
- project_id TEXT,
17
- session_id TEXT,
18
- host_id TEXT,
19
- transport_locators_json TEXT NOT NULL DEFAULT '[]'
20
- );
21
-
22
- -- 메시지 테이블
23
- CREATE TABLE IF NOT EXISTS messages (
24
- id TEXT PRIMARY KEY,
25
- type TEXT NOT NULL CHECK (type IN ('request','response','event','handoff','human_request','human_response','system')),
26
- from_agent TEXT NOT NULL,
27
- to_agent TEXT NOT NULL,
28
- topic TEXT NOT NULL,
29
- priority INTEGER NOT NULL CHECK (priority BETWEEN 1 AND 9),
30
- ttl_ms INTEGER NOT NULL,
31
- created_at_ms INTEGER NOT NULL,
32
- expires_at_ms INTEGER NOT NULL,
33
- correlation_id TEXT NOT NULL,
34
- trace_id TEXT NOT NULL,
35
- payload_json TEXT NOT NULL DEFAULT '{}',
36
- status TEXT NOT NULL CHECK (status IN ('queued','delivered','acked','expired','dead_letter')),
37
- role_key_wire TEXT
38
- );
39
-
40
- -- 동적 역할 레지스트리 (schema v6)
41
- CREATE TABLE IF NOT EXISTS role_registry (
42
- role_key_wire TEXT PRIMARY KEY,
43
- project_id TEXT NOT NULL,
44
- role_kind TEXT NOT NULL CHECK (role_kind IN ('cto','lead')),
45
- scope_id TEXT NOT NULL DEFAULT '',
46
- state TEXT NOT NULL CHECK (
47
- state IN (
48
- 'electable',
49
- 'elected-probing',
50
- 'active',
51
- 'unreachable',
52
- 'quarantined'
53
- )
54
- ),
55
- holder_agent_id TEXT,
56
- previous_holder_agent_id TEXT,
57
- epoch INTEGER NOT NULL DEFAULT 0 CHECK (epoch >= 0),
58
- activation_seq INTEGER NOT NULL DEFAULT 0 CHECK (activation_seq >= 0),
59
- activation_id TEXT,
60
- activation_deadline_ms INTEGER,
61
- holder_lease_expires_ms INTEGER,
62
- charter_version TEXT,
63
- charter_acked_epoch INTEGER,
64
- retry_count INTEGER NOT NULL DEFAULT 0,
65
- next_probe_ms INTEGER,
66
- blocked_reason TEXT,
67
- last_transition_ms INTEGER NOT NULL,
68
- last_reason TEXT NOT NULL,
69
- version INTEGER NOT NULL DEFAULT 0,
70
- CHECK (
71
- (role_kind = 'cto' AND scope_id = '') OR
72
- (role_kind = 'lead' AND scope_id <> '')
73
- ),
74
- UNIQUE(project_id, role_kind, scope_id)
75
- );
76
-
77
- CREATE TABLE IF NOT EXISTS role_candidates (
78
- role_key_wire TEXT NOT NULL,
79
- agent_id TEXT NOT NULL,
80
- source TEXT NOT NULL CHECK (source IN ('grant','standup','operator')),
81
- priority INTEGER NOT NULL DEFAULT 0,
82
- transport_locators_json TEXT NOT NULL DEFAULT '[]',
83
- consecutive_probe_failures INTEGER NOT NULL DEFAULT 0,
84
- excluded_until_ms INTEGER,
85
- last_probe_ms INTEGER,
86
- last_probe_code TEXT,
87
- updated_at_ms INTEGER NOT NULL,
88
- PRIMARY KEY(role_key_wire, agent_id),
89
- FOREIGN KEY(role_key_wire)
90
- REFERENCES role_registry(role_key_wire) ON DELETE CASCADE
91
- );
92
-
93
- -- 메시지 수신함 (배달 추적)
94
- CREATE TABLE IF NOT EXISTS message_inbox (
95
- delivery_id INTEGER PRIMARY KEY AUTOINCREMENT,
96
- message_id TEXT NOT NULL,
97
- agent_id TEXT NOT NULL,
98
- delivered_at_ms INTEGER,
99
- acked_at_ms INTEGER,
100
- attempts INTEGER NOT NULL DEFAULT 0,
101
- UNIQUE(message_id, agent_id),
102
- FOREIGN KEY(message_id) REFERENCES messages(id) ON DELETE CASCADE
103
- );
104
-
105
- -- 사용자 입력 요청 테이블
106
- CREATE TABLE IF NOT EXISTS human_requests (
107
- request_id TEXT PRIMARY KEY,
108
- requester_agent TEXT NOT NULL,
109
- kind TEXT NOT NULL CHECK (kind IN ('captcha','approval','credential','choice','text')),
110
- prompt TEXT NOT NULL,
111
- schema_json TEXT NOT NULL DEFAULT '{}',
112
- state TEXT NOT NULL CHECK (state IN ('pending','accepted','declined','cancelled','timed_out')),
113
- deadline_ms INTEGER NOT NULL,
114
- default_action TEXT NOT NULL CHECK (default_action IN ('decline','cancel','timeout_continue')),
115
- correlation_id TEXT NOT NULL,
116
- trace_id TEXT NOT NULL,
117
- response_json TEXT
118
- );
119
-
120
- -- 데드 레터 큐
121
- CREATE TABLE IF NOT EXISTS dead_letters (
122
- message_id TEXT PRIMARY KEY,
123
- reason TEXT NOT NULL,
124
- failed_at_ms INTEGER NOT NULL,
125
- last_error TEXT
126
- );
127
-
128
- -- 인덱스
129
- CREATE INDEX IF NOT EXISTS idx_messages_status ON messages(status);
130
- CREATE INDEX IF NOT EXISTS idx_messages_to_agent ON messages(to_agent, status);
131
- CREATE INDEX IF NOT EXISTS idx_messages_correlation ON messages(correlation_id);
132
- CREATE INDEX IF NOT EXISTS idx_messages_trace ON messages(trace_id);
133
- CREATE INDEX IF NOT EXISTS idx_messages_expires ON messages(expires_at_ms);
134
- CREATE INDEX IF NOT EXISTS idx_messages_priority ON messages(priority DESC, created_at_ms ASC);
135
- CREATE INDEX IF NOT EXISTS idx_messages_role_key ON messages(role_key_wire, status, expires_at_ms);
136
- CREATE INDEX IF NOT EXISTS idx_inbox_agent ON message_inbox(agent_id, delivered_at_ms);
137
- CREATE INDEX IF NOT EXISTS idx_inbox_message ON message_inbox(message_id);
138
- CREATE INDEX IF NOT EXISTS idx_human_requests_state ON human_requests(state);
139
- CREATE INDEX IF NOT EXISTS idx_agents_status ON agents(status);
140
- CREATE INDEX IF NOT EXISTS idx_agents_lease ON agents(lease_expires_ms);
141
-
142
- -- Assign Job 테이블
143
- CREATE TABLE IF NOT EXISTS assign_jobs (
144
- job_id TEXT PRIMARY KEY,
145
- supervisor_agent TEXT NOT NULL,
146
- worker_agent TEXT NOT NULL,
147
- topic TEXT NOT NULL DEFAULT 'assign.job',
148
- task TEXT NOT NULL DEFAULT '',
149
- payload_json TEXT NOT NULL DEFAULT '{}',
150
- status TEXT NOT NULL CHECK (status IN ('queued','running','succeeded','failed','timed_out')),
151
- attempt INTEGER NOT NULL DEFAULT 1,
152
- retry_count INTEGER NOT NULL DEFAULT 0,
153
- max_retries INTEGER NOT NULL DEFAULT 0,
154
- priority INTEGER NOT NULL DEFAULT 5 CHECK (priority BETWEEN 1 AND 9),
155
- ttl_ms INTEGER NOT NULL DEFAULT 600000,
156
- timeout_ms INTEGER NOT NULL DEFAULT 600000,
157
- deadline_ms INTEGER,
158
- trace_id TEXT NOT NULL,
159
- correlation_id TEXT NOT NULL,
160
- last_message_id TEXT,
161
- result_json TEXT,
162
- error_json TEXT,
163
- created_at_ms INTEGER NOT NULL,
164
- updated_at_ms INTEGER NOT NULL,
165
- started_at_ms INTEGER,
166
- dispatched_at_ms INTEGER,
167
- completed_at_ms INTEGER,
168
- last_retry_at_ms INTEGER
169
- );
170
-
171
- CREATE INDEX IF NOT EXISTS idx_assign_jobs_status ON assign_jobs(status, updated_at_ms DESC);
172
- CREATE INDEX IF NOT EXISTS idx_assign_jobs_supervisor ON assign_jobs(supervisor_agent, updated_at_ms DESC);
173
- CREATE INDEX IF NOT EXISTS idx_assign_jobs_worker ON assign_jobs(worker_agent, updated_at_ms DESC);
174
- CREATE INDEX IF NOT EXISTS idx_assign_jobs_deadline ON assign_jobs(deadline_ms, status);
175
-
176
- -- 파이프라인 상태 테이블 (Phase 2)
177
- CREATE TABLE IF NOT EXISTS pipeline_state (
178
- team_name TEXT PRIMARY KEY,
179
- phase TEXT NOT NULL DEFAULT 'plan',
180
- fix_attempt INTEGER DEFAULT 0,
181
- fix_max INTEGER DEFAULT 3,
182
- ralph_iteration INTEGER DEFAULT 0,
183
- ralph_max INTEGER DEFAULT 10,
184
- artifacts TEXT DEFAULT '{}',
185
- phase_history TEXT DEFAULT '[]',
186
- created_at INTEGER,
187
- updated_at INTEGER
188
- );
189
-
190
- -- Reflexion 에러 학습 테이블
191
- CREATE TABLE IF NOT EXISTS reflexion_entries (
192
- id TEXT PRIMARY KEY,
193
- type TEXT NOT NULL DEFAULT 'reflexion', -- reflexion | adaptive
194
- error_pattern TEXT NOT NULL, -- 에러 시그니처 (정규화)
195
- error_message TEXT NOT NULL, -- 원본 에러 메시지
196
- context_json TEXT NOT NULL DEFAULT '{}', -- { file, function, cli, agent }
197
- solution TEXT NOT NULL, -- 해결책 설명
198
- solution_code TEXT, -- 해결 코드 스니펫 (있으면)
199
- adaptive_state_json TEXT NOT NULL DEFAULT '{}', -- adaptive rule metadata
200
- confidence REAL NOT NULL DEFAULT 0.5, -- 솔루션 신뢰도 (0-1)
201
- hit_count INTEGER NOT NULL DEFAULT 1, -- 매칭 횟수
202
- success_count INTEGER NOT NULL DEFAULT 0, -- 성공 횟수
203
- last_hit_ms INTEGER NOT NULL,
204
- created_at_ms INTEGER NOT NULL,
205
- updated_at_ms INTEGER NOT NULL
206
- );
207
-
208
- CREATE INDEX IF NOT EXISTS idx_reflexion_pattern ON reflexion_entries(error_pattern);
209
- CREATE INDEX IF NOT EXISTS idx_reflexion_confidence ON reflexion_entries(confidence DESC);