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
- 賛成票
- 380
- 計画済み
- 4,121
- リリース済み
- (motir-ai) A plan REVISION closes without a finishability check — `revise_plan` sets `validate: { mode: 'none' }`, so the closing validation and its re-open never run on the plan it just changed
- IndexDispatchFailedError: Indexing moooon-B-V/motir-core into project cmqfb4d8q000e2d0i6n62otyc failed (upload_failed): the graph was built but object storage refused or dropped the upload
- (motir-core · test) E2E — a new workspace's creator is its Manager, an invited person accepts and lands as a Member, a Manager makes them a Viewer and adds them to a project, and they read it but cannot edit it; no acceptance video, because this story adds no surfaceRoles & permissions, refined — org Owner · Admin · Member, ROLE on the workspace and ACCESS on the project, an automatic Visitor on public projects, and a UI that offers each role only what it can do
- (motir-core · test) The legacy-storage integration gate — the changed surface topped up to the 90% floor, every membership-creating path and a pre-release invite driven against the real database under RLS, and the architecture guard widened so no module reads or writes a legacy role column, imports `MemberRole` or touches `ProjectRoleDefinition`Roles & permissions, refined — org Owner · Admin · Member, ROLE on the workspace and ACCESS on the project, an automatic Visitor on public projects, and a UI that offers each role only what it can do
- (motir-core) Nothing writes the legacy role columns — workspace creation, invites (a new token carries a workspace role and a pre-release token still redeems), org member add and fold-in, and project membership add stop writing `workspace_membership.role` / `project_membership.role`, and `MemberRole` leaves application code and the seedsRoles & permissions, refined — org Owner · Admin · Member, ROLE on the workspace and ACCESS on the project, an automatic Visitor on public projects, and a UI that offers each role only what it can do
- (motir-core) The workspace role is NOT NULL and read directly — a migration that backfills any NULL from the legacy column and then constrains it, `resolveWorkspaceRole`'s fallback deleted with every caller reading `workspaceRole`, and the stand-in Manager ordered by the workspace roleRoles & permissions, refined — org Owner · Admin · Member, ROLE on the workspace and ACCESS on the project, an automatic Visitor on public projects, and a UI that offers each role only what it can do
- The legacy role storage stops being read or written — `workspace_role` NOT NULL and read directly, nothing writing `workspace_membership.role` / `project_membership.role`, and `MemberRole` out of application code (Release A of the three-release retirement)Roles & permissions, refined — org Owner · Admin · Member, ROLE on the workspace and ACCESS on the project, an automatic Visitor on public projects, and a UI that offers each role only what it can do
- (motir-core · design) Access at the project, drawn — the Access & members page's three access modes and its people list, the confirm that names who loses entry, the workspace Members page's Full / Limited scope column and invite scope, the access-change rows in the migration notice, and the shell a Limited person added to no project lands inRoles & permissions, refined — org Owner · Admin · Member, ROLE on the workspace and ACCESS on the project, an automatic Visitor on public projects, and a UI that offers each role only what it can do
- (motir-core · verification) VERIFY the workspace-role release is SERVING on production before its fallback is removed — MOTIR-6168's three migrations applied, zero NULL `workspace_role`, the report rows the deploy log counted, and the running image carrying the resolver changeRoles & permissions, refined — org Owner · Admin · Member, ROLE on the workspace and ACCESS on the project, an automatic Visitor on public projects, and a UI that offers each role only what it can do
- (motir-ai) The planner's validate tools drop `crossLevelEdges`, so a plan over a committed cross-level edge reads `valid: false` with no reason given
- (motir-core) `shared-store.test.ts`'s second store client takes the DEFAULT 250 ms deadline, so a loaded runner times it out: the store-timeout class MOTIR-2658 and MOTIR-3067 fixed, at a third site
- (motir-core · test) E2E + acceptance video — a Manager changes a Member to Viewer and the project goes read-only, authors a Reviewer role without the runs key and the Runs room closes, finds no role control in project settings, and reads the migration reportRoles & permissions, refined — org Owner · Admin · Member, ROLE on the workspace and ACCESS on the project, an automatic Visitor on public projects, and a UI that offers each role only what it can do
- (motir-core · test) The workspace-roles integration gate — the changed surface topped up to the 90% floor, the role × project key matrix driven through the real resolver and routes against the real database, and the migration run over a fixture tenant with its report and its never-wider failureRoles & permissions, refined — org Owner · Admin · Member, ROLE on the workspace and ACCESS on the project, an automatic Visitor on public projects, and a UI that offers each role only what it can do
- (motir-core) The Roles pages move to workspace settings — list, detail, editor and New role under `/settings/workspace/roles` with a rail entry, the project Roles routes redirect there, and the project Members page loses its role column and controlsRoles & permissions, refined — org Owner · Admin · Member, ROLE on the workspace and ACCESS on the project, an automatic Visitor on public projects, and a UI that offers each role only what it can do
- (motir-core) The workspace Members page shows each person's role and lets a Manager change it — the role column and change-role control, read-only for everyone else, and the migration report's changed people with their reason shown to ManagersRoles & permissions, refined — org Owner · Admin · Member, ROLE on the workspace and ACCESS on the project, an automatic Visitor on public projects, and a UI that offers each role only what it can do
- (motir-core) Project roles stop being grants on the server — the project members service and API add and remove people only, a role in the request is refused, the project roles routes answer 410 naming the workspace Roles page, and the last-project-admin guard retiresRoles & permissions, refined — org Owner · Admin · Member, ROLE on the workspace and ACCESS on the project, an automatic Visitor on public projects, and a UI that offers each role only what it can do
- (motir-core) A Manager changes a member's workspace role — the service method, the route and the server action, Manager-only, the last Manager protected, a built-in or a workspace custom role assignable, and the new keys effective in every project at onceRoles & permissions, refined — org Owner · Admin · Member, ROLE on the workspace and ACCESS on the project, an automatic Visitor on public projects, and a UI that offers each role only what it can do
- (motir-core) Every reader of the old workspace role moves to the new one — the `isWorkspaceManager` sites and workspace-settings gates, workspace creation (creator = Manager) and invites (Member), the `findOwnerByWorkspace` stand-in principal and its 18 callers, and the seed scriptsRoles & permissions, refined — org Owner · Admin · Member, ROLE on the workspace and ACCESS on the project, an automatic Visitor on public projects, and a UI that offers each role only what it can do
- (motir-core) The migration's never-wider check — each person's key set per project before and after, compared inside the migration, which fails on any widening except the one the model decides (a workspace member gaining the Member set in a project they were never added to)Roles & permissions, refined — org Owner · Admin · Member, ROLE on the workspace and ACCESS on the project, an automatic Visitor on public projects, and a UI that offers each role only what it can do
- (motir-core) Custom roles live at the workspace — create from a Manager, Member or Viewer base, edit, and delete-with-reassign move from `projectRoleDefinitionService` to a workspace role service and `/api/workspaces/.../roles` routes, Manager-onlyRoles & permissions, refined — org Owner · Admin · Member, ROLE on the workspace and ACCESS on the project, an automatic Visitor on public projects, and a UI that offers each role only what it can do