Twisted implementation tickets #
These tickets implement the complete product specification and the Bobbin API contract. Work on one ticket per fresh agent context. A ticket is complete only when its acceptance criteria and listed checks pass.
Milestone 1: Foundations #
Exit criterion: The app has a typed, tested read boundary, stable shell, theme engine, and live API contract checks.
T01 - Replace starter tests with a reliable test baseline #
Status: Complete
What to build: Remove placeholder expectations and establish shared Vitest and Cypress fixtures for route-level feature work.
Blocked by: None - can start immediately
Acceptance criteria:
Verification: bun run test:unit --run && bun run lint
T02 - Add the typed Bobbin client boundary #
Status: Complete
What to build: Add atcute dependencies and one configurable XRPC boundary with runtime record validation, abort support, pagination, and typed errors.
Blocked by: T01
Acceptance criteria:
Verification: bun run test:unit --run && bun run build
T03 - Add live Bobbin smoke tests with Hurl #
Status: Complete
What to build: Create a read-only Hurl suite using the approved
desertthunder.dev fixture and document how to run it.
Blocked by: None - can start immediately
Acceptance criteria:
Verification: bun run test:smoke
T04 - Build the Base16 theme engine #
Status: Complete
What to build: Map validated Base16 schemes to semantic Ionic and app CSS tokens, with bundled defaults, JSON import, selection, and persistence.
Blocked by: T01
Acceptance criteria:
Verification: bun run test:unit --run && bun run build
T05 - Replace the starter screen with the application shell #
Status: Complete
What to build: Add responsive navigation, route layouts, settings, back behavior, safe areas, and stable deep-link routing for every specified domain.
Blocked by: T01, T04
Acceptance criteria:
Verification: bun run test:unit --run && bun run build
T06 - Add coverage, caching, and shared request states #
Status: Complete
What to build: Add in-memory request deduplication, explicit stale times, cursor guards, coverage notices, and shared loading/error/empty components.
Blocked by: T02, T05
Acceptance criteria:
Verification: bun run test:unit --run && bun run build
T07 - Render Markdown and record links safely #
Status: Complete
What to build: Add sanitized Markdown, safe link handling, common record headers, identifier copying, and canonical Tangled links.
Blocked by: T01
Acceptance criteria:
Verification: bun run test:unit --run && bun run build
Milestone 2: Complete read-only client #
Exit criterion: Every public, user-relevant Bobbin record and query family in the specification has a navigable read view.
T08 - Build discovery and filtered search #
Status: Complete
What to build: Add identifier entry, mixed full-text results, every Bobbin search filter, coverage state, and cursor pagination.
Blocked by: T06, T07
Acceptance criteria:
Verification: bun run test:unit --run && bun run build
T09 - Build complete profile pages #
Status: Complete
What to build: Resolve handle or DID and render profile metadata, pinned repositories, owned repositories, links, and independently loading sections.
Blocked by: T06, T07
Acceptance criteria:
Verification: bun run test:unit --run && bun run build
T10 - Build actor activity dashboards #
Status: Complete
What to build: Expose every actor-oriented *By query as typed, paginated
activity sections linked to their subject records.
Blocked by: T09
Acceptance criteria:
Verification: bun run test:unit --run && bun run build
T11 - Build repository overview pages #
Status: Complete
What to build: Render repository identity, topics, links, knot, spindle, languages, README, labels, counts, collaborators, and recent ref activity.
Blocked by: T06, T07
Acceptance criteria:
Verification: bun run test:unit --run && bun run build
T12 - Browse repository trees and blobs #
Status: Complete
What to build: Add ref-aware directory navigation and safe text, binary, large-file, and missing-blob views.
Blocked by: T11
Acceptance criteria:
Verification: bun run test:unit --run && bun run build
T13 - Browse branches, tags, commits, and ref updates #
Status: Complete
What to build: Add paginated refs and commit history, path-filtered logs, commit details, and ref-update records.
Blocked by: T11
Acceptance criteria:
Verification: bun run test:unit --run && bun run build
T14 - Render diffs, compares, and archive downloads #
What to build: Add single-ref diffs, two-revision comparison, readable patch output, and streamed archive downloads.
Blocked by: T11
Acceptance criteria:
Verification: bun run test:unit --run && bun run build
T15 - Read issue lists and details #
What to build: Add repo issue filters, pagination, detail pages, derived state, state history, labels, mentions, and references.
Blocked by: T11
Acceptance criteria:
Verification: bun run test:unit --run && bun run build
T16 - Read pull lists and details #
What to build: Add repo pull filters, pagination, detail pages, derived status, status history, target/source data, and patch links.
Blocked by: T11
Acceptance criteria:
Verification: bun run test:unit --run && bun run build
T17 - Read comments and reactions #
What to build: Add paginated discussion and reaction views for issues, pulls, strings, and other valid subjects.
Blocked by: T15, T16
Acceptance criteria:
Verification: bun run test:unit --run && bun run build
T18 - Read stars, follows, vouches, and collaborators #
What to build: Add relationship views for repo stars, actor follows and vouches, and repo collaborators, with links to both ends of each edge.
Blocked by: T09, T11
Acceptance criteria:
Verification: bun run test:unit --run && bun run build
T19 - Read pipelines, statuses, and artifacts #
What to build: Add repo/spindle pipeline lists, pipeline details, status history, artifact metadata, and safe artifact downloads.
Blocked by: T11
Acceptance criteria:
Verification: bun run test:unit --run && bun run build
T20 - Read labels and Tangled strings #
What to build: Add label definition/operation views and string detail, listing, comment, and reaction flows.
Blocked by: T07, T11
Acceptance criteria:
Verification: bun run test:unit --run && bun run build
T21 - Read knots, spindles, memberships, and public keys #
What to build: Add public infrastructure views for owned services, members, owners, versions, knot keys, actor public keys, and freshness limitations.
Blocked by: T09, T11
Acceptance criteria:
Verification: bun run test:unit --run && bun run build
Milestone 3: Web and PWA release quality #
Exit criterion: The complete web client is installable, accessible, responsive, deterministic under test, and honest about offline or stale data.
T22 - Make Twisted an installable PWA #
What to build: Add manifest, install/update handling, icons, theme colors, and an offline application shell with explicit online-data states.
Blocked by: T05
Acceptance criteria:
Verification: bun run build and a browser PWA audit
T23 - Cover complete user journeys in Cypress #
What to build: Add intercepted end-to-end journeys for discovery, profiles, repos, source, collaboration, activity, infrastructure, settings, and failures.
Blocked by: T08-T21
Acceptance criteria:
Verification: Start bun run dev, then run bun run test:e2e
T24 - Complete accessibility and responsive review #
What to build: Audit every route family for keyboard, screen-reader, contrast, zoom, reduced motion, touch targets, safe areas, and long content.
Blocked by: T08-T23
Acceptance criteria:
Verification: bun run test:unit --run && bun run test:e2e plus manual assistive-technology review
Milestone 4: Native apps #
Exit criterion: Android and iOS packages launch the complete client and pass platform smoke checks without product-specific forks.
T25 - Package and verify Android #
What to build: Add the Capacitor Android project, final identity/assets, safe-area/status-bar behavior, external links, downloads, and back navigation.
Blocked by: T22, T24
Acceptance criteria:
Verification: bun run build && bunx cap sync android plus the documented Android debug build
T26 - Package and verify iOS #
What to build: Add the Capacitor iOS project with the same product behavior, final assets, safe areas, status bar, external links, and downloads.
Blocked by: T25
Acceptance criteria:
Verification: bun run build && bunx cap sync ios plus the documented iOS simulator build
T27 - Run the release verification matrix #
What to build: Verify the complete contract and user experience across web, PWA, Android, and iOS and resolve release-blocking regressions.
Blocked by: T03, T23, T24, T25, T26
Acceptance criteria:
Verification: Run every command in ROADMAP.md and the documented native build commands