commit 307b277f1d3e86032d8074ff7ada637549d229c4
parent b40a1bdfd183aa25abba875d08835ee9af6407b0
Author: triesap <tyson@radroots.org>
Date: Sun, 12 Apr 2026 03:49:54 +0000
provider: collapse query rewrite into mojo runtime
Diffstat:
3 files changed, 201 insertions(+), 28 deletions(-)
diff --git a/src/hyf_core/capabilities/query_rewrite.mojo b/src/hyf_core/capabilities/query_rewrite.mojo
@@ -6,7 +6,10 @@ from hyf_assist.bridge import (
execute_query_rewrite_via_assist_bridge,
resolve_assist_bridge_status,
)
-from hyf_assist.contract import AssistQueryRewriteResult
+from hyf_assist.contract import (
+ AssistQueryRewriteResult,
+ assist_bridge_fake_endpoint_prefix,
+)
from hyf_core.capabilities.query_analysis import (
QueryAnalysis,
QueryRewriteRequest,
@@ -30,7 +33,16 @@ from hyf_core.provenance import (
ProvenanceSourceRef,
)
from hyf_core.request_context import RequestContext, assisted_execution_requested
-from hyf_runtime.config import HyfLoadedRuntimeConfig
+from hyf_provider.config import load_max_local_provider_config
+from hyf_provider.max_local import (
+ execute_query_rewrite_via_max_local_provider,
+ max_local_provider_status,
+)
+from hyf_runtime.config import (
+ HyfLoadedRuntimeConfig,
+ assist_bridge_configured,
+ assisted_execution_enabled,
+)
def _build_output(analysis: QueryAnalysis) raises -> Value:
@@ -154,34 +166,92 @@ def execute_query_rewrite_with_runtime_config(
try:
var request: QueryRewriteRequest = parse_query_rewrite_request(input)
if assisted_execution_requested(context):
- var bridge_status = resolve_assist_bridge_status(runtime_config)
- if bridge_status.reachable:
- try:
- var assisted_result = execute_query_rewrite_via_assist_bridge(
- bridge_status, request.text, context
- )
- return successful_capability(
- _build_output(assisted_result.analysis),
- meta=_build_assisted_meta(context, assisted_result),
- )
- except e:
- var fallback_analysis = analyze_query_text(
- request.text, context
- )
- return successful_capability(
- _build_output(fallback_analysis),
- meta=_build_deterministic_fallback_meta(
- context,
- fallback_analysis,
- "bridge_execution_failed",
- ),
- )
+ if not assisted_execution_enabled(runtime_config):
+ var fallback_analysis = analyze_query_text(request.text, context)
+ return successful_capability(
+ _build_output(fallback_analysis),
+ meta=_build_deterministic_fallback_meta(
+ context,
+ fallback_analysis,
+ "disabled_by_runtime_config",
+ ),
+ )
+
+ if not assist_bridge_configured(runtime_config):
+ var fallback_analysis = analyze_query_text(request.text, context)
+ return successful_capability(
+ _build_output(fallback_analysis),
+ meta=_build_deterministic_fallback_meta(
+ context, fallback_analysis, "unconfigured"
+ ),
+ )
+
+ var endpoint = String(runtime_config.effective.assist.endpoint).strip()
+ if endpoint.startswith(assist_bridge_fake_endpoint_prefix()):
+ var bridge_status = resolve_assist_bridge_status(runtime_config)
+ if bridge_status.reachable:
+ try:
+ var assisted_result = execute_query_rewrite_via_assist_bridge(
+ bridge_status, request.text, context
+ )
+ return successful_capability(
+ _build_output(assisted_result.analysis),
+ meta=_build_assisted_meta(context, assisted_result),
+ )
+ except e:
+ var fallback_analysis = analyze_query_text(
+ request.text, context
+ )
+ return successful_capability(
+ _build_output(fallback_analysis),
+ meta=_build_deterministic_fallback_meta(
+ context,
+ fallback_analysis,
+ "bridge_execution_failed",
+ ),
+ )
+
+ var fallback_analysis = analyze_query_text(request.text, context)
+ return successful_capability(
+ _build_output(fallback_analysis),
+ meta=_build_deterministic_fallback_meta(
+ context, fallback_analysis, bridge_status.state
+ ),
+ )
+
+ try:
+ var provider_config = load_max_local_provider_config()
+ var provider_status = max_local_provider_status(provider_config)
+ if provider_status.reachable:
+ try:
+ var assisted_result =
+ execute_query_rewrite_via_max_local_provider(
+ provider_config, request.text, context
+ )
+ return successful_capability(
+ _build_output(assisted_result.analysis),
+ meta=_build_assisted_meta(context, assisted_result),
+ )
+ except e:
+ var fallback_analysis = analyze_query_text(
+ request.text, context
+ )
+ return successful_capability(
+ _build_output(fallback_analysis),
+ meta=_build_deterministic_fallback_meta(
+ context,
+ fallback_analysis,
+ "bridge_execution_failed",
+ ),
+ )
+ except e:
+ pass
var fallback_analysis = analyze_query_text(request.text, context)
return successful_capability(
_build_output(fallback_analysis),
meta=_build_deterministic_fallback_meta(
- context, fallback_analysis, bridge_status.state
+ context, fallback_analysis, "unavailable"
),
)
diff --git a/tests/stdio_process_helper.mojo b/tests/stdio_process_helper.mojo
@@ -83,10 +83,11 @@ def run_stdio_entrypoint_with_2_args(
var command = String("mojo")
var include_flag = String("-I")
var include_path = String("src")
+ var vendor_include_path = String("../../../../vendor/mojo/flare")
var entrypoint_path = String(entrypoint)
var process_arg0 = String(arg0)
var process_arg1 = String(arg1)
- var argv = List[Optional[CStringSlice[ImmutAnyOrigin]]](length=8, fill={})
+ var argv = List[Optional[CStringSlice[ImmutAnyOrigin]]](length=10, fill={})
argv[0] = rebind[CStringSlice[ImmutAnyOrigin]](command.as_c_string_slice())
argv[1] = rebind[CStringSlice[ImmutAnyOrigin]]("run".as_c_string_slice())
argv[2] = rebind[CStringSlice[ImmutAnyOrigin]](
@@ -96,14 +97,20 @@ def run_stdio_entrypoint_with_2_args(
include_path.as_c_string_slice()
)
argv[4] = rebind[CStringSlice[ImmutAnyOrigin]](
+ include_flag.as_c_string_slice()
+ )
+ argv[5] = rebind[CStringSlice[ImmutAnyOrigin]](
+ vendor_include_path.as_c_string_slice()
+ )
+ argv[6] = rebind[CStringSlice[ImmutAnyOrigin]](
entrypoint_path.as_c_string_slice()
)
if process_arg0 != "":
- argv[5] = rebind[CStringSlice[ImmutAnyOrigin]](
+ argv[7] = rebind[CStringSlice[ImmutAnyOrigin]](
process_arg0.as_c_string_slice()
)
if process_arg1 != "":
- argv[6] = rebind[CStringSlice[ImmutAnyOrigin]](
+ argv[8] = rebind[CStringSlice[ImmutAnyOrigin]](
process_arg1.as_c_string_slice()
)
diff --git a/tests/test_stdio_contract.mojo b/tests/test_stdio_contract.mojo
@@ -10,6 +10,10 @@ from fixture_assertions import (
load_scenario_request_json,
status_request_with_invalid_version_json,
)
+from max_local_process_helper import (
+ reserve_loopback_port,
+ spawn_max_local_stub,
+)
from stdio_process_helper import (
HYF_PATHS_PROFILE_ENV,
HYF_PATHS_REPO_LOCAL_ROOT_ENV,
@@ -625,6 +629,98 @@ def test_query_rewrite_uses_fake_assist_bridge_when_requested() raises:
)
+def test_query_rewrite_uses_pure_mojo_provider_when_requested() raises:
+ with TemporaryDirectory() as temp_dir:
+ var startup_config_path = Path(temp_dir) / "explicit-hyf-config.toml"
+ startup_config_path.write_text(
+ '[service]\ntransport = "stdio"\n\n'
+ '[runtime]\ndefault_execution_mode = "deterministic"\nallow_assisted = true\n\n'
+ '[assist]\nbridge_enabled = true\ntransport = "stdio"\nendpoint = "hyf-assistd://local"\n'
+ )
+ var health_port = reserve_loopback_port()
+ var provider_port = reserve_loopback_port()
+ var health_stub = spawn_max_local_stub(health_port, "health_ok")
+ var provider_stub = spawn_max_local_stub(
+ provider_port, "query_rewrite_ok"
+ )
+ with ScopedEnvVar(HYF_PATHS_PROFILE_ENV, "repo_local"):
+ with ScopedEnvVar(HYF_PATHS_REPO_LOCAL_ROOT_ENV, temp_dir):
+ with ScopedEnvVar(
+ "HYF_MAX_LOCAL_HEALTH_URL",
+ "http://127.0.0.1:" + String(health_port) + "/health",
+ ):
+ with ScopedEnvVar(
+ "HYF_MAX_LOCAL_BASE_URL",
+ "http://127.0.0.1:" + String(provider_port) + "/v1",
+ ):
+ var response = run_stdio_entrypoint(
+ "src/main.mojo",
+ '{"version":1,"request_id":"rewrite-assisted-max-local-1","trace_id":"rewrite-assisted-max-local-1","capability":"query_rewrite","context":{"execution_mode_preference":"assisted","return_provenance":true},"input":{"query":"local apples pickup weekend"}}',
+ "--config",
+ startup_config_path.__fspath__(),
+ )
+
+ assert_true(response["ok"].bool_value())
+ assert_equal(
+ response["meta"]["execution_mode"].string_value(),
+ "assisted",
+ )
+ assert_equal(
+ response["meta"]["backend"].string_value(),
+ "assist_bridge",
+ )
+ assert_equal(
+ response["meta"]["provider"].string_value(),
+ "max_local",
+ )
+ assert_equal(
+ response["meta"]["route"].string_value(),
+ "assist_bridge.query_rewrite.max_local",
+ )
+ assert_equal(
+ response["meta"]["model"].string_value(),
+ "max-local-query-rewrite",
+ )
+ assert_equal(
+ Int(response["meta"]["schema_version"].int_value()),
+ 1,
+ )
+ assert_true(
+ Int(response["meta"]["latency_ms"].int_value())
+ >= 0
+ )
+ assert_equal(
+ response["meta"]["provenance"]["kind"]
+ .string_value(),
+ "assisted",
+ )
+ assert_equal(
+ response["output"]["rewritten_text"]
+ .string_value(),
+ "apples pickup weekend",
+ )
+ assert_equal(
+ response["output"]["query_terms"][0]
+ .string_value(),
+ "apples",
+ )
+ assert_equal(
+ response["output"]["extracted_filters"][
+ "fulfillment"
+ ].string_value(),
+ "pickup",
+ )
+ assert_equal(
+ response["output"]["extracted_filters"][
+ "time_window"
+ ].string_value(),
+ "weekend",
+ )
+
+ health_stub.wait()
+ provider_stub.wait()
+
+
def test_query_rewrite_falls_back_deterministically_when_bridge_is_unavailable() raises:
with TemporaryDirectory() as temp_dir:
var startup_config_path = Path(temp_dir) / "explicit-hyf-config.toml"