YeonGyu-Kim
560d13dc70
Normalize agent name comparisons to handle display name keys
...
Hooks and tools now use getAgentConfigKey() to resolve agent names (which may
be display names like 'Atlas (Plan Executor)') to lowercase config keys
before comparison.
- session-utils: orchestrator check uses getAgentConfigKey
- atlas event-handler: boulder agent matching uses config keys
- category-skill-reminder: target agent check uses config keys
- todo-continuation-enforcer: skipAgents comparison normalized
- subagent-resolver: resolves 'metis' -> 'Metis (Plan Consultant)' for lookup
2026-02-16 20:43:09 +09:00
YeonGyu-Kim
1a744424ab
fix: address all Cubic P2 review issues
...
- session-utils: log SDK errors instead of silent swallow
- opencode-message-dir: fix indentation, improve error log format
- storage: use session.list for sessionExists (handles empty sessions)
- storage.test: use resetStorageClient for proper SDK client cleanup
- todo-sync: add content-based fallback for id-less todo removal
2026-02-16 16:13:40 +09:00
YeonGyu-Kim
068831f79e
refactor: cleanup shared constants and add async SDK support for isCallerOrchestrator
...
- Use shared OPENCODE_STORAGE, MESSAGE_STORAGE, PART_STORAGE constants
- Make isCallerOrchestrator async with SDK fallback for beta
- Fix cache implementation using Symbol sentinel
- Update atlas hooks and sisyphus-junior-notepad to use async isCallerOrchestrator
2026-02-16 16:13:40 +09:00
YeonGyu-Kim
e90734d6d9
fix(todo): make Todo id field optional for OpenCode beta compatibility
...
- Make id field optional in all Todo interfaces (TodoInfo, Todo, TodoItem)
- Fix null-unsafe comparisons in todo-sync.ts to handle missing ids
- Add test case for todos without id field preservation
- All tests pass and typecheck clean
2026-02-16 16:13:39 +09:00
YeonGyu-Kim
0aa8f486af
feat(hooks): add sisyphus-junior-notepad hook for conditional notepad rules injection ( #1092 )
...
* refactor(shared): extract isCallerOrchestrator to session-utils
* refactor(atlas): use shared isCallerOrchestrator, change to prepend
* refactor(prometheus-md-only): change to prepend pattern
* refactor(sisyphus-junior): remove Work_Context (moved to hook)
* feat(hooks): add sisyphus-junior-notepad hook
* fix(shared): replace dynamic require with static import in session-utils
- Change from dynamic require to static import for better bundler compatibility
- Fix import path: ../../features -> ../features
- Add barrel export to src/shared/index.ts
* feat(hooks): register sisyphus-junior-notepad hook
- Add to HookNameSchema in schema.ts
- Export from hooks/index.ts
- Register with isHookEnabled in index.ts
- Auto-generated schema.json update
---------
Co-authored-by: justsisyphus <justsisyphus@users.noreply.github.com>
2026-01-25 14:52:11 +09:00