summaryrefslogtreecommitdiff
path: root/frontend/src/services/directiveApi.ts
diff options
context:
space:
mode:
authorsoryu <soryu@soryu.co>2026-04-28 19:12:52 +0100
committerGitHub <noreply@github.com>2026-04-28 19:12:52 +0100
commitd1fdfb140cc440664f77a24886172f9976a05a31 (patch)
tree454739f80dde60fc6c1cd97acbaef3223ac041c6 /frontend/src/services/directiveApi.ts
parent636694182fe9381479f2e9062229dda3838c5421 (diff)
downloadsoryu-d1fdfb140cc440664f77a24886172f9976a05a31.tar.gz
soryu-d1fdfb140cc440664f77a24886172f9976a05a31.zip
feat: revert broken directive PRs, re-implement Lexical document orchestrator (#98)
* feat: soryu-co/soryu - makima: Revert broken directive PRs and verify clean build * feat: soryu-co/soryu - makima: Re-implement frontend: Lexical document editor with feature flag and base components * WIP: heartbeat checkpoint * feat: soryu-co/soryu - makima: Add contract blocks, expandable log rows, and interaction controls * WIP: heartbeat checkpoint * feat: soryu-co/soryu - makima: End-to-end build verification and integration polish
Diffstat (limited to 'frontend/src/services/directiveApi.ts')
-rw-r--r--frontend/src/services/directiveApi.ts21
1 files changed, 21 insertions, 0 deletions
diff --git a/frontend/src/services/directiveApi.ts b/frontend/src/services/directiveApi.ts
index 4d1fd82..fcb6636 100644
--- a/frontend/src/services/directiveApi.ts
+++ b/frontend/src/services/directiveApi.ts
@@ -162,3 +162,24 @@ export async function startTask(taskId: string): Promise<void> {
method: 'POST',
})
}
+
+// ---- Contract interaction APIs ----
+
+export async function sendContractMessage(taskId: string, message: string): Promise<void> {
+ await apiFetch(`/api/v1/mesh/tasks/${taskId}/message`, {
+ method: 'POST',
+ body: JSON.stringify({ message }),
+ })
+}
+
+export async function interruptContract(taskId: string): Promise<void> {
+ await apiFetch(`/api/v1/mesh/tasks/${taskId}/message`, {
+ method: 'POST',
+ body: JSON.stringify({ message: '/interrupt' }),
+ })
+}
+
+export async function getContractOutput(taskId: string): Promise<{ output: string }> {
+ const response = await apiFetch(`/api/v1/mesh/tasks/${taskId}/output`)
+ return response.json()
+}