<feed xmlns='http://www.w3.org/2005/Atom'>
<title>soryu, branch makima/persistent-contract-complete-question</title>
<subtitle>soryu-co/soryu mirror</subtitle>
<id>http://src.eirin.xyz/soryu/atom?h=makima%2Fpersistent-contract-complete-question</id>
<link rel='self' href='http://src.eirin.xyz/soryu/atom?h=makima%2Fpersistent-contract-complete-question'/>
<link rel='alternate' type='text/html' href='http://src.eirin.xyz/soryu/'/>
<updated>2026-01-20T22:46:29+00:00</updated>
<entry>
<title>Task completion checkpoint</title>
<updated>2026-01-20T22:46:29+00:00</updated>
<author>
<name>soryu</name>
<email>soryu@soryu.co</email>
</author>
<published>2026-01-20T22:46:29+00:00</published>
<link rel='alternate' type='text/html' href='http://src.eirin.xyz/soryu/commit/?id=211c192cc89a1a04be70fc5577d498f73e0d6936'/>
<id>urn:sha1:211c192cc89a1a04be70fc5577d498f73e0d6936</id>
<content type='text'>
</content>
</entry>
<entry>
<title>[WIP] Heartbeat checkpoint - 2026-01-20 22:40:37 UTC</title>
<updated>2026-01-20T22:40:37+00:00</updated>
<author>
<name>soryu</name>
<email>soryu@soryu.co</email>
</author>
<published>2026-01-20T22:40:37+00:00</published>
<link rel='alternate' type='text/html' href='http://src.eirin.xyz/soryu/commit/?id=05ba47255f7c53afa08b001d2d62d3f321eb452e'/>
<id>urn:sha1:05ba47255f7c53afa08b001d2d62d3f321eb452e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix TypeScript build error: remove unused useMemo import</title>
<updated>2026-01-20T00:35:27+00:00</updated>
<author>
<name>soryu</name>
<email>soryu@soryu.co</email>
</author>
<published>2026-01-20T00:34:39+00:00</published>
<link rel='alternate' type='text/html' href='http://src.eirin.xyz/soryu/commit/?id=5c79032637a9593f1530599726842f49ac904a13'/>
<id>urn:sha1:5c79032637a9593f1530599726842f49ac904a13</id>
<content type='text'>
Remove unused useMemo import from contracts.tsx that was causing
the TypeScript build to fail with TS6133 error.

