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
- 6
- 需求
- 4
- 贊同
- 511
- 已規劃
- 4,959
- 已發布
- The runs index trades Command and Scope for a Target column, and the door the command cell held moves onto the row alongside the key's link to the work item
- The run overlay's two panes ride that shared split — min-w-0 on the left pane, pointer and keyboard resize within its bounds, and the width persisted under the run overlay's own key
- The runs index row carries its target — the scope's own key, the target's work item id, and the count behind '+N', read on the list query that already runs and never a target a withholding hides
- One extracted OverlayExitButton replaces the three copied exit bars, and the run overlay draws it top left with the modal's own X hidden so both Close and Esc land
- Agent output wraps inside the log pane — no line clipped and no horizontal scroll, with the timestamp and key gutter kept as a hanging indent
- The planning split becomes one shared, parameterised two-pane — divider label, storage key and reset signal taken as options, and each host keeping its own persisted width
- planningPool e2e case 2 intermittently sees m-b started four times instead of once, which ejected motir-ai#802 from the merge queue
- motir-core's audit fails "not measured": the graph service's whole-graph read takes 12–19 s (a SQLite query per node plus localeCompare sorts), past the 10 s per-call timeout, and blocks the replica while it runs
- The load-test generator machine has no k6 binary and no /data volume, and motir-core has no recipe to build its image, so every load-test run exits 4 before sending loadmotir-core's web tier scales horizontally under agent traffic — each added `app` instance adds throughput (~500 req/s per instance, toward ~10k active agents), connections stay bounded, no reader is refreshed, measured first and proven by a re-runnable load test
- loadtest/staging/fly.staging.toml still sizes the staging app group shared-cpu-2x while production runs performance-1x, so a deploy from it makes every load-test run exit 4motir-core's web tier scales horizontally under agent traffic — each added `app` instance adds throughput (~500 req/s per instance, toward ~10k active agents), connections stay bounded, no reader is refreshed, measured first and proven by a re-runnable load test
- Planning bug (both planners): "every exclusion names an owner" lets a card's Scope BOUNDARY hand not-done work to a card with no blocked_by edge, so the hand-off is never read and the work is orphaned
- Planning failure: ai_job_failed in a entry_author session on MOTIR-8933 — gateway: model called unknown tool "found"
- (motir-core) VERIFY on the LIVE tenant, after the plan-target fix deploys — a `create_plan` parks a real card from `blocked`, approve rests it at To Do or Blocked, and the new `→ planning` edges reached the MOTIR project
- (verification) After the nine-idea-categories story deploys on both sites — production serves each new category labelled in all eleven locales, the staff API accepts it, /admin/ideas offers it, and motir.co/ideas shows and filters it
- A burst of submits to a full machine pokes the same idle peer past its slots, and the surplus job stays queued beside a free slot on another peer
- A typed sections WRITE interface over the free-text descriptionMd — doors take sections, check them by name and render them into the body
- (motir-ai) Write the sections-interface amendment into `session-model.md` — the next AMENDMENT under §5, plus a pointer under AMENDMENT 3 clause 1 saying its storage choice stands
- (motir-meta) The runbook corpus teaches the sections interface — `plan-procedure.md`, the `plan-rules/` packs and `plan.py`'s session contract send sections to the doors, and none tells a planner to compose a heading
- (motir-ai) The hosted AUTHOR tool sends sections through the interface — its schema is built from motir-core's section sets at run time, its local proposal record keeps the door-rendered body, and `missingAuthorFields` / the boundary handoff read that body
- (motir-ai) Every author-engine path speaks sections — assumptions, the ordering cut, lay bodies, `update_item`, and no `| ` gutter on any body shown to the model