mirror of
https://github.com/bilawalsidhu/gods-eye-view.git
synced 2026-11-04 02:14:01 +00:00
- Voice layer manifest (src/voice/layerManifest.js) generates the layer enums, aliases and analyst field hints; a test fails when a catalog layer has no entry. - analyst_query validates fields, operators, units, values and scopes, counts up to 250,000 loaded records per layer, reports complete/partial/unanswered, tells LAYER_OFF / NOT_READY / FEED_UNAVAILABLE apart from zero, refuses mismatched follow-ups and never lets a superseded query replace follow-up memory. Seven more layers expose analyst records. - Tool results carry a code-built say line and a display card; the voice card in the mic control shows captions, plan steps and the result (src/voice/resultDisplay.js is the one adapter). Slow tools narrate their current step out of band; holding Space while the assistant talks cuts it off. Turn spans go to the debug log; caption transcription is metered; the log omits what was said unless GEV_VOICE_LOG_CONTENT=1. - Point and ask: the Space-down pointer snapshot resolves "this", "that one" and "around here" through 'pointer' targets, and "the second one" through referent:n from the last numbered list. - Prompt states each policy once (instructions + tools 48.5k -> 46.7k chars). - Voice benchmark harness (scripts/qa-voice-bench.mjs, scripts/voice-bench/) shares its phrase table and grading with scripts/qa-voice-routing.mjs.
22 lines
839 B
JavaScript
22 lines
839 B
JavaScript
/**
|
|
* Stub tool results fed back to the model after each call. Pure.
|
|
*
|
|
* core suite: the neutral `{ ok:true }` stub qa-voice-routing has always
|
|
* used, so continuations behave exactly as in that harness.
|
|
* coverage suite: the same stub, except a call whose arguments violate the
|
|
* tool schema gets `{ ok:false, error }` — what the app's runner returns
|
|
* for an unknown layer id — so the model's follow-up words can be judged
|
|
* for honesty.
|
|
*/
|
|
import { validateCall } from './grade.mjs';
|
|
|
|
export const STUB_OK = Object.freeze({ ok: true, note: 'qa-harness stub result' });
|
|
|
|
export function stubResult(suite, c, tools) {
|
|
if (suite === 'coverage') {
|
|
const errors = validateCall(tools, c);
|
|
if (errors.length) return { ok: false, error: `Invalid arguments: ${errors.join('; ')}` };
|
|
}
|
|
return { ...STUB_OK };
|
|
}
|