Co-Authored-By: Claude Opus 4.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>Fix: auth for CLI and CLI SIGTERM</title>
<updated>2026-01-20T00:23:49+00:00</updated>
<author>
<name>soryu</name>
<email>soryu@soryu.co</email>
</author>
<published>2026-01-20T00:23:49+00:00</published>
<link rel='alternate' type='text/html' href='http://src.eirin.xyz/soryu/commit/?id=5d8e3f80254f20eb6672701fad5f116a3b05dbc3'/>
<id>urn:sha1:5d8e3f80254f20eb6672701fad5f116a3b05dbc3</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add right-click context menu for contracts on contracts and board pages (#11)</title>
<updated>2026-01-19T22:40:42+00:00</updated>
<author>
<name>soryu</name>
<email>soryu@soryu.co</email>
</author>
<published>2026-01-19T22:40:42+00:00</published>
<link rel='alternate' type='text/html' href='http://src.eirin.xyz/soryu/commit/?id=9aac84bb20c4ca73f113fe74b9a293e4d20cdc93'/>
<id>urn:sha1:9aac84bb20c4ca73f113fe74b9a293e4d20cdc93</id>
<content type='text'>
Implement a reusable ContractContextMenu component that provides:
- Mark as Complete/Active/Archive status actions (conditionally shown)
- Go to Supervisor Task link (when supervisor exists)
- Delete action with confirmation

Integrate context menu into:
- ContractList.tsx on the contracts page
- WorkflowBoard on the workflow/board page via PhaseColumn and WorkflowContractCard

Features match ElementContextMenu patterns:
- Fixed positioning with z-50
- Click outside and Escape key close handlers
- Viewport overflow prevention
- Dark theme colors (#0a1628, #0d1b2d, #75aafc, #9bc3ff)

Co-authored-by: Claude Opus 4.5 &lt;noreply@anthropic.com&gt;</content>
</entry>
<entry>
<title>Fix right-click context menu on contracts and board pages (#9)</title>
<updated>2026-01-19T19:44:16+00:00</updated>
<author>
<name>soryu</name>
<email>soryu@soryu.co</email>
</author>
<published>2026-01-19T19:44:16+00:00</published>
<link rel='alternate' type='text/html' href='http://src.eirin.xyz/soryu/commit/?id=7d5af3d817cf8aa62c9ee12b7f78a17730182e1d'/>
<id>urn:sha1:7d5af3d817cf8aa62c9ee12b7f78a17730182e1d</id>
<content type='text'>
* Add right-click context menu for contracts on contracts and board pages

Implement a reusable ContractContextMenu component that provides:
- Mark as Complete/Active/Archive status actions (conditionally shown)
- Go to Supervisor Task link (when supervisor exists)
- Delete action with confirmation

Integrate context menu into:
- ContractList.tsx on the contracts page
- WorkflowBoard on the workflow/board page via PhaseColumn and WorkflowContractCard

Features match ElementContextMenu patterns:
- Fixed positioning with z-50
- Click outside and Escape key close handlers
- Viewport overflow prevention
- Dark theme colors (#0a1628, #0d1b2d, #75aafc, #9bc3ff)

Co-Authored-By: Claude Opus 4.5 &lt;noreply@anthropic.com&gt;

* [WIP] Heartbeat checkpoint - 2026-01-19 19:30:52 UTC

---------

Co-authored-by: Claude Opus 4.5 &lt;noreply@anthropic.com&gt;</content>
</entry>
<entry>
<title>Add right-click context menu for contracts on contracts and board pages (#8)</title>
<updated>2026-01-19T17:55:22+00:00</updated>
<author>
<name>soryu</name>
<email>soryu@soryu.co</email>
</author>
<published>2026-01-19T17:55:22+00:00</published>
<link rel='alternate' type='text/html' href='http://src.eirin.xyz/soryu/commit/?id=52d121269195f0e799d0ab4241e4facc3c7c0596'/>
<id>urn:sha1:52d121269195f0e799d0ab4241e4facc3c7c0596</id>
<content type='text'>
Implement a reusable ContractContextMenu component that provides:
- Mark as Complete/Active/Archive status actions (conditionally shown)
- Go to Supervisor Task link (when supervisor exists)
- Delete action with confirmation

Integrate context menu into:
- ContractList.tsx on the contracts page
- WorkflowBoard on the workflow/board page via PhaseColumn and WorkflowContractCard

Features match ElementContextMenu patterns:
- Fixed positioning with z-50
- Click outside and Escape key close handlers
- Viewport overflow prevention
- Dark theme colors (#0a1628, #0d1b2d, #75aafc, #9bc3ff)

Co-authored-by: Claude Opus 4.5 &lt;noreply@anthropic.com&gt;</content>
</entry>
<entry>
<title>Remove 'task' type contract</title>
<updated>2026-01-19T17:40:25+00:00</updated>
<author>
<name>soryu</name>
<email>soryu@soryu.co</email>
</author>
<published>2026-01-19T17:40:25+00:00</published>
<link rel='alternate' type='text/html' href='http://src.eirin.xyz/soryu/commit/?id=164941cbd591b46f69a034bb9b86521fd7700ddb'/>
<id>urn:sha1:164941cbd591b46f69a034bb9b86521fd7700ddb</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add interactive TUI browser for tasks, contracts, and files (makima view) (#7)</title>
<updated>2026-01-19T13:47:32+00:00</updated>
<author>
<name>soryu</name>
<email>soryu@soryu.co</email>
</author>
<published>2026-01-19T13:47:32+00:00</published>
<link rel='alternate' type='text/html' href='http://src.eirin.xyz/soryu/commit/?id=0833fb1f30c0c3b920157deb882e0e902c3af02a'/>
<id>urn:sha1:0833fb1f30c0c3b920157deb882e0e902c3af02a</id>
<content type='text'>
* feat(tui): Implement fuzzy search with real-time filtering and highlighting

Adds comprehensive fuzzy search functionality to the TUI browser:

## Fuzzy Matching (fuzzy.rs)
- FuzzyMatcher wrapper using SkimMatcherV2 from fuzzy-matcher crate
- fuzzy_match() returns score and matched character indices
- fuzzy_match_all() supports multi-term search (space-separated)
- Recency-aware scoring to boost recent items in results
- Unit tests for all matching scenarios

## App State (app.rs)
- FilteredItem struct with index, score, and matched_indices
- apply_filter() uses fuzzy matching with score-based sorting
- match_count() and has_no_matches() helper methods
- Results sorted by match score (highest first)

## List View (list_view.rs)
- Highlighted matched characters in search results
- Yellow bold styling for matched chars
- Status icons with color coding

## Search Input (search_input.rs)
- Real-time match count display (X/Y matches)
- Visual feedback for no matches (red border)
- Placeholder text when search is empty
- Active search mode indication (yellow border)

## Event Handling (event.rs)
- Arrow key navigation while in search mode
- Ctrl+K/J for vim-style navigation during search
- Delete key support alongside backspace
- Ctrl+U to clear search query
- Tab toggles preview while searching
- Escape clears search and exits search mode

Co-Authored-By: Claude Opus 4.5 &lt;noreply@anthropic.com&gt;

* Task completion checkpoint

* [WIP] Heartbeat checkpoint - 2026-01-19 11:20:34 UTC

* Task completion checkpoint

* [WIP] Heartbeat checkpoint - 2026-01-19 11:31:19 UTC

* Task completion checkpoint

* [WIP] Heartbeat checkpoint - 2026-01-19 11:39:07 UTC

* fix(tui): Fix module exports and main binary integration

- Update mod.rs to properly export app, event, fuzzy, and ui modules
- Add run() function for TUI entry point
- Fix run_view() to use ViewCommand enum instead of ViewArgs
- Fix event handling to use poll_event and handle_key_event

Co-Authored-By: Claude Opus 4.5 &lt;noreply@anthropic.com&gt;

---------

Co-authored-by: Claude Opus 4.5 &lt;noreply@anthropic.com&gt;</content>
</entry>
<entry>
<title>Make sure tasks can continue</title>
<updated>2026-01-19T02:26:09+00:00</updated>
<author>
<name>soryu</name>
<email>soryu@soryu.co</email>
</author>
<published>2026-01-19T02:26:09+00:00</published>
<link rel='alternate' type='text/html' href='http://src.eirin.xyz/soryu/commit/?id=786510379bed060db2b3742b7dfca671552d2c34'/>
<id>urn:sha1:786510379bed060db2b3742b7dfca671552d2c34</id>
<content type='text'>
</content>
</entry>
</feed>
