129 lines
4.9 KiB
JSON
129 lines
4.9 KiB
JSON
[
|
|
{
|
|
"title": "T1.1 Project bootstrap & repo",
|
|
"body": "Create Expo RN scaffold, CI skeleton, README, .env pattern. Acceptance: `expo start` runs; README shows dev steps.",
|
|
"labels": ["P0","sprint0"],
|
|
"estimate_hours": 4,
|
|
"epic": "Capture & Local Storage"
|
|
},
|
|
{
|
|
"title": "T1.2 Local DB & journaling core",
|
|
"body": "Implement Entry model, CRUD, tags, search. Offline-first confirmed. Acceptance: create/edit/delete/search works offline.",
|
|
"labels": ["P0","sprint1"],
|
|
"estimate_hours": 20,
|
|
"epic": "Capture & Local Storage"
|
|
},
|
|
{
|
|
"title": "T1.3 UI: Home, New Entry, Entry Detail, Tags",
|
|
"body": "Navigation, quick-capture FAB, tag picker. Acceptance: screens wired and functional.",
|
|
"labels": ["P0","sprint1"],
|
|
"estimate_hours": 18,
|
|
"epic": "Capture & Local Storage"
|
|
},
|
|
{
|
|
"title": "T1.4 Settings & API key dev mode",
|
|
"body": "Settings: env entry for API keys, anonymize toggle, retention chooser. Acceptance: keys stored securely; toggles persist.",
|
|
"labels": ["P0","sprint0"],
|
|
"estimate_hours": 6,
|
|
"epic": "Capture & Local Storage"
|
|
},
|
|
{
|
|
"title": "T1.5 Audio capture UI & file storage",
|
|
"body": "Record/pause/stop, preview, Transcribe button. Acceptance: local audio saved and playable.",
|
|
"labels": ["P0","sprint1"],
|
|
"estimate_hours": 12,
|
|
"epic": "Audio & Transcription"
|
|
},
|
|
{
|
|
"title": "T1.6 Serverless: signed-upload endpoint skeleton",
|
|
"body": "Deploy serverless function to create signed upload URL. Acceptance: client can upload using signed URL.",
|
|
"labels": ["P0","server"],
|
|
"estimate_hours": 8,
|
|
"epic": "Audio & Transcription"
|
|
},
|
|
{
|
|
"title": "T1.7 Integrate upload + client wiring",
|
|
"body": "Client uploads and notifies server to start transcription. Acceptance: server receives upload metadata and job enqueued.",
|
|
"labels": ["P0","server","client"],
|
|
"estimate_hours": 8,
|
|
"epic": "Audio & Transcription"
|
|
},
|
|
{
|
|
"title": "T2.1 Whisper transcription worker (serverless)",
|
|
"body": "Server downloads audio, calls Whisper, returns transcript and deletes audio. Acceptance: transcript returned; audio removed.",
|
|
"labels": ["P0","server"],
|
|
"estimate_hours": 12,
|
|
"epic": "Audio & Transcription"
|
|
},
|
|
{
|
|
"title": "T2.2 Client transcript UI + anonymize editing",
|
|
"body": "Edit transcript, auto-detect PII, anonymize toggle. Acceptance: sanitized text shown and editable.",
|
|
"labels": ["P0","client"],
|
|
"estimate_hours": 8,
|
|
"epic": "Audio & Transcription"
|
|
},
|
|
{
|
|
"title": "T2.3 Serverless OpenAI generation proxy (/generate-post)",
|
|
"body": "Proxy OpenAI calls, apply system prompt, return variants, log token usage. Acceptance: variants returned; usage logged.",
|
|
"labels": ["P0","server"],
|
|
"estimate_hours": 12,
|
|
"epic": "Generation & Drafting"
|
|
},
|
|
{
|
|
"title": "T2.4 Client convert UI & draft editor",
|
|
"body": "Show variants, hashtags, CTA; edit and copy/publish. Acceptance: edit & publish flows functional.",
|
|
"labels": ["P0","client"],
|
|
"estimate_hours": 10,
|
|
"epic": "Generation & Drafting"
|
|
},
|
|
{
|
|
"title": "T2.5 LinkedIn OAuth & publish endpoint",
|
|
"body": "Implement OAuth server flow; publish UGC on behalf of user. Acceptance: successful post returned; tokens stored securely.",
|
|
"labels": ["P0","server","integration"],
|
|
"estimate_hours": 16,
|
|
"epic": "Publishing & Integrations"
|
|
},
|
|
{
|
|
"title": "T2.6 Fallback publish flows (client)",
|
|
"body": "Copy-to-clipboard, native share sheet, share-offsite link. Acceptance: fallback works on iOS & Android.",
|
|
"labels": ["P0","client"],
|
|
"estimate_hours": 6,
|
|
"epic": "Publishing & Integrations"
|
|
},
|
|
{
|
|
"title": "T3.1 Retention & soft-delete + purge engine",
|
|
"body": "UI for retention; purge engine respects TTL. Acceptance: soft-delete and purge verified.",
|
|
"labels": ["P0","server","ops"],
|
|
"estimate_hours": 10,
|
|
"epic": "Privacy & Retention"
|
|
},
|
|
{
|
|
"title": "T3.2 Consent logs & processing events",
|
|
"body": "Record per-entry processing events and consent. Acceptance: logs viewable and exportable.",
|
|
"labels": ["P0","server"],
|
|
"estimate_hours": 6,
|
|
"epic": "Privacy & Retention"
|
|
},
|
|
{
|
|
"title": "T3.3 Cost controls & quotas",
|
|
"body": "Enforce daily generation caps; show usage in UI. Acceptance: quotas enforced; UI shows remaining usage.",
|
|
"labels": ["P0","ops"],
|
|
"estimate_hours": 8,
|
|
"epic": "Release & Ops"
|
|
},
|
|
{
|
|
"title": "T3.4 Build & store prep",
|
|
"body": "Prepare TestFlight / Play Store builds, privacy policy, screenshots. Acceptance: builds uploaded; privacy policy included.",
|
|
"labels": ["P0","release"],
|
|
"estimate_hours": 12,
|
|
"epic": "Release & Ops"
|
|
},
|
|
{
|
|
"title": "T3.5 Buffer & polish",
|
|
"body": "Fix critical bugs, UX polish, monitoring alerts. Acceptance: no critical bugs; monitoring enabled.",
|
|
"labels": ["P0","polish"],
|
|
"estimate_hours": 12,
|
|
"epic": "Release & Ops"
|
|
}
|
|
]
|