tinyhumansai/openhuman · error
Core rejected the meet_agent_list_calls request.
Error message
Core rejected the meet_agent_list_calls request.
What it means
The RPC transport succeeded and returned a result envelope, but the meet_agent_list_calls handler answered with ok:false (or a falsy result) — an application-level rejection from the Meet agent domain, not an HTTP/JSON-RPC failure. The doc comment notes the happy 'no data' case is a missing JSONL file treated as zero rows, so ok:false indicates the core actively failed the read.
Solutions
- Check core logs for the meet_agent read failure (the Rust side logs before returning ok:false)
- Verify the workspace call-history JSONL exists / is readable; repair or remove a corrupt file so it regenerates
- Update core and frontend together — newer handlers treat a missing file as empty rather than failing
- Wrap the call and fall back to [] in the UI so the Meeting Bots modal still renders the join form
Example fix
// before
export async function listMeetCallsSafe(): Promise<MeetCallRecord[]> {
return listMeetCalls(20);
}
// after
export async function listMeetCallsSafe(): Promise<MeetCallRecord[]> {
try { return await listMeetCalls(20); }
catch (err) { logger.warn('meet history unavailable', err); return []; }
} Defensive patterns
Strategy: fallback
Type guard
function isMeetListRejected(err: unknown): boolean {
return err instanceof Error && err.message.includes('meet_agent_list_calls');
} Try / catch
try {
return await listMeetCalls(20);
} catch (err) {
logger.warn('meet history unavailable', err);
return [] as MeetCallRecord[]; // modal renders join form with empty history
} Prevention
- Treat call history as best-effort data — never block the Meeting Bots modal on it
- Watch core logs when ok:false appears repeatedly (corrupt JSONL store)
- Update core so missing-file semantics stay 'no rows', not failure
When it happens
Trigger: Calling listMeetCalls(limit) when the core's call-history JSONL store is unreadable/corrupt; the meet_agent domain failing to open its data directory; older core builds whose handler returns ok:false on read errors instead of an empty list.
Common situations: Meet history file locked or truncated after a crash; permissions on the workspace directory; running a core build predating the 'missing file = no rows' semantics; limit values the handler rejects.
Related errors
- Core rejected the agent_meetings_join request.
- Core rejected the meet_agent_get_call_detail request.
- Core rejected the meet_get_event_policies request.
- Core rejected the meet_list_upcoming request.
- Core rejected the meet_set_event_policy request.
AI-assisted analysis of tinyhumansai/openhuman@7491200858 (2026-08-17).
Data as JSON: /api/errors/8871040432a5f86f.
Report an issue: GitHub.
Appendix: source
Thrown at app/src/services/meetCallService.ts:116
interface CoreGetCallDetailResponse {
ok: boolean;
detail: MeetCallDetail | null;
}
/**
* Fetch the most recent completed Meet calls (newest first). Used
* by the Skills "Meeting Bots" modal to render a history list
* underneath the join form. Returns an empty array on a fresh
* install (no recorded calls yet) — the core treats a missing
* JSONL file as "no rows" rather than an error.
*/
export async function listMeetCalls(limit = 20): Promise<MeetCallRecord[]> {
const result = await callCoreRpc<CoreListCallsResponse>({
method: 'openhuman.meet_agent_list_calls',
params: { limit },
});
if (!result?.ok) {
throw new Error('Core rejected the meet_agent_list_calls request.');
}
return result.calls ?? [];
}
/**
* Fetch the transcript + summary for one completed call. Lazy-loaded when the
* user expands a recent-call row. Returns `null` when the core has no detail
* for this call (older calls recorded before the feature, or a failed write) —
* the panel renders a "no transcript yet" state in that case.
*/
export async function getMeetCallDetail(requestId: string): Promise<MeetCallDetail | null> {
const result = await callCoreRpc<CoreGetCallDetailResponse>({
method: 'openhuman.meet_agent_get_call_detail',
params: { request_id: requestId },
});
if (!result?.ok) {
throw new Error('Core rejected the meet_agent_get_call_detail request.');
}View on GitHub (pinned to 7491200858)