code wiki / (root) / nx_actor_role_audio_grader.nx

nx_actor_role_audio_grader.nx

buildroot/runtime/nx_actor_role_audio_grader.nx

6865 B183 linesdepth 4pulls 6 transitivereach 4 importersview sourcekind librarytopic actor
docsdependenciesstructsconstsfunctions

about

nx_actor_role_audio_grader.nx -- audio-scene-grading actor role. Per CARDINAL [[feedback-parallel-companion-multimodal-dnd-real-time]]: the parallel companion runs DIFFERENT modalities concurrently -- LLM token gen + audio grading + image grading all interleaved. This adapter wraps [[nx_audio_scene_quality]] (other-agent primitive) as a cooperative actor so the substrate can drive heterogeneous work, not just LLM clones. Cooperative phases: Phase 0 (INIT): no-op (reserved for future warmup) Phase 1 (GRADE): calls nx_audio_scene_grade with caller bins/rms/n_sources Phase 2 (EMIT): pushes AUDIO_FRAME message containing the verdict overall_score (Q14) as the payload handle Phase 3 (DONE): terminal Composes [[project-conductor-arc-phases-c-d-integrate-with-nishi-ai- 2026-05-19]] -- audio grading runs through the same actor + message + multiplexer substrate as LLM inference.

dependencies 6 imports · 4 importers

nx_syscalls.nx nx_tier.nx nx_layer_verdict.nx nx_audio_scene_quality.nx nx_actor.nx nx_message.nx nx_actor_role_audio_grader.nx nx_actor_role_audio_grader_test.nx nx_quad_companion_compose_test.nx nx_quad_real_emit_test.nx nx_triple_companion_compose_test.n

imports: nx_syscalls.nxnx_tier.nxnx_layer_verdict.nxnx_audio_scene_quality.nxnx_actor.nxnx_message.nx

imported by: nx_actor_role_audio_grader_test.nxnx_quad_companion_compose_test.nxnx_quad_real_emit_test.nxnx_triple_companion_compose_test.nx

structs

49struct NxAudioGraderCtx

consts

30const NX_AG_PHASE_INIT: nx_int = 0
31const NX_AG_PHASE_GRADE: nx_int = 1
32const NX_AG_PHASE_EMIT: nx_int = 2
33const NX_AG_PHASE_DONE: nx_int = 3
34const NX_AG_PHASE_N: nx_int = 4
38const NX_AG_V_STEPPED: nx_int = 0
39const NX_AG_V_COMPLETED: nx_int = 1
40const NX_AG_V_FAILED_GRADE: nx_int = 2
41const NX_AG_V_INVALID: nx_int = 3
42const NX_AG_V_NULL: nx_int = 4
43const NX_AG_V_N: nx_int = 5
61const NX_AG_CTX_BYTES: nx_int = 72 // 9 fields * 8

functions

65func nx_ag_phase_is_valid(p: nx_int) -> nx_int
called by 1: main
71func nx_ag_v_is_valid(v: nx_int) -> nx_int
called by 1: main
79func nx_ag_actor_new(spectral_bins: *i64,
called by 4: mainmainmainmain calls 1: sys_mmap
105func _ag_step_grade(ctx: *NxAudioGraderCtx) -> nx_int
123func _ag_step_emit(ctx: *NxAudioGraderCtx,
called by 1: nx_ag_actor_step calls 1: nx_ms_send_fanout
135func nx_ag_actor_step(ctx: *NxAudioGraderCtx,
162func nx_ag_actor_phase(ctx: *NxAudioGraderCtx) -> nx_int
called by 1: main
167func nx_ag_actor_score_q14(ctx: *NxAudioGraderCtx) -> nx_int
called by 4: mainmainmainmain
172func nx_ag_actor_is_done(ctx: *NxAudioGraderCtx) -> nx_int
called by 1: main
178func nx_ag_actor_axis_q14(ctx: *NxAudioGraderCtx, axis: nx_int) -> nx_int
called by 1: main