Releases: Moonweave-Research/zotero-vocab-flow
Release list
v0.1.5 — Translation and note workflow hardening
Highlights
- Bounded translation batches save successful partial progress.
- BYO translation endpoints enforce HTTPS or loopback HTTP and retry transient failures.
- Generated-note duplicates fail closed.
- Annotation provenance and normalized candidate extraction are preserved.
- HTML note parsing and cleanup failure handling are more resilient.
Verification
- 146 unit tests pass.
- TypeScript typecheck passes.
npm run release:checkpasses.- Zotero 9.0 through 9.0.x compatibility is unchanged.
SHA-256: 7220c70903bc1a3fd2977ca91ad3b0c0d2b84d1baa70e30bdb61b60a80366395 zotero-vocab-flow.xpi
v0.1.4
Zotero Vocab Flow v0.1.4
First stable public release for the Zotero 9 vocabulary workflow.
Included
- Candidate extraction from selected underline colors, the
vocabannotation tag, or all underlines. - Reviewable candidate notes with persistent exclusions before final wordbook creation.
- Manual Korean meaning preservation during regeneration and optional translation.
- Optional
google-free, OpenAI-compatible BYO API, Gemini BYO API, and Claude/Anthropic BYO API translation aids. - Bounded free-translation cache, failure backoff, obvious-output rejection, and cache clearing.
Verification
- 138 unit tests pass.
- TypeScript typecheck passes.
- GitHub Actions CI passes on the release commit.
- XPI archive generation is deterministic across local and CI environments.
SHA-256: 11fe4dee907fee59a4bb40badc1d99d45cca8d0dc32617de82dcdf69a017cde0 zotero-vocab-flow.xpi
Limits
- Candidate quality remains heuristic and should be reviewed before acceptance.
- Translation aids are optional and may return inaccurate results.
- BYO providers can receive terms and optional underline context when explicitly configured.
v0.1.4-beta.1
Release Notes - v0.1.4-beta.1
Summary
v0.1.4-beta.1 optimizes the optional google-free translation aid. Translation remains disabled by default and still only fills blank Korean meaning cells.
Changes
- Reuses filled meanings from the current generated wordbook before making
google-freerequests. - Stores successful
google-freetranslations in a bounded Zotero preference cache. - Prefers user/manual meanings over free-provider cache entries.
- Skips repeated failed/rate-limited/rejected free translation requests for 24 hours.
- Rejects obviously bad free-provider output, including unchanged source terms, HTML, URLs, and overly long text.
- Adds a user-facing
무료 번역 캐시 비우기menu command.
Verification
npm run test:unitnpm run typechecknpm run buildnpm run release:check
Artifact
Download zotero-vocab-flow.xpi from the GitHub prerelease asset for v0.1.4-beta.1.
SHA-256: d7f4d55dbbbd8702aa903503f53475f5834b7a8a63f7f9b1aeec1254448c4bf0 zotero-vocab-flow.xpi
Limits
google-freeis still an inaccurate review aid. It reduces repeated calls and obvious bad fills, but it does not make free translation reliable.- The free translation cache stores term-to-meaning pairs and failure metadata only. It does not store source context text.
v0.1.3-beta.1
Release Notes - v0.1.3-beta.1
Summary
v0.1.3-beta.1 expands the optional translation aid after candidate review. Translation remains disabled by default and still only fills blank Korean meaning cells.
Changes
- Added direct Gemini BYO API translation configuration.
- Added direct Claude/Anthropic BYO API translation configuration.
- Kept OpenAI-compatible BYO API as the gateway path for OpenRouter, LiteLLM, local LLM proxies, and other Chat Completions-compatible endpoints.
- Reduced avoidable
google-freetraffic by deduplicating repeated terms during one translation run. - Added provider expansion design notes, edge-case review, and tests for provider request shapes and menu wiring.
Verification
npm run test:unitnpm run typechecknpm run buildnpm run release:check
Artifact
Download zotero-vocab-flow.xpi from the GitHub prerelease asset for v0.1.3-beta.1.
SHA-256: d8f7bd76c37500169e5e39ec054354e8b4a552ea28c26ebfc39a40d50ffec620 zotero-vocab-flow.xpi
Limits
- Gemini and Claude/Anthropic live calls require user-owned API keys and were verified locally with mocked provider responses, not paid API calls.
- Automatic translation is still a review aid, not a dictionary-grade guarantee.
v0.1.2-beta.1
Release Notes - v0.1.2-beta.1
Date: 2026-06-21
Summary
v0.1.2-beta.1 closes the remaining public-stable readiness gaps from the beta audit: representative paper-style candidate fixtures, translation UX decision, and release artifact/checksum process.
Changes
- Added representative paper underline fixtures for materials, biomedical, and machine-learning prose.
- Added phrase extraction for
near-infrared irradiation,single-cell RNA sequencing,microglia activation, andattention maps. - Filtered additional prose-glue words from candidate extraction:
showed,under,after,evaluated, andacross. - Documented the stable translation UX decision: translation remains a menu-only experimental aid, default off, with settings pane deferred until provider configuration grows.
- Added
docs/RELEASE_PROCESS.mdcovering beta/stable artifact naming, SHA-256 publication, GitHub/update-manifest trust model, and CI/local release gate equivalence. - Extended
npm run release:checkto verify that the release process document defines the artifact and checksum policy. - Marked the public-stable checklist items complete.
Verification
npm run test:unitnpm run typechecknpm run buildnpm run release:check
Install
Download zotero-vocab-flow.xpi from the GitHub prerelease asset for v0.1.2-beta.1.
SHA-256: 8a50ddd214c9fcf129c22ac520524a711b820ed10394d9e1b0ede494297c8e60 zotero-vocab-flow.xpi
Vocab Flow v0.1.1-beta.1
Vocab Flow v0.1.1-beta.1 Release Notes
Date: 2026-06-20
Summary
Vocab Flow v0.1.1-beta.1 is a packaging and update-distribution prerelease. It keeps the v0.1.0-beta.1 workflow behavior and replaces the inert update URL with a real Zotero update manifest path.
What's Changed
- Added
updates.jsonfor Zotero's JSON update manifest flow. - Pointed
addon/manifest.jsonat the repository-hosted update manifest. - Added release-check coverage for update URL, update manifest version, update link, compatibility bounds, and XPI SHA-256 hash.
Verification Evidence
- Unit tests:
npm run test:unit-> passing. - TypeScript:
npm run typecheck-> passing. - Build:
npm run build-> passing. - Release gate:
npm run release:check-> passing.
Known Risks
- Existing v0.1.0-beta.1 installs still contain the old inert update URL. Users need to install v0.1.1-beta.1 once before future Zotero update checks can use the real update manifest.
- GitHub prerelease assets remain the distribution channel; formal signing/distribution is still tracked separately.
Vocab Flow v0.1.0-beta.1
Vocab Flow v0.1.0-beta.1 Release Notes
Date: 2026-06-15
Summary
Vocab Flow v0.1.0-beta.1 is a Zotero 9 plugin prerelease for researchers who want to turn intentional PDF underline annotations into a reviewed vocabulary note. It follows the original v0.1.0-beta prerelease without moving the existing tag.
The core workflow is:
- Mark vocabulary-worthy terms with a chosen underline color or the
vocabannotation tag. - Build
term candidates. - Review and exclude noisy candidates.
- Save selected candidates into a final
단어장 (...)note. - Optionally fill blank
Korean meaningswith a configured translation aid after review.
What's Included
- Color-specific candidate extraction for green, yellow, blue, purple, red, and gray underline annotations.
vocabannotation-tag extraction for users who need a semantic marker independent of color.- Advanced all-underlines extraction for legacy/bulk review.
- Candidate review notes with source context and
Review before translationguidance. - Exclusion persistence through
제외,x, and legacy exclusion tokens. - Final vocabulary notes with
용어 (Term)and한국어 뜻 (Korean meaning)columns. - Optional translation aids that fill only blank Korean meanings after opt-in: inaccurate free
google-free, or OpenAI-compatible BYO API with a context-send toggle. - Data-safety ownership markers so generated notes are handled separately from user notes.
- A real 48px plugin icon, with SVG source kept in
addon/icon.svg.
What This Release Does Not Promise
- It is not a stable public release.
- It does not treat every underline as final vocabulary by default.
- It does not edit PDF annotations or user notes outside generated Vocab Flow blocks.
- It does not guarantee dictionary-grade or context-perfect Korean translation.
- It does not guarantee research-term quality, availability, rate limits, or long-term stability of any external translation provider.
- It does not yet include a full settings pane; BYO API setup is still menu/prompt based.
Verification Evidence
- Unit tests:
npm run test:unit-> 110/110 passing. - TypeScript:
npm run typecheck-> passing. - Build:
npm run build-> passing. - Release gate:
npm run release:check-> passing. - Installed Zotero runtime callback verification covered green candidate generation on item
9761, candidate acceptance, final note creation, OpenAI-compatible BYO translation callback against a localhost mock endpoint, cleanup, and DB read-only cleanup checks. - Installed Zotero runtime label verification covered the current translation-aid and candidate menu labels.
- Latest default-profile XPI hash at release prep:
ed59c077c289b985b8ebf1f46d33caec3cbeafcc0ea0b35c94f6756c8b5d0afe. - Final cleanup verification found no active generated Vocab Flow notes in the live Zotero DB:
active_candidates=0,active_words=0,active_any=0.
Known Risks
- Candidate quality is heuristic and may miss domain terms or keep weak terms.
- Positive annotation-level runtime coverage is strongest for green/all-underlines workflows; other color menus are registered and labeled but need broader real-annotation fixtures before a stable release.
- Translation is intentionally framed as a weak aid. Users should review meanings manually.
- Release QA used a localhost OpenAI-compatible mock endpoint, not a paid production API call.
- BYO API keys are stored in Zotero preferences, and context sending can transmit stored underline text to the configured external API.
- The manifest currently keeps an inert
update_urlbecause Zotero 9 install behavior was validated with that shape during local testing.
Vocab Flow v0.1.0-beta
Vocab Flow v0.1.0-beta Release Notes
Date: 2026-06-03
Summary
Vocab Flow v0.1.0-beta is a Zotero 9 plugin preview for researchers who want to turn intentional PDF underline annotations into a reviewed vocabulary note.
The core workflow is:
- Mark vocabulary-worthy terms with a chosen underline color or the
vocabannotation tag. - Build
term candidates. - Review and exclude noisy candidates.
- Save selected candidates into a final
단어장 (...)note. - Optionally fill blank
Korean meaningswith the experimental translation aid.
What's Included
- Color-specific candidate extraction for green, yellow, blue, purple, red, and gray underline annotations.
vocabannotation-tag extraction for users who need a semantic marker independent of color.- Advanced all-underlines extraction for legacy/bulk review.
- Candidate review notes with source context and
Review before translationguidance. - Exclusion persistence through
제외,x, and legacy exclusion tokens. - Final vocabulary notes with
용어 (Term)and한국어 뜻 (Korean meaning)columns. - Optional experimental translation aid that fills only blank Korean meanings.
- Data-safety ownership markers so generated notes are handled separately from user notes.
- A real 48px plugin icon, with SVG source kept in
addon/icon.svg.
What This Release Does Not Promise
- It is not a stable public release.
- It does not treat every underline as final vocabulary by default.
- It does not edit PDF annotations or user notes outside generated Vocab Flow blocks.
- It does not guarantee dictionary-grade or context-perfect Korean translation.
- It does not guarantee availability, rate limits, or long-term stability of the
google-freetranslation endpoint. - It does not yet include a full settings pane or multiple translation providers.
Verification Evidence
- Unit tests:
npm run test:unit-> 80/80 passing. - TypeScript:
npm run typecheck-> passing. - Build:
npm run build-> passing. - Installed Zotero runtime callback verification covered candidate generation, candidate acceptance, final note creation, cleanup, and DB read-only cleanup checks.
- Installed Zotero runtime label verification covered the current translation-aid and candidate menu labels.
- Latest default-profile XPI hash at release prep:
14b2fd416f5e2dd2abe0fcf0330bd51617682f6d52f34df9d3b6e5347e3a357d.
Known Risks
- Candidate quality is heuristic and may miss domain terms or keep weak terms.
- Positive annotation-level runtime coverage is strongest for green/all-underlines workflows; other color menus are registered and labeled but need broader real-annotation fixtures before a stable release.
- Translation is intentionally framed as an aid. Users should review meanings manually.
- The manifest currently keeps an inert
update_urlbecause Zotero 9 install behavior was validated with that shape during local testing.