feat(perception): qualify world-frame motion tracking

This commit is contained in:
DCCONSTRUCTIONS
2026-07-24 11:17:10 +03:00
parent 23181c867b
commit e6dd8c2cf1
8 changed files with 1828 additions and 0 deletions
@@ -22,6 +22,7 @@ from k1link.compute import (
publish_e21_lab_instance,
publish_e22_lab_instance,
publish_e23_lab_instance,
publish_e24_lab_instance,
publish_integrated_lab_instance,
)
from k1link.device_plugins.xgrids_k1.analyze import (
@@ -581,6 +582,80 @@ def publish_e23_lab(
)
@lab_app.command("publish-e24")
def publish_e24_lab(
result: Annotated[
Path,
typer.Option(
exists=True,
file_okay=False,
readable=True,
resolve_path=True,
help="Accepted full-session integrated result used as the E24 source.",
),
],
profile: Annotated[
Path,
typer.Option(
exists=True,
dir_okay=False,
readable=True,
resolve_path=True,
help="Bounded E24 world-motion profile.",
),
],
benchmark: Annotated[
Path,
typer.Option(
exists=True,
dir_okay=False,
readable=True,
resolve_path=True,
help="Operator-anchored E24 motion benchmark.",
),
],
session_id: Annotated[
str,
typer.Option("--session-id", help="New immutable LAB session id."),
],
lab_id: Annotated[
str,
typer.Option("--lab-id", help="LAB marker, for example 'LAB E24'."),
],
display_name: Annotated[
str,
typer.Option("--display-name", help="Operator-facing saved-session title."),
],
) -> None:
"""Build and publish a bounded world-frame motion-tracking run."""
repository_root = Path(__file__).resolve().parents[4]
try:
published = publish_e24_lab_instance(
repository_root=repository_root,
source_result_root=result,
profile_path=profile,
benchmark_path=benchmark,
lab_session_id=session_id,
lab_id=lab_id,
display_name=display_name,
)
except (OSError, SessionIntegrityError, RuntimeError, ValueError) as exc:
console.print(f"[red]E24 LAB publication failed:[/red] {exc}")
raise typer.Exit(code=2) from exc
metrics = published.build.report["metrics"]
console.print(
"[green]E24 LAB instance published.[/green] "
f"session={published.binding.session_id}; "
f"source={published.binding.source_session_id}; "
f"result={published.binding.result_id}; "
f"benchmark={metrics['benchmark']['passed_events']}/"
f"{metrics['benchmark']['total_events']}; "
f"p95={metrics['runtime']['world_motion_frame_processing_ms']['p95']:.3f}ms; "
"source_payloads_mutated=false"
)
@app.command("serve")
def serve_console(
port: Annotated[