From 6dba1202e7f2891fe60448a06d0105d7f050fc4a Mon Sep 17 00:00:00 2001 From: mpstaton Date: Mon, 4 May 2026 21:50:11 -0500 Subject: [PATCH] add(changelog): retrospective entry for 2025-07-19 substance commit Seeds the changelog/ directory with a retrospective entry dated to the first commit of substance in this repo, written in May 2026 from the content-farm pseudomonorepo cleanup. The convention didn't exist when the original work shipped; this entry exists so the upcoming GitHub Content API roll-up loader has something from this plugin to surface on the content-farm splash. Co-Authored-By: Claude Opus 4.7 (1M context) --- changelog/2025-07-19_01.md | 51 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 changelog/2025-07-19_01.md diff --git a/changelog/2025-07-19_01.md b/changelog/2025-07-19_01.md new file mode 100644 index 0000000..64ebc92 --- /dev/null +++ b/changelog/2025-07-19_01.md @@ -0,0 +1,51 @@ +--- +date_created: 2025-07-19 +date_modified: 2026-05-04 +title: "Streaming Perplexity through a modal — Perplexed comes online" +lede: "Perplexed's identity moment landed July 19, 2025: the first time an API call to Perplexity ran through the plugin's modal and streamed responses back into the note. Not perfect, but real. Logged retrospectively from 2026 — the convention came after the fact." +publish: true +authors: + - Michael Staton +augmented_with: + - Claude Code on Claude Opus 4.7 (1M context) +files_changed: + - main.ts + - manifest.json + - package.json +--- + +## Why Care? + +Streaming is the difference between an LLM-augmented tool that feels like part of your editor and one that feels like waiting for a foreign API. The first time tokens started arriving in the modal *as they were generated*, with citations slotting in alongside, was the moment Perplexed felt like a real research companion rather than a search-then-paste detour. + +This is the retrospective for that moment. + +## What's New? + +(All historical, captured retrospectively. The forking and emergence: 2025-07-10 → 2025-07-19.) + +- **`init(project): initial commit for Perplexed Obsidian Plugin with basic readme, manifest, package.json`** (2025-07-10) — Perplexed officially split from the shared cite-wide-lineage repo. The Perplexity-specific work that had been mixed in with citation work for a month finally got its own home. +- A week of structural work refactoring the modal to be search-and-stream-oriented rather than citation-transform-oriented. +- **`milestone(streaming): api-call to Perplexity as made through modal now works and streams responses back. Not perfect, but works!`** (2025-07-19) — the streaming loop closed end-to-end. The exclamation point in the commit message was earned. + +## The arc + +The pre-history is unusual. For about a month before Perplexed got its own repo, the Perplexity integration work lived inside what would become Cite-Wide. The earliest "milestone(perplexica): now hitting perplexica" commit (June 7, 2025) is in *both* repos' histories because they shared a parent. + +That shared lineage made it hard to mature either feature. Citations want one kind of modal (input field, transformation logic, output preview). Search-augmented streaming wants a different kind (input field, streaming text region, citation pills as they arrive). Trying to do both in one plugin was a categorical mismatch. + +The July 10 fork was the right call. Within nine days, the Perplexed-specific modal was streaming responses back from Perplexity's `sonar-pro` model, with the citation markers preserved as the stream arrived. That's the substance. + +## What this enabled + +Everything Perplexed has done since traces back to the July 19 streaming milestone: + +- The two-tier modal architecture (TextEnhancementModal for the basic flow, TextEnhancementWithImagesModal for parallel text-and-image fetching) — both inherit the streaming response handler from this commit. +- The provider rebrand from Perplexity to Perplexica/Vane (documented in `context-v/issues/Updating-Naming-to-Reflect-Provider-Rebrand.md`) — the streaming layer survived the rebrand because it was already abstracted enough. +- Deep Research streaming, added in late August 2025 — built on the same streaming backbone. + +## Retrospective notes + +- Written 2026-05-04, ten months after the streaming milestone. +- The phrase "Not perfect, but works!" in the original commit message is exactly the right voice for a milestone commit. We've borrowed it informally as a status descriptor for many subsequent plugins. +- Some of the citation-modal commits visible in this repo's early history (the `iterate(modal): ...` series from July 7–8, 2025) are inherited from the shared lineage — that work properly belongs to Cite-Wide. Perplexed-specific work begins July 10.