Skip to content

feat(space): add TMDB search composer - #2807

Closed
Innei wants to merge 2 commits into
masterfrom
agent/space-tmdb-search
Closed

feat(space): add TMDB search composer#2807
Innei wants to merge 2 commits into
masterfrom
agent/space-tmdb-search

Conversation

@Innei

@Innei Innei commented Aug 11, 2026

Copy link
Copy Markdown
Member

Summary

  • add authenticated, throttled TMDB text search to the enrichment API
  • redesign the Recently composer around a compact native Glass slash menu and command detail flow
  • fix command-item hit testing and preserve selected TMDB attachments in the composer

Validation

  • Core enrichment tests: 55 passed
  • SpaceCore RecentlyService tests: 14 passed
  • Core OpenAPI contract check passed
  • Core TypeScript check passed
  • iOS Simulator build passed
  • Simulator interaction smoke test passed for menu selection, keyboard retention, back navigation, and dismissal

Notes

The local test environment could not perform a live external TMDB request; the request and normalization path is covered by focused Core and SpaceCore tests.

Superseded by a clean release PR because an unrelated concurrent CLI version-bump commit entered the original head branch.

@safedep

safedep Bot commented Aug 11, 2026

Copy link
Copy Markdown

SafeDep Report Summary

Green Malicious Packages Badge Green Vulnerable Packages Badge Green Risky License Badge

No dependency changes detected. Nothing to scan.

View complete scan results →

This report is generated by SafeDep Github App

@Innei Innei closed this Aug 11, 2026

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: bc646efb50

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

contextReceipt(context)
}

ForEach(store.selectedLinks) { preview in

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Keep deselected links available for reselection

Rendering only selectedLinks makes the receipt's remove action irreversible for URLs that remain in the draft: toggleLink marks such a link unselected, the row immediately disappears, and selectionOverrides keeps it unselected even if the text is edited or the URL is retyped. This also hides previously unselected links when editing an entry, so users have no UI path to attach them again; render all detected links with their selection state or provide another reselection control.

Useful? React with 👍 / 👎.

Comment on lines 395 to +399
let candidates = try await service.refCandidates(search: contextSearch)
if generation == contextGeneration {
contextCandidates = candidates
contextCandidates = candidates.filter { candidate in
contextKindFilter == nil || candidate.kind == contextKindFilter
}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Apply command type filters before limiting candidates

For /post, /note, /page, and /recently, this filters only the mixed result set already capped by refCandidates (12 by default). DatabaseService.findRefCandidates globally sorts and slices all content types before returning, so if newer matches of other types fill that limit, this command displays no results even when matching items of the requested kind exist. Pass the kind to the endpoint/query so filtering happens before the limit rather than filtering the truncated client response.

Useful? React with 👍 / 👎.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant