moooon
Motir
Vibe your whole project. Bring an idea — Motir's three AI layers plan it, track it, and ship it, end to end. You're looking at Motir, built in Motir.
- Vibe Project
- Open Source
- AI Agent
- AI Loop
- 1
- requests
- 0
- upvotes
- 145
- planned
- 1,361
- shipped
- MOTIR-205811.3.1 Decision — amend the `/api/v1` ADR: cursors over SERVICE-OWNED sort orders, the ranked-collection `totalCount`, the by-id re-presentation carve-out, and the page-projection second readdone
- MOTIR-205911.3.2 The ORDER-AGNOSTIC v1 page cursor — a signed, collection-scoped envelope around a service-owned positiondone
- MOTIR-206011.3.3 The v1 PROJECT resource schema + `GET /api/v1/projects` and `GET /api/v1/projects/{projectKey}`done
- MOTIR-206111.3.4 The v1 SPRINT resource — its schema, the missing by-id service read, `GET /api/v1/projects/{projectKey}/sprints` and `GET /api/v1/sprints/{sprintId}`done
- MOTIR-206211.3.5 The sprint WRITE pair — `POST /api/v1/projects/{projectKey}/sprints` and `PATCH /api/v1/sprints/{sprintId}`, gated on `sprints:write` AND the sprint-admin roledone
- MOTIR-206311.3.6 The sprint LIFECYCLE moves — `POST /api/v1/sprints/{sprintId}/start` and `/complete`, proven under REAL concurrencydone
- MOTIR-206411.3.7 Sprint MEMBERSHIP in both directions — `POST /api/v1/sprints/{sprintId}/work-items` and `POST /api/v1/projects/{projectKey}/backlog/work-items`, atomic per batchdone
- MOTIR-206511.3.8 The two RANKED work-item collections — `GET /api/v1/projects/{projectKey}/backlog` and `GET /api/v1/sprints/{sprintId}/work-items`, paged in `backlogRank` orderdone
- MOTIR-206611.3.9 `GET /api/v1/projects/{projectKey}/ready` — the ready set in DISPATCH rank, with each row's dependency edgesdone
- MOTIR-206711.3.10 Story vitest gate — coverage floor, the write→read seams, and the contract guards the planning endpoints owedone
- MOTIR-206811.3.11 End-to-end conformance — drive the whole planning cadence as an EXTERNAL HTTP client with a real PATdone
- MOTIR-2071`startSprint`'s FOR UPDATE guard cannot lock an EMPTY set — the first activation races, and the index's refusal reaches the caller as a raw Prisma errordone
Showing 12 of 12