- get_categories(list_id): new tool filtering taskcategorysync by
sortingIndexByTaskList, returns {id, name, emoji} ordered by sort index
- get_activities: author IDs now resolved to display names (firstName) via
famlistfamily members; raw author_id preserved as separate field; member
lookup is non-fatal (falls back to raw ID on error)
- CLAUDE.md: tools table updated to reflect all implemented tools (v0.4.8)
- SPEC.md: full accgetallfamily response structure documented including
categories[] on tasks and category parameter investigation findings
- Category assignment in create/update task: all tested parameter names
ignored by API; still to verify (Service Worker blocks web inspection)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
famlistfamily response already contains members[] on each circle object.
get_members(circle_id=None) extracts id, name, email, role, right, color,
avatar, circle_id and circle_name. get_circles refactored to use the new
_famlistfamily() helper, eliminating duplicated auth/call/logout logic.
SPEC.md updated with full famlistfamily response structure.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
FW_DEBUG=1 investigation revealed:
- wallmood can silently fail (200 OK, frozen modifDate, no state change) due to
self-like restriction, unsupported post type (FAMILY_CREATED), or rate limit
- Response contains two complementary like indicators: moodStarShortcut (primary)
and moodMap (secondary) — both must be checked
- liked: false with like=True now surfaces a warning instead of silently
returning a misleading result
- SPEC.md documents silent-fail scenarios and dual indicator pattern
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Extensive FW_DEBUG=1 testing revealed:
- wallmood with moodType=STAR is an idempotent SET operation, not a toggle
- Tested: all moodType variations, moodStarShortcut param, 9 alternative
endpoints — none could remove a like
- Service Worker in the web app prevents intercepting the real unlike payload
- like=False now returns a clear error; like=True continues to work correctly
- SPEC.md updated with full investigation notes and ruled-out approaches
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
FW_DEBUG=1 verification revealed:
- moodType "LIKE" was silently mapped to "STAR" server-side; use "STAR" directly
- Response a00.r.r contains full wall object with moodMap showing actual like state
- liked status now derived from moodMap rather than echoing the input bool
- SPEC.md updated with fully verified wallmood endpoint details
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
API error message confirmed the expected parameter is 'wall_message_id',
not 'wallId'. SPEC.md updated to reflect verified finding.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Verified via FW_DEBUG=1: taskmark expects 'taskId' (not 'metaId'),
metadelete expects 'id' (not 'metaId'). Wrong names caused silent
no-ops because the API wraps errors in a00.un.un instead of top-level
un/ex, bypassing the standard error check in fw_client.
Also documents verified response structures in SPEC.md.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Implements four new MCP write tools via taskcreate2, taskupdate2,
taskmark, and metadelete endpoints. Confirmation prompts noted in
docstrings for destructive/mutating operations. Body parameters
documented in SPEC.md as pending verification via FW_DEBUG=1.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>