Memory & intelligence

Asked & answered

Every question below was asked of the ledger by a real caller and logged by AgentQueryLogger; every answer is the citation the ledger itself returned at the time. Nothing on this page was written by hand or by a model — there is no answer text here that the store did not already contain.

Generated by tools/faq-builder.py from motlogs_agent_queries — 20,781 logged calls spanning 2026-05-25 → 2026-08-09. No model was called to produce this page and no answer text was generated; the builder only ever selects between hits the store already recorded. Regenerate it, do not edit it.
From /api/query-statsValue
calls logged, last 24 h527
calls logged, last 7 d14,067
median latency, 24 h14 ms
clusters the failure job flags5

where is the Anthropic API key configured and which service calls the Claude API

2 other phrasings of the same question
  • Anthropic API key Claude client usage
  • Anthropic API key Claude client
Answer the ledger gave motmaster-openbrain/MOTLogs.ArchitecturalLedger/Program.cs
repo openbrain · confidence 0.85 · chosen by 18 of 36 askings
Asked 36 separate times (from 36 logged calls)
When first 2026-08-02 · last 2026-08-09
Source of the answer chunk 1c2272ee7282… · logged query id 13612611eace40e5a9f81484526291fc recorded 2026-08-07

ElevenLabs Agent dropdown Voice Configuration settings UI

3 other phrasings of the same question
  • Where is the ElevenLabs Agent dropdown rendered in the Voice Configuration settings UI?
  • where is the ElevenLabs Agent dropdown rendered in the Voice Configuration settings UI
  • Where is the ElevenLabs Agent dropdown rendered in the Voice Configuration settings UI, and how is the list of agents fetched and populated?
Answer the ledger gave motmaster-agent/MotMasterAgent/Controllers/AdminElevenLabsCatalogueController.cs
repo agent · confidence 0.96 · chosen by 28 of 32 askings
Asked 32 separate times (from 32 logged calls)
When first 2026-05-29 · last 2026-08-07
Source of the answer chunk 6142ac30b7d2… · logged query id 2f648fc65d7d4ea9b81f2e0ec430f6ba recorded 2026-06-14

pr_get_agent_messages stored procedure definition

3 other phrasings of the same question
  • where is the stored procedure pr_get_agent_messages defined
  • where is pr_get_agent_messages defined
  • where is pr_get_agent_messages defined in SQL files which file contains it
Answer the ledger gave motmaster-sql/SQL/63_mot_master_agent_customers.sql
repo sql · confidence 0.99 · chosen by 29 of 31 askings
Asked 31 separate times (from 31 logged calls)
When first 2026-06-05 · last 2026-08-07
Source of the answer chunk 48483184dfb3… · logged query id 81806e7d2e9e45a4b6a015c3e6e90f41 recorded 2026-08-07

post-call webhook tenant attribution ElevenLabs agent_id

3 other phrasings of the same question
  • how does the ElevenLabs post-call webhook attribute a conversation to a tenant
  • how does post-call webhook attribute conversation to tenant when there are multiple tenants on one shared ElevenLabs agent_id
  • post-call webhook handler tenant attribution
Answer the ledger gave motmaster-agent/MotMasterAgent/Models/WebhookModels.cs
repo agent · confidence 0.85 · chosen by 23 of 30 askings
Asked 30 separate times (from 30 logged calls)
When first 2026-05-30 · last 2026-08-07
Source of the answer chunk 7ac9c840ce70… · logged query id 1847474f28db4e41a217886fa95cbe7b recorded 2026-06-14

agent UI deploy brand-specific files brand-config manifest team.help

2 other phrasings of the same question
  • agent UI deploy brand-specific files brand-config manifest
  • how does the agent UI deploy script generate brand-config.js and manifest.json per brand
Answer the ledger gave motmaster-agent/MotMasterAgentUI/Services/BrandService.cs
repo agent · confidence 0.85 · chosen by 23 of 28 askings
Asked 28 separate times (from 28 logged calls)
When first 2026-08-02 · last 2026-08-07
Source of the answer chunk a9cbdb5938e2… · logged query id ac9b3ad496bd488fbd04d3fe4375034c recorded 2026-08-06

WhatsApp outbound message send phone number E.164 format

2 other phrasings of the same question
  • WhatsApp outbound send phone E.164 format requirement messaging
  • where is the WhatsApp outbound send phone number formatted to E.164
Answer the ledger gave motmaster-agent/MotMasterAgent/Services/WhatsAppOutboundService.cs
repo agent · confidence 0.94 · chosen by 24 of 28 askings
Asked 28 separate times (from 28 logged calls)
When first 2026-06-05 · last 2026-08-07
Source of the answer chunk 6db623a6dc92… · logged query id 4964d4fe820e45d8841570c33daeebc9 recorded 2026-08-05

CSS theme colour palette branding stylesheet

2 other phrasings of the same question
  • Wiki CSS theme, colour palette, branding and styling variables
  • Wiki CSS theme colour palette branding stylesheet
Answer the ledger gave motmaster-agent/MotMasterAgentUI/wwwroot/css/app.css
repo agent · confidence 0.77 · chosen by 22 of 28 askings
Asked 28 separate times (from 28 logged calls)
When first 2026-08-02 · last 2026-08-07
Source of the answer chunk 6069e4c8b624… · logged query id 56673ff3275d411ab462c455d0ebd890 recorded 2026-08-05

conversation agent_id analytics cost breakdown quota sentiment dashboard

2 other phrasings of the same question
  • where is conversation.agent_id read or joined for analytics, cost breakdown, quota, sentiment dashboards
  • quota tracking and sentiment dashboard queries
Answer the ledger gave motmaster-agent/MotMasterAgent/Repositories/SentimentRepository.cs
repo agent · confidence 0.93 · chosen by 22 of 27 askings
Asked 27 separate times (from 27 logged calls)
When first 2026-05-30 · last 2026-08-07
Source of the answer chunk 6e2763dd0727… · logged query id d85b8a6796df4c39b9a3229e0b043b5f recorded 2026-08-06

WhatsApp Twilio MessageResource outbound send

2 other phrasings of the same question
  • WhatsApp Twilio MessageResource outbound send LLM Groq OpenAI reply
  • IMessageOrchestrator HandleAsync WhatsApp channel context LLM Groq OpenAI reply outbound send Twilio MessageResource
Answer the ledger gave motmaster-agent/MotMasterAgent/Controllers/WhatsAppController.cs
repo agent · confidence 0.80 · chosen by 17 of 27 askings
Asked 27 separate times (from 27 logged calls)
When first 2026-06-02 · last 2026-08-07
Source of the answer chunk 39a3d38e3f90… · logged query id 07cad5515ac54fbcb45d331d983560fa recorded 2026-08-06

SQL files stored procedures database schema

1 other phrasing of the same question
  • SQL files stored procedures CREATE PROCEDURE
Answer the ledger gave motmaster-openbrain/MOTLogs.ArchitecturalLedger/SqlPreExtractor.cs
repo openbrain · confidence 0.76 · chosen by 23 of 26 askings
Asked 26 separate times (from 26 logged calls)
When first 2026-08-03 · last 2026-08-07
Source of the answer chunk 666b8df607b0… · logged query id 58d270ff332a4042ad6a80c8113d6825 recorded 2026-08-05

OutboundCampaignBackgroundService subscription line spend cap provisioned number

1 other phrasing of the same question
  • how does ResolveAgentCallOriginAsync and OutboundCampaignBackgroundService look up the subscription line for a provisioned number to check spend cap
Answer the ledger gave motmaster-agent/MotMasterAgent/Services/SpendCapReachedException.cs
repo agent · confidence 0.98 · chosen by 18 of 24 askings
Asked 24 separate times (from 29 logged calls)
When first 2026-06-04 · last 2026-08-07
Source of the answer chunk da0e5616391e… · logged query id 3b7f084b7ee140af980c63ff99f9022f recorded 2026-06-14

forward_to_wiki function call site

Answer the ledger gave motmaster-agent/MotMasterAgent/Controllers/SubscriptionController.cs
repo agent · confidence 0.57 · chosen by 21 of 24 askings
Asked 24 separate times (from 24 logged calls)
When first 2026-08-02 · last 2026-08-07
Source of the answer chunk 86ae1469b03a… · logged query id e388df517544478ab7f8307c367297b6 recorded 2026-08-06

background jobs and async task scheduling

Answer the ledger gave motmaster-agent/MotMasterAgent/HostedServices/KnowledgeIngestBackgroundService.cs
repo agent · confidence 0.84 · chosen by 22 of 24 askings
Asked 24 separate times (from 24 logged calls)
When first 2026-08-02 · last 2026-08-07
Source of the answer chunk 0912eb0478f0… · logged query id 87a80f344d13412a9c7cae9e3b23a71f recorded 2026-08-07

scheduling service interface hours resolution

Answer the ledger gave motmaster-agent/MotMasterAgent.Tests/BookingWorkItemResolutionTests.cs
repo agent · confidence 0.90 · chosen by 15 of 24 askings
Asked 24 separate times (from 24 logged calls)
When first 2026-08-03 · last 2026-08-07
Source of the answer chunk 40aba62f1cc6… · logged query id ac9485a77ae94df7b6871f6fbd6e08cf recorded 2026-08-05

how does ResolveHoursAsync work in ISchedulingService and what does it return

1 other phrasing of the same question
  • what does ResolveHoursAsync do in ISchedulingService and what does it return
Answer the ledger gave motmaster-agent/MotMasterAgent/Services/SchedulingAgent.cs
repo agent · confidence 0.60 · chosen by 19 of 23 askings
Asked 23 separate times (from 23 logged calls)
When first 2026-05-28 · last 2026-08-07
Source of the answer chunk 591204e85a55… · logged query id fa01e3a0c1084339965d91119900f15a recorded 2026-08-07

runtime dynamic var for address, business contact, opening times

Answer the ledger gave motmaster-sql/SQL/0327_generic_hours_open_now_from_runtime_vars.sql
repo sql · confidence 0.98 · chosen by 22 of 22 askings
Asked 22 separate times (from 34 logged calls)
When first 2026-08-02 · last 2026-08-07
Source of the answer chunk 7427e92f042d… · logged query id 63f52fb54d434bb981a9cd2842337f81 recorded 2026-08-02

suggest_personas + policy_check calibration for adversarial review

Answer the ledger gave motmaster-openbrain/MOTLogs.ArchitecturalLedger/Governance/GovernanceService.cs
repo openbrain · confidence 0.80 · chosen by 18 of 19 askings
Asked 19 separate times (from 26 logged calls)
When first 2026-08-02 · last 2026-08-07
Source of the answer chunk 388b2883fc37… · logged query id ad33d0b848da46bfa48834a8c8371e2c recorded 2026-08-07

ResolveForPush called during live voice call

Answer the ledger gave motmaster-agent/MotMasterAgent/Services/VoiceOrchestrator.cs
repo agent · confidence 0.51 · chosen by 18 of 19 askings
Asked 19 separate times (from 25 logged calls)
When first 2026-06-16 · last 2026-08-07
Source of the answer chunk 2f19c4f70719… · logged query id b159e597807f4e4fb554148e802c6d17 recorded 2026-08-07

VoiceOrchestrator sends dynamic_variables to ElevenLabs

Answer the ledger gave motmaster-agent/MotMasterAgent/Services/VoiceOrchestrator.cs
repo agent · confidence 0.89 · chosen by 18 of 19 askings
Asked 19 separate times (from 28 logged calls)
When first 2026-06-16 · last 2026-08-07
Source of the answer chunk 7bc90117b3fe… · logged query id ca95eb43219f4467b2e6c8a8cdde43fe recorded 2026-08-07

Wiki front-end layout and navigation

4 other phrasings of the same question
  • how is the Wiki front-end built — page layout, navigation and templates
  • how is the Wiki front-end laid out — page layout, navigation and templates
  • How is the Wiki front-end built — layout, navigation, CSS theme, colour palette and branding
  • Wiki front-end layout template navigation
Answer the ledger gave motmaster-scout/ScoutUIHTML/Components/Layout/NavMenu.razor
repo scout · confidence 0.86 · chosen by 8 of 18 askings
Asked 18 separate times (from 18 logged calls)
When first 2026-06-12 · last 2026-08-07
Source of the answer chunk b7e551ba5b9f… · logged query id 1635f1670fb740c69dd57c40fa3680a9 recorded 2026-08-05

WhatsApp 24 hour customer service window template message session reply

4 other phrasings of the same question
  • WhatsApp 24 hour customer service window outbound template message session reply
  • how does the WhatsApp 24 hour customer service window decide between a template message and a session reply
  • WhatsApp 24 hour window governs outbound template vs session reply CustomerServiceWindowExpiresUtc check how used outbound send
  • WhatsApp 24 hour customer service window outbound send template message
Answer the ledger gave motmaster-agent/MotMasterAgent/Interfaces/IWhatsAppOutboundService.cs
repo agent · confidence 0.98 · chosen by 13 of 17 askings
Asked 17 separate times (from 17 logged calls)
When first 2026-06-02 · last 2026-08-07
Source of the answer chunk 6ca6759fbdfa… · logged query id 66accf44ab7448429c8d37f328774a76 recorded 2026-08-06

ConvAI client tools definition pushed to ElevenLabs agent

4 other phrasings of the same question
  • where are ConvAI client tools defined and pushed to the ElevenLabs agent
  • where are ConvAI client tools defined and pushed to ElevenLabs agent_tool seed save_message parameters
  • ConvAI client tools ElevenLabs agent configuration
  • where are ConvAI client tools defined and pushed to the ElevenLabs agent, including the save_message tool
Answer the ledger gave motmaster-agent/MotMasterAgent/Interfaces/IElevenLabsRestClient.cs
repo agent · confidence 0.90 · chosen by 10 of 17 askings
Asked 17 separate times (from 17 logged calls)
When first 2026-05-31 · last 2026-08-07
Source of the answer chunk b9ff848acf87… · logged query id 8a66a83c9e704e38a9748d204eb36a07 recorded 2026-08-06

WhatsApp inbound message pipeline TwilioController

2 other phrasings of the same question
  • WhatsApp inbound pipeline forward_to_wiki call site implementation Agent TwilioController
  • TwilioController inbound WhatsApp webhook handler
Answer the ledger gave motmaster-agent/MotMasterAgent/Services/WhatsAppInboundPipeline.cs
repo agent · confidence 0.91 · chosen by 7 of 13 askings
Asked 13 separate times (from 13 logged calls)
When first 2026-06-02 · last 2026-08-07
Source of the answer chunk 4b9b4c7490e8… · logged query id 93a5a06ebb0f499eb9d4ac4be7567423 recorded 2026-08-07

TwiML webhook outbound call routing

2 other phrasings of the same question
  • TwiML webhook handler outbound call routing
  • TwiML response webhook for outbound call routing Dial verb
Answer the ledger gave motmaster-agent/MotMasterAgent/Services/TwilioService.cs
repo agent · confidence 0.88 · chosen by 7 of 12 askings
Asked 12 separate times (from 12 logged calls)
When first 2026-08-02 · last 2026-08-07
Source of the answer chunk 3c037c40f950… · logged query id 2b4685af25e34122950410c4ff214404 recorded 2026-08-07

agent_tool seed save_message parameters

2 other phrasings of the same question
  • save_message client tool definition intent message caller_name required parameters in agent_tool catalogue seed
  • agent_tool seed rows save_message parameters JSON schema
Answer the ledger gave motmaster-sql/SQL/64_mot_master_agent_seed.sql
repo sql · confidence 0.93 · chosen by 10 of 11 askings
Asked 11 separate times (from 11 logged calls)
When first 2026-08-03 · last 2026-08-07
Source of the answer chunk cb1377669884… · logged query id b6bee39c1b5849cc9c972b50fe777c38 recorded 2026-08-07

Operational FAQ — hand-verified against source, not mined

The entries above are auto-mined from real query traffic, as the note at the top of this page describes. The six below are a different, honestly-labelled category: questions about the ledger's own behaviour that don't show up as query text, answered by hand and checked against the code cited beside each one — not generated by a model and not selected from recorded hits.

why did my query return “⚠ file changed since indexed”

A hit carries an indexed_sha — the commit the chunk was indexed at (WP4.1). When the caller asks for staleness checking and a live git diff --quiet <indexed_sha>..HEAD -- <file> against the working tree finds a difference, the hit's meta row gets a trailing · ⚠ file changed since indexed marker. It means exactly what it says: the file has moved on since this chunk was embedded, so the snippet you're reading may not match what's on disk right now. It never appears on a hit with no indexed_sha (every pre-WP4.1a chunk) — the absence of the warning there is not a claim of freshness, just an absence of the signal. The fix, if the file matters, is sync_ledger or waiting for the next scheduled ingest.

src: McpService.cs (SpanFirstHitHeader, the "⚠ file changed since indexed" literal)

how do I search my worktree (root)

Pass the absolute path of your checkout as root on query_ledger, read_span or symbol_lookup (or, for the precise C# lane, on find_definition/find_references/find_implementations, which also accept a plain repo id). It must be registered first — POST /api/admin/overlay/register {root}, loopback-only — after which a file that differs between your checkout and the indexed mirror is served from your checkout, marked ⊕ from your checkout. Editing inside an accepted worktree shape (.claude/worktrees/*, ws-*/motmaster-*, wt-*) auto-refreshes the overlay a few seconds after every Edit/Write via a PostToolUse hook, so there's usually nothing to trigger by hand. An unregistered or unaccepted root is ignored with a one-line hint rather than an error — it never turns a good query into a failure, it just quietly serves main's version instead.

src: McpService.cs (query_ledger/read_span/symbol_lookup root schema) · motmaster-infra/claude-hooks/overlay-refresh.sh

why does find_references say the precise lane is unavailable

Two different messages mean two different things. {"error": "precise lane disabled (Precise:Enabled=false)"} means the whole precise lane is off in this deployment's config — every call to any of the three precise tools returns this, and no root will ever work until an operator flips Precise:Enabled=true. A per-call {"error": "…", "truth": "none", "hint": "fall back to reference_set (text) or grep"} — with truth:"none" — means the lane is on but your workspace is degraded: the MSBuildWorkspace for that root failed to load (missing SDK, unrestored NuGet packages, a bad root value). That shape exists specifically so a broken workspace can never be misread as "the symbol doesn't exist" — a real "no such symbol" result instead carries truth:"compiler" plus a workspace count, which the unavailable shape never does. If you see {"loading": true} instead, the workspace is still warming up — retry.

src: McpService.cs (PreciseDisabledMessage, PreciseUnavailableJson, LookupResultToJson) — todo 72936320, fixed in #191

what does “(no intent)” mean

Every chunk is supposed to carry a one-line intent from the Groq analysis pass. A hit heading printing - (no intent) instead means that field is empty for this specific chunk — most often because the chunk pre-dates enrichment, the Groq call was budget-skipped, or (for a checkout-overlay hit) the overlay path builds a chunk locally without an analysis pass at all, which stamps a placeholder intent of its own ("(no intent — overlay)") rather than calling Groq inline. It's an honest gap, not a broken query — the rest of the hit (path, coordinates, repo/layer/pattern) is unaffected.

src: McpService.cs (SpanFirstHitHeader, the "(no intent)" literal) · IngestionEngine.cs (the overlay placeholder ChunkAnalysis)

why was I denied by the gate, and what should I ask instead

The PreToolUse consult gate (see Governance layer) denied a code-touching call because it has no record of a recent enough query_ledger call for this session/agent. The fix is always the same shape: call mcp__mot-ledger__query_ledger with the actual question you need answered — naming a symbol (a type, method, config key, table, or endpoint) if you know one — then retry the denied call. Do not narrate what you were about to do; that isn't a question and the gate will deny again. In hard mode a consult is valid for 20 minutes and up to 20 gated calls; in first-touch mode one consult unlocks a repo permanently; in advisory mode you're never actually denied, only reminded. Which mode is active for your session depends on the gate A/B currently under way — see Governance for the arms and schedule.

src: motmaster-infra/claude-hooks/require-ledger-consulted.ps1 (the deny text) · docs/ROUTING_GUIDANCE.md

where are the nightly metrics

/docs/metrics/ — a self-contained "nightly ledger utilisation metrics" page (WP0.1), plain HTML/JS with no dependency on the rest of wwwroot, generated by a nightly 02:30 UTC cron job. It tracks the ledger-usage audit figures (query volume, tool mix, gate traffic, tree-search rates) night over night, dated, so drift shows up as a trend rather than a single snapshot.

src: wwwroot/docs/metrics/index.html

How an entry gets here

  1. Only questions count. Calls to tools that take a file path or a symbol anchor (orient_me, why_query, tests_for) log that anchor into the same field as a question. Those are filtered out by shape, not by trust.
  2. Repeats at machine cadence collapse. Rows with identical text less than 60 s apart become one asking occasion, so a harness loop cannot manufacture a popular question. "Asked n times" on this page means n separate occasions, and the raw call count is shown beside it.
  3. Phrasings are clustered, not matched. Grouping is cosine similarity at 0.85 over the query vectors already stored with each record — the same threshold and the same greedy algorithm FailedQueryClusterJob uses, so the admin page and this page agree on what counts as the same question. Nothing is re-embedded. Clustering ran over the 500 most-asked of 6,753 distinct phrasings; the never-repeated tail is not clustered, because an entry needs recurrence anyway.
  4. The answer is chosen, never written. Among the recorded hits for a cluster, the entry takes the file that the most separate askings independently landed on; the ledger's own confidence only breaks ties, and recency breaks those. Agreement leads because the stored confidence says how sure the classifier was about the chunk it labelled, not that the chunk answers the question — ranking on it alone picks flukes, which is why every entry above prints how many of its askings chose the file.
  5. A cluster with no recorded answer is dropped. It does not become an entry with a plausible-looking answer. That is why this page can come back empty.

Open Brain — the MOTMaster Architectural Ledger · generated 2026-08-09 from 7,409 asking occasions across 414 question clusters