feat: Milestone 5a — lists and profile-edit commands #1

Merged
coding-agent-marvin8 merged 0 commits from refs/pull/1/head into main 2026-05-13 11:11:06 +00:00
coding-agent-marvin8 commented 2026-05-13 08:34:41 +00:00 (Migrated from codeberg.org)

Summary

  • Adds taibai lists as a cyclopts sub-App with five subcommands: bare list display, create, delete, add, and remove
  • Adds taibai profile-edit to update display name, bio, locked, bot, and discoverable flags via PATCH /api/v1/accounts/update_credentials
  • Splits Milestone 5 into 5a (this PR, broadly portable) and 5b (scheduled statuses, Mastodon-only, deferred)
  • 37 new tests (21 for lists, 16 for profile-edit); all 339 tests pass across Python 3.11–3.14
  • Docs: docs/lists.md, docs/profile-edit.md, mkdocs nav updated

Test plan

  • nox — all 12 sessions green
  • taibai lists — renders table of lists
  • taibai lists create "Test" --replies-policy followed — creates list
  • taibai lists add LIST_ID user@host — adds followed account
  • taibai lists remove LIST_ID user@host — removes account
  • taibai lists delete LIST_ID — deletes list
  • taibai profile-edit --display-name "New Name" — updates profile
  • taibai profile-edit --locked --bio "Hello" — multiple flags
  • taibai profile-edit (no flags) — exits 1 with guidance
  • taibai lists --json and taibai profile-edit --display-name X --json — JSON output
## Summary - Adds `taibai lists` as a cyclopts sub-App with five subcommands: bare list display, `create`, `delete`, `add`, and `remove` - Adds `taibai profile-edit` to update display name, bio, locked, bot, and discoverable flags via `PATCH /api/v1/accounts/update_credentials` - Splits Milestone 5 into 5a (this PR, broadly portable) and 5b (scheduled statuses, Mastodon-only, deferred) - 37 new tests (21 for lists, 16 for profile-edit); all 339 tests pass across Python 3.11–3.14 - Docs: `docs/lists.md`, `docs/profile-edit.md`, mkdocs nav updated ## Test plan - [x] `nox` — all 12 sessions green - [x] `taibai lists` — renders table of lists - [x] `taibai lists create "Test" --replies-policy followed` — creates list - [x] `taibai lists add LIST_ID user@host` — adds followed account - [x] `taibai lists remove LIST_ID user@host` — removes account - [x] `taibai lists delete LIST_ID` — deletes list - [x] `taibai profile-edit --display-name "New Name"` — updates profile - [x] `taibai profile-edit --locked --bio "Hello"` — multiple flags - [x] `taibai profile-edit` (no flags) — exits 1 with guidance - [x] `taibai lists --json` and `taibai profile-edit --display-name X --json` — JSON output
Sign in to join this conversation.
No reviewers
No labels
No milestone
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Reference
marvin8/taibai!1
No description provided.