fix(granola): align get_note with real API spec#5467
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub. |
PR SummaryLow Risk Overview Block output docs, tool Reviewed by Cursor Bugbot for commit 25f3b8b. Configure here. |
Greptile SummaryThis PR tightens the Granola
Confidence Score: 5/5Safe to merge — the changes are a narrow, well-scoped alignment with the external API spec with no logic changes that could affect existing callers negatively. The three changed files are fully consistent: the runtime transform, the TypeScript interface, and the output descriptor all agree on the new shape. The webUrl fallback switches from null to an empty string, which is a no-worse default for a field the API guarantees is present. speakerName is additive and optional, so downstream consumers that don't use it are unaffected. No files require special attention. Important Files Changed
Sequence Diagram%%{init: {'theme': 'neutral'}}%%
sequenceDiagram
participant Client
participant getNoteTool
participant GranolaAPI
Client->>getNoteTool: "{ noteId, apiKey, includeTranscript }"
getNoteTool->>GranolaAPI: "GET /v1/notes/:id[?include=transcript]"
GranolaAPI-->>getNoteTool: "{ id, web_url, transcript: [{ speaker: { source, diarization_label, name }, text, ... }], ... }"
Note over getNoteTool: web_url ?? '' (required string)<br/>speaker.name ?? null (speakerName)
getNoteTool-->>Client: "{ webUrl: string, transcript: [{ speaker, speakerLabel, speakerName, text, ... }] | null }"
%%{init: {'theme': 'base', 'themeVariables': {"darkMode": true, "background": "#0d1117", "primaryColor": "#21262d", "primaryTextColor": "#e6edf3", "primaryBorderColor": "#8b949e", "lineColor": "#8b949e", "textColor": "#e6edf3", "edgeLabelBackground": "#161b22", "actorBkg": "#21262d", "actorBorder": "#8b949e", "actorTextColor": "#e6edf3", "actorLineColor": "#8b949e", "signalColor": "#8b949e", "signalTextColor": "#e6edf3", "noteBkgColor": "#373320", "noteBorderColor": "#d4a72c", "noteTextColor": "#f0e6c0", "labelBoxBkgColor": "#21262d", "labelBoxBorderColor": "#8b949e", "labelTextColor": "#e6edf3", "loopTextColor": "#e6edf3", "activationBkgColor": "#30363d", "activationBorderColor": "#8b949e"}}}%%
sequenceDiagram
participant Client
participant getNoteTool
participant GranolaAPI
Client->>getNoteTool: "{ noteId, apiKey, includeTranscript }"
getNoteTool->>GranolaAPI: "GET /v1/notes/:id[?include=transcript]"
GranolaAPI-->>getNoteTool: "{ id, web_url, transcript: [{ speaker: { source, diarization_label, name }, text, ... }], ... }"
Note over getNoteTool: web_url ?? '' (required string)<br/>speaker.name ?? null (speakerName)
getNoteTool-->>Client: "{ webUrl: string, transcript: [{ speaker, speakerLabel, speakerName, text, ... }] | null }"
Reviews (1): Last reviewed commit: "fix(granola): align get_note with real A..." | Re-trigger Greptile |
Summary
webUrlinget_noteto be a required non-nullable string per spec (was modeled as optional/nullable)speakerNamefield to transcript entries (resolved speaker name, present in the API but previously dropped)Type of Change
Testing
Tested manually
Checklist