Mercurial
diff infinite_canvas/BUILD @ 280:49e9e591c9bb
Add persistent dictation, prewarmed WebRTC speech input, Copilot SDK routing, animated conversation lifecycle controls, parking, and architecture coverage.
| author | MrJuneJune <me@mrjunejune.com> |
|---|---|
| date | Tue, 18 Aug 2026 19:14:53 -0700 |
| parents | 8d560f50ed4c |
| children | c57149ad216e |
line wrap: on
line diff
--- a/infinite_canvas/BUILD Mon Aug 17 22:22:36 2026 -0700 +++ b/infinite_canvas/BUILD Tue Aug 18 19:14:53 2026 -0700 @@ -2,6 +2,7 @@ load("@rules_cc//cc:cc_library.bzl", "cc_library") load("@rules_cc//cc:cc_test.bzl", "cc_test") load("@rules_shell//shell:sh_binary.bzl", "sh_binary") +load("@rules_shell//shell:sh_test.bzl", "sh_test") load("//gui_ze:gui_ze.bzl", "move_files_into_dir") load("//third_party/raylib:raylib.bzl", "raylib_binary") @@ -75,6 +76,28 @@ }), ) +cc_library( + name = "agent_service", + srcs = select({ + "//config:linux": ["agent_service_copilot.c"], + "//config:macos": ["agent_service_stub.c"], + "//config:windows": ["agent_service_stub.c"], + "//conditions:default": ["agent_service_stub.c"], + }), + hdrs = ["agent_service.h"], + deps = [ + ":canvas", + "//dowa:dowa", + ] + select({ + "//config:linux": ["//mrjunejune:inference_bridge"], + "//conditions:default": [], + }), + linkopts = select({ + "//config:linux": ["-lpthread"], + "//conditions:default": [], + }), +) + filegroup( name = "inter_font", srcs = ["assets/Inter-Variable.ttf"], @@ -124,6 +147,7 @@ "//conditions:default": [], }), deps = [ + ":agent_service", ":canvas", ":web_surface", "//dowa:dowa", @@ -153,6 +177,7 @@ }), defines = ["INFINITE_CANVAS_DEV_UI"], deps = [ + ":agent_service", ":canvas", ":dev_ui", ":theme", @@ -174,6 +199,31 @@ data = [":dev_bin"], ) +sh_binary( + name = "orchestration_dev", + srcs = ["run_orchestration_dev.sh"], + data = [ + ":dev", + "//dictation:server", + "//mrjunejune:canvas_orchestration_launcher", + "//mrjunejune/inference:copilot_sidecar_zip", + "//mrjunejune/inference:litellm_config.yaml", + "//mrjunejune/inference:litellm_proxy_zip", + "@copilot_cli_linux_x86_64//:copilot", + "@python_3_11//:files", + "@python_3_11//:python3", + ], + target_compatible_with = select({ + "//config:linux": [], + "//conditions:default": ["@platforms//:incompatible"], + }), +) + +alias( + name = "agent_dev", + actual = ":orchestration_dev", +) + alias( name = "app", actual = select({ @@ -208,6 +258,7 @@ ], defines = ["INFINITE_CANVAS_DEV_UI"], deps = [ + ":agent_service", ":canvas", ":dev_ui", ":web_surface", @@ -245,6 +296,41 @@ deps = [":canvas"], ) +cc_test( + name = "agent_service_test", + srcs = ["agent_service_test.c"], + args = [ + "$(rootpath //mrjunejune/test:inference_bridge_fake_sidecar)", + ], + data = [ + "//mrjunejune/test:inference_bridge_fake_sidecar", + ], + deps = [ + ":agent_service", + "//dowa:dowa", + ], + linkopts = ["-lpthread"], + target_compatible_with = select({ + "//config:linux": [], + "//conditions:default": ["@platforms//:incompatible"], + }), +) + +sh_test( + name = "dictation_policy_test", + srcs = ["dictation_policy_test.sh"], + args = [ + "$(rootpath :web_surface_native.cc)", + "$(rootpath :main.c)", + "$(rootpath :dev_ui.c)", + ], + data = [ + "dev_ui.c", + "main.c", + "web_surface_native.cc", + ], +) + sh_binary( name = "serve", srcs = ["serve.sh"],