moooon
Motir
Vibe the 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
- 5
- 요청
- 4
- 추천
- 392
- 계획됨
- 4,175
- 출시됨
- (motir-core) PHASE 3 — DROP `workspace."subtaskPrMergeMode"` with its `@client-stopped-selecting` marker, remove the `@ignore`d field, and close ADR §7's retirement noteApproval gates — every decision that holds work up happens IN Motir, behind ONE approve language new kinds join
- (motir-core) PHASE 3 — DROP `organization.acceptance_video_enabled` with its `@client-stopped-selecting` marker, and retire the field, DTO, mapper and repository inputApproval gates — every decision that holds work up happens IN Motir, behind ONE approve language new kinds join
- (motir-core) LINK an error from the work-item page — the `+ Link error` door and issue picker, the move confirmation, the ⋯-menu row on a work item with no link, and their strings in both localesProduction errors become planned work — a monitor connects, its issues arrive as bugs in a container the project chooses, and fixing one closes it back
- (motir-core) The story's E2E — a monitor-filed bug shows its error, a customer-reported card links the same fault by search and move, and unlinks it again — recorded as the acceptance videoProduction errors become planned work — a monitor connects, its issues arrive as bugs in a container the project chooses, and fixing one closes it back
- (motir-core) The story's VITEST gate — the coverage floor over the error-link surface, the link → poll → read seam on real Postgres, and the guards coverage cannot seeProduction errors become planned work — a monitor connects, its issues arrive as bugs in a container the project chooses, and fixing one closes it back
- (motir-core) The work-item page shows its ERRORS — the section's rows and every stored state, unlink, loading / error, and their strings in both localesProduction errors become planned work — a monitor connects, its issues arrive as bugs in a container the project chooses, and fixing one closes it back
- (motir-core) LINK and UNLINK by hand — search the project's connections for an issue, link it to an existing work item, refuse an issue linked elsewhere unless the move is explicit, and unlink, under `work_item:edit`Production errors become planned work — a monitor connects, its issues arrive as bugs in a container the project chooses, and fixing one closes it back
- (motir-core) The card's ERROR LINKS read — `monitorIssueService.listForWorkItem` and its DTO: every link's stored facts, its connection's label and its resolve-back and assignee notes, under the item's own read gate, with no provider callProduction errors become planned work — a monitor connects, its issues arrive as bugs in a container the project chooses, and fixing one closes it back
- (motir-core) The link keeps its facts WHOLE — `environment` and `release` columns on `monitor_issue`, written on every reconcile visit from the latest event, and a LINKED issue below the minimum level still refreshesProduction errors become planned work — a monitor connects, its issues arrive as bugs in a container the project chooses, and fixing one closes it back
- (motir-core) The provider seam SEARCHES and reads an issue's CONTEXT — `searchIssues` over a connection's monitored project (text and short id), `getIssueContext` returning the latest event's environment and release, and the fake honours bothProduction errors become planned work — a monitor connects, its issues arrive as bugs in a container the project chooses, and fixing one closes it back
- The error is legible ON THE CARD — provenance, recurrence count, and linking an existing work item to an issue by handProduction errors become planned work — a monitor connects, its issues arrive as bugs in a container the project chooses, and fixing one closes it back
- (motir-core) E2E — the roadmap's folder journey: folder cards lead the root before Not in an epic, a folder drills to its folders then its items, a folder crumb navigates back, and sprint scope draws no folder
- (motir-core) A folder crumb on the roadmap NAVIGATES — each folder its own Crumb, the middle collapse with a navigable …, and a folder level restored from the URL on reload, a shared link and Back/forward
- (motir-core) The roadmap canvas draws a FOLDER card and drills into a folder level — FolderNode, folders leading the loose band, root-only Not in an epic, the empty-folder state, and MOTIR-5309's E2E chapter restated
- (motir-core) Address a roadmap level by FOLDER — folderId and the folder opt-in on GET /api/projects/[key]/roadmap and fetchRoadmapLevel, and the /roadmap empty check counts folders
- (motir-core) A filed off-level blocker names its folder — the roadmap blocker stub carries its folder path, drawn with FolderPathLabel in the ghost anchor
- (motir-core) Roadmap level read, folder arm — filed rows leave the root, a folder level reads its child folders then its filed items, each folder carries direct counts, and levelTotal counts work items only
- 39 (motir-core) The roadmap canvas never draws a FOLDER — a folder should be a card at its level, and its filed items should sit inside it instead of loose at the root
- (motir-core) VERIFY the `Workspace.subtaskPrMergeMode` `@ignore` release is SERVING on every `motir-core` machine before the column is dropped — read the platform, not the treeApproval gates — every decision that holds work up happens IN Motir, behind ONE approve language new kinds join
- Planning bug: MOTIR-5462 declared "every reading is an MCP call the agent can make" without checking the agent's credential reaches a SECOND project — both local tokens are bound to MOTIR