docs(learnings): squad re-entry, silence, Cartesia, multi-STT keyterm, and rename gotchas#12
Merged
dhruva-reddy merged 1 commit intomainfrom Apr 23, 2026
Conversation
…rfaced in customer iterations - squads.md: inline model.messages in assistantOverrides shadows assistant .md - squads.md: firstMessage replays on every handoff re-entry - squads.md: idleMessages + customer.speech.timeout hooks fire together - assistants.md: numWords:2 produces 500-800ms TTS overlap that garbles barge-in transcripts - assistants.md: Cartesia rejects ElevenLabs-only fields (enableSsmlParsing, top-level speed) - assistants.md: Cartesia Sonic-3 mangles em-dashes and SSML break tags - multilingual.md: English-heavy keyterm biases Deepgram language:multi toward English - AGENTS.md: document name_mismatch auto-bootstrap behavior on slug rename
Contributor
Author
This stack of pull requests is managed by Graphite. Learn more about stacking. |
Contributor
Author
Merge activity
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Describe your changes
Adds eight battle-tested learnings entries to the gitops template, sourced from the
customers/amazon/gitops-amazon3pdeployment tracker (§7 "Known footguns"). All entries are tracker-validated against specific iterations (Iter13–Iter24), generalized to strip customer/business specifics, and concentrated in the existing learnings files most likely to be consulted before each gotcha bites.docs/learnings/squads.md— three new sections, all gitops-relevant squad gotchas not previously covered:model.messagesinassistantOverridessilently shadows the assistant.md. Surfaced as an 8.6k-char inline prompt drifting from its source.mdover multiple iterations. Recommends keeping the.mdas single source of truth and using a second assistant file when a different prompt is genuinely needed.firstMessagereplays on every handoff re-entry. DefaultfirstMessageModeisassistant-speaks-first, which fires on every control transfer back to that assistant — not just call start. RecommendsfirstMessage: ""+assistant-speaks-first-with-model-generated-messagefor any non-terminal squad member, plus a "RE-ENTRY PROTOCOL" prompt block.messagePlan.idleMessages(per-assistant) andcustomer.speech.timeouthooks (per-assistant or viamembersOverrides.hooks) both fire on the same silence event. Recommends picking one — squad-level hooks usually preferable fortriggerMaxCount/triggerResetModesupport.docs/learnings/assistants.md— refines an existing entry and adds a Cartesia subsection:numWords: 2produces a 500–800ms TTS overlap window that drops STT confidence on barge-in, often filtering out the customer's first sentence after interrupting. The existing entry only documented the "lower = more interruptible" tradeoff; the new entry explains whynumWords: 1+ Krisp denoising is the recommended pairing.enableSsmlParsing, top-levelvoice.speed,voice.stability,voice.similarityBoost), plus the correct nested paths forgenerationConfig.speedandgenerationConfig.experimental.accentLocalization.<break>tags — pacing should use commas/periods/semicolons instead.docs/learnings/multilingual.md— adds:keytermarrays bias Deepgramlanguage: multitoward English. The language-ID step uses partial transcripts; an English-leaningkeytermtilts that signal, sending non-English audio through the English pipeline and producing low-confidence transcripts that get filtered. Recommends Gladia Solaria for code-switching customers, with a fallback recommendation for staying on Deepgram.AGENTS.md— adds a "Renaming an existing resource" subsection under Naming Conventions:name_mismatchguard auto-bootstraps state from the dashboard before applying, so manually editing.vapi-state.<org>.jsonto repoint a renamed file at an existing UUID does not work. Lays out the two correct paths (rename locally + new UUID + cleanup orphan, or rename in dashboard + pull preserves UUID).Relevant Context (linear ticket, slack link, etc)
Surfaced during a sweep of the Amazon 3P deployment tracker's "Known footguns" section after several of these gotchas hit consecutive iterations on a single customer. Eight of the sixteen tracked footguns were already covered by existing learnings (
call-duration.mdfor LLM wall-clock,transfers.mdfor routing-bias, etc.) or are out of scope for the gitops template (dashboard UX bugs, customer-specific call-flow design). The remaining eight were filed here.Engine-logic candidate flagged for follow-up, not included in this PR: the inline-
model.messagesshadow in squad overrides (#7 in the tracker) is plausibly anpm run pushlint-warn opportunity — but legitimate cases for partialmodeloverrides exist (temperature, tool sets), so a precise rule would need to target only themessagesfield. The doc warning is the right first step; the engine warning can come once the rule is well-scoped.API Changes
Is this changing the public API?
If yes, is it backward‐compatible?
N/A — docs-only change. No engine or API surface modifications.
Non backward-compatible changes might break customers' agents. Please proceed with care and notify the team.
How did you test this?
npm run build(tsc --noEmit) passes.customers/amazon/gitops-amazon3p/TRACKER.md§7).rg -i 'amazon|youssaf|mudflap|notable|zeals|3p|iform|FBA'against the changed files returns only one false-positive hit (the literal string "duplication" insquads.md); no customer or business-specific terms leaked.call-duration.md,assistants.mdinterior links) verified to point at existing sections.