Repository navigation
fix(long-term-memory): 1.4.7 — re-extract uses current availability modes; show extraction and retry modes (#1227) - #1239
Conversation
…odes; show extraction and retry modes (Pasta-Devs#1227) Re-extract now sends the current availability selection, and the route saves it on the source note (after request validation, and only when it changed), keeping the previous extraction mode so a narrower selection does not fail as not enabled. Import results carry extractionMode, so "Imports as" shows the extraction mode and lists every availability mode. "Retry failed" still repeats the original attempt and now shows the modes it will use. Re-extract buttons are disabled until availability settings load. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configuration
⛔ Files ignored due to path filters (3)
📒 Files selected for processing (17)
Included review availability: This review used your included allowance. Your plan provides up to 1 included review per hour; 0 remain after this review. 📝 WalkthroughWalkthroughLong-Term Memory 1.4.7 updates source re-extraction to accept availability modes, reports extraction and availability modes in import results, and retains the original modes for retries. The package manifest, catalogs, and release notes are updated. ChangesLong-Term Memory mode handling
Priority: ➖ Normal Estimated code review effort: 3 (Moderate) | ~20 minutes Change: Bug fix · Severity of issue fixed: Medium Sequence Diagram(s)sequenceDiagram
participant SourcesWorkspace
participant ExtractionRoute
participant SourceNote
participant SourceProcessing
SourcesWorkspace->>ExtractionRoute: Send chatId, mode, and availability modes
ExtractionRoute->>SourceNote: Validate and save supplied availability modes
ExtractionRoute->>SourceProcessing: Process source with selected extraction mode
SourceProcessing-->>SourcesWorkspace: Return import result with extractionMode
SourcesWorkspace->>SourcesWorkspace: Display extraction and availability modes
Suggested reviewers: Merge Risk: ⚪ Minimal · up to No actionable issue remains from this review; the change is mergeable after normal checks. 🚥 Pre-merge checks | ✅ 3 | ❌ 1 | ❓ 1❌ Failed checks (1 warning, 1 inconclusive)
✅ Passed checks (3 passed)
Full details: Out of Scope Changes checkExplanation The package changes, tests, release entry, and regenerated package and catalog data align with the PR’s stated Long-Term Memory 1.4.7 scope. The summaries also report removal of the Long-Term Memory 1.3.27 notes entry from three catalogs. The available evidence does not establish why that historical entry was removed or whether catalog generation requires its removal. Full details: Docstring CoverageExplanation Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 10 functions across 8 files. (9 skipped: 9 unsupported.)
✨ Finishing Touches🧪 Generate unit tests (beta)
Warning Some tools did not complete. Review the errors below. 🔧 ESLint
packages/long-term-memory/src/engine/packages/client/src/features/long-term-memory/SourcesWorkspace.tsxtypescript-eslint does not support TS 7.0. Oops! Something went wrong! :( ESLint: 10.11.0 Error: typescript-eslint does not support TS 7.0. packages/long-term-memory/src/engine/packages/server/src/services/long-term-memory/interop.tsESLint skipped: the matched ESLint configuration already failed (config-incompatibility). packages/long-term-memory/src/engine/packages/server/src/services/long-term-memory/routes.tsESLint skipped: the matched ESLint configuration already failed (config-incompatibility).
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Pull request
Important
Contributions target
staging. OnlySpicyMarinaramay promote this repository'sstagingbranch tomain.Outside and first-time contributors also require an approving review from
SpicyMarinara.Linked issue
Closes #1227
(#1227 was closed as not planned; the maintainer asked for the fix anyway.)
Why this change
chatId/mode, and the extract route reused the modes saved earlier on the source note, so changing "Make memories available in" had no effect on re-extract.note.modes[0]), not the mode the source was actually extracted as.What changed
POST /notes/:id/extractaccepts an optionalmodes(1–8) and saves it on the source note, as a fresh import does.ltm_mode_not_enabled.extractionMode. The row says "Imports as {extraction mode}" and adds "Available in {modes}".CHANGELOG.mdentry and the builder version constant bumped.client.js,server.mjs, the catalogs andartifacts/long-term-memory-1.4.7.zipwere regenerated withscripts/build-feature-packages.mjs, not edited by hand.Package and security impact
long-term-memory(1.4.6 → 1.4.7)enginerange is unchanged.modes).modes, through the samestorage.updateNotepath import already uses. No schema migration is needed: the newextractionModeresult field is response-only and is not persisted in the session task state.Validation
node scripts/validate-catalog.mjspasses locallygit diff --checkpasses locallyCONTRIBUTING.mdManual verification notes
Automated runs on
331f711, withMARINARA_AGENTS_ROOTset to the worktree andMARINARA_ENGINE_ROOTset to a local Engine checkout:build-feature-packages.mjs long-term-memory), which left the tree unchanged, so the committed outputs reproducevalidate-package-locales,validate-catalog,catalog-release-notes,test-catalog-lanes--checkon the changed sourcesroutes,routes-imports,routes-notes,conversation-summary-import,source-task,installation(reports 1.4.7), andfeedback-clarity-uimodestypecheck:packages, which hosted CI covers; the browser and lifecycle LTM regressions; and manual testing in the Engine UI. The UI test only checks the source code, so the new labels and disabled states have not been seen rendered.Documentation impact
UI evidence (if applicable)
None yet. The new labels ("Imports as", "Available in", "Retries with") have not been seen in a browser.
🤖 Generated with Claude Code
Summary by CodeRabbit