Add pinwork extension#27684
Conversation
- Prepare Raycast extension for review - Rename Northstar to Pinwork and prepare for Raycast Store submission - improvements - intial setup
|
Congratulations on your new Raycast extension! 🚀 We're currently experiencing a high volume of incoming requests. As a result, the initial review may take up to 10-15 business days. Once the PR is approved and merged, the extension will be available on our Store. |
Greptile SummaryThis PR adds a new Pinwork extension that bridges to the native macOS task manager via AppleScript (read operations) and the
Confidence Score: 3/5Not ready to merge — two user-facing preferences are declared but not fully wired up, meaning the settings UI misleads users. The
Important Files Changed
Prompt To Fix All With AIFix the following 2 code review issues. Work through them one at a time, proposing concise fixes.
---
### Issue 1 of 2
extensions/pinwork/src/utils/preferences.ts:24-26
**`defaultList` preference is exposed but never read**
`getDefaultList()` is defined here but is not imported or called anywhere in the codebase. Users who change the "Default List" preference in Raycast settings will see no effect: all view commands always open their own fixed view, and there is no command that reads this preference to redirect. The preference should either be wired up (e.g., in a root command that pushes to the chosen view) or removed from `package.json` before shipping.
### Issue 2 of 2
extensions/pinwork/src/hooks/useInboxTasks.ts:8-20
**`showCompletedTasks` preference not honoured in Inbox or Search views**
`useTodayTasks` gates on `shouldShowCompletedTasks()`, but `useInboxTasks` (and by extension `show-inbox.tsx`) returns all tasks unconditionally. `search-tasks.tsx` also always renders a "Completed" section. The preference description reads "Include recently completed tasks in **list views**" — users who turn it off would reasonably expect the inbox and search results to hide completed items too.
Reviews (2): Last reviewed commit: "Address Raycast review comments" | Re-trigger Greptile |
| export function getDefaultList(): "today" | "inbox" | "next" { | ||
| return getPreferences().defaultList; | ||
| } |
There was a problem hiding this comment.
defaultList preference is exposed but never read
getDefaultList() is defined here but is not imported or called anywhere in the codebase. Users who change the "Default List" preference in Raycast settings will see no effect: all view commands always open their own fixed view, and there is no command that reads this preference to redirect. The preference should either be wired up (e.g., in a root command that pushes to the chosen view) or removed from package.json before shipping.
Prompt To Fix With AI
This is a comment left during a code review.
Path: extensions/pinwork/src/utils/preferences.ts
Line: 24-26
Comment:
**`defaultList` preference is exposed but never read**
`getDefaultList()` is defined here but is not imported or called anywhere in the codebase. Users who change the "Default List" preference in Raycast settings will see no effect: all view commands always open their own fixed view, and there is no command that reads this preference to redirect. The preference should either be wired up (e.g., in a root command that pushes to the chosen view) or removed from `package.json` before shipping.
How can I resolve this? If you propose a fix, please make it concise.| export function useInboxTasks(options?: { execute?: boolean }) { | ||
| const { data, isLoading, error, revalidate, mutate } = useCachedPromise( | ||
| getInboxTasks, | ||
| [], | ||
| { | ||
| initialData: [], | ||
| keepPreviousData: true, | ||
| execute: options?.execute ?? true, | ||
| }, | ||
| ); | ||
|
|
||
| return { tasks: data, isLoading, error, revalidate, mutate }; | ||
| } |
There was a problem hiding this comment.
showCompletedTasks preference not honoured in Inbox or Search views
useTodayTasks gates on shouldShowCompletedTasks(), but useInboxTasks (and by extension show-inbox.tsx) returns all tasks unconditionally. search-tasks.tsx also always renders a "Completed" section. The preference description reads "Include recently completed tasks in list views" — users who turn it off would reasonably expect the inbox and search results to hide completed items too.
Prompt To Fix With AI
This is a comment left during a code review.
Path: extensions/pinwork/src/hooks/useInboxTasks.ts
Line: 8-20
Comment:
**`showCompletedTasks` preference not honoured in Inbox or Search views**
`useTodayTasks` gates on `shouldShowCompletedTasks()`, but `useInboxTasks` (and by extension `show-inbox.tsx`) returns all tasks unconditionally. `search-tasks.tsx` also always renders a "Completed" section. The preference description reads "Include recently completed tasks in **list views**" — users who turn it off would reasonably expect the inbox and search results to hide completed items too.
How can I resolve this? If you propose a fix, please make it concise.
Description
Pinwork is a native task management app for Apple platforms. This extension lets users view Pinwork tasks and send common actions to the app through Pinwork's local URL scheme.
Commands included:
Pinwork is currently available through external TestFlight:
https://testflight.apple.com/join/aWxfGbtt
Screencast
Screenshots are included in the extension metadata.
Checklist
npm run buildand tested this distribution build in Raycastassetsfolder are used by the extension itselfREADMEare placed outside of themetadatafolder