Started: 2026-05-26 23:31:35 UTC
Built: 2026-05-26T23:31:28Z
active Automatic scheduler, orchestrator, forwarder, and sanity auto-heal actions are allowed.
idle Kick off a Jules enhancement round once the tracked repo is ready.
Request: not requested yet
Summary: Request an enhancement round for Stbmap/dev-manager when you want the scheduler to look for follow-up improvements.
Open issues / PRs / active enhancer sessions: 0 / 0 / 0
Welcome to the dev-manager orchestration cockpit. It auto-refreshes, remembers your place, and keeps the state visible without manual reloads.
Listens to the manager event stream while that tab is open, without reloading the whole page.
The background Jules sync, scheduler, watcher, forwarder, and orchestrator loops are started in cmd/dev-manager/main.go and read their cadence from DB-backed runtime settings.
GitHub intake watches the tracked repository and imports open issues and pull requests into the queue before the scheduler starts sessions.
Clarification threads are exposed through the JSON API so Codex can read Jules questions and answer them directly without using the UI.
3
1
11
1
33
2
47
0
Repo: Stbmap/dev-manager
Status: ok: scanned 2 repo(s), 460 items total (Stbmap/chatter=81, Stbmap/dev-manager=379)
Status: ok: synced 397 Jules session(s) (0 imported, 38 updated)
Status: ok: pull_request delivery b35f9360-597f-11f1-99b9-9b2efcd68b0c reconciled
Status: warn: 2 issue(s): repo Stbmap/chatter intake reports trouble: error: API error: 403 Forbidden - { "message": "API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID 9F8E:3216DE:439C8FF:106F152D:6A1669A6 and timestamp 2026-05-27 03:49:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\/\/docs.github.com\/en\/site-policy\/github-terms\/github-terms-of-service)", "documentation_url": "https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting", "status": "403" }; github_sync_last_status reports trouble: error: API error: 403 Forbidden - { "message": "API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID 9F8E:3216DE:439C8FF:106F152D:6A1669A6 and timestamp 2026-05-27 03:49:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\/\/docs.github.com\/en\/site-policy\/github-terms\/github-terms-of-service)", "documentation_url": "https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting", "status": "403" }
Status: ok: no drift detected
Status: ok: skipped 4 already-tracked candidate(s)
Status: ok: no expired memory entries (retention=180d)
Candidates: 3
Quietest / Noisiest: just now (14443580683755511179) / 4h 6m (18071088278327487459)
Total: 146
Split / Blocked / Launchable: 0 / 0 / 29
Total: 1
Proposed / Approved / Applied: 0 / 0 / 0
Total: 189
Active / Blocked / Failed / Completed: 0 / 2 / 0 / 97
Total: 403
Blocked / Allowed / Failed: 89 / 157 / 0
Main-first drift: 1
escalating Why the manager is waiting, launching, escalating, or refusing work.
Next: resolve the operator-owned items before opening fresh work
This is the manager's self-check trail. Auto-heal only repairs safe queue drift and uses long thresholds before it pauses or requeues expired work.
| Time | Event | Summary |
|---|---|---|
| 5m ago | sanity_warning | warn: 2 issue(s): repo Stbmap/chatter intake reports trouble: error: API error: 403 Forbidden - { "message": "API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID 9F8E:3216DE:439C8FF:106F152D:6A1669A6 and timestamp 2026-05-27 03:49:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\/\/docs.github.com\/en\/site-policy\/github-terms\/github-terms-of-service)", "documentation_url": "https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting", "status": "403" }; github_sync_last_status reports trouble: error: API error: 403 Forbidden - { "message": "API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID 9F8E:3216DE:439C8FF:106F152D:6A1669A6 and timestamp 2026-05-27 03:49:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\/\/docs.github.com\/en\/site-policy\/github-terms\/github-terms-of-service)", "documentation_url": "https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting", "status": "403" } |
| 9m ago | sanity_warning | warn: 2 issue(s): repo Stbmap/chatter intake reports trouble: error: API error: 403 Forbidden - { "message": "API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID D1A6:9B44C:4293D88:10394DE2:6A16687C and timestamp 2026-05-27 03:44:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\/\/docs.github.com\/en\/site-policy\/github-terms\/github-terms-of-service)", "documentation_url": "https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting", "status": "403" }; github_sync_last_status reports trouble: error: API error: 403 Forbidden - { "message": "API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID D1A6:9B44C:4293D88:10394DE2:6A16687C and timestamp 2026-05-27 03:44:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\/\/docs.github.com\/en\/site-policy\/github-terms\/github-terms-of-service)", "documentation_url": "https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting", "status": "403" } |
| 15m ago | sanity_warning | warn: 2 issue(s): repo Stbmap/chatter intake reports trouble: error: API error: 403 Forbidden - { "message": "API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID C7EE:167ADF:59A181:166F1F6:6A16674A and timestamp 2026-05-27 03:39:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\/\/docs.github.com\/en\/site-policy\/github-terms\/github-terms-of-service)", "documentation_url": "https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting", "status": "403" }; github_sync_last_status reports trouble: error: API error: 403 Forbidden - { "message": "API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID C7EE:167ADF:59A181:166F1F6:6A16674A and timestamp 2026-05-27 03:39:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\/\/docs.github.com\/en\/site-policy\/github-terms\/github-terms-of-service)", "documentation_url": "https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting", "status": "403" } |
| 19m ago | sanity_warning | warn: 2 issue(s): repo Stbmap/chatter intake reports trouble: error: API error: 403 Forbidden - { "message": "API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID 8ACE:3E865:4D140B:134E0E5:6A166628 and timestamp 2026-05-27 03:34:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\/\/docs.github.com\/en\/site-policy\/github-terms\/github-terms-of-service)", "documentation_url": "https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting", "status": "403" }; github_sync_last_status reports trouble: error: API error: 403 Forbidden - { "message": "API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID 8ACE:3E865:4D140B:134E0E5:6A166628 and timestamp 2026-05-27 03:34:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\/\/docs.github.com\/en\/site-policy\/github-terms\/github-terms-of-service)", "documentation_url": "https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting", "status": "403" } |
| 21m ago | sanity_warning | warn: 2 issue(s): repo Stbmap/chatter intake reports trouble: error: API error: 403 Forbidden - { "message": "API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID 8ACE:267AE8:3F33FB6:F5884D8:6A1664FF and timestamp 2026-05-27 03:29:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\/\/docs.github.com\/en\/site-policy\/github-terms\/github-terms-of-service)", "documentation_url": "https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting", "status": "403" }; github_sync_last_status reports trouble: error: API error: 403 Forbidden - { "message": "API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID 8ACE:267AE8:3F33FB6:F5884D8:6A1664FF and timestamp 2026-05-27 03:29:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\/\/docs.github.com\/en\/site-policy\/github-terms\/github-terms-of-service)", "documentation_url": "https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting", "status": "403" } |
| 23m ago | sanity_warning | warn: 3 issue(s): repo Stbmap/chatter intake reports trouble: error: API error: 403 Forbidden - { "message": "API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID 8ACE:267AE8:3F33FB6:F5884D8:6A1664FF and timestamp 2026-05-27 03:29:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\/\/docs.github.com\/en\/site-policy\/github-terms\/github-terms-of-service)", "documentation_url": "https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting", "status": "403" }; github_sync_last_status reports trouble: error: API error: 403 Forbidden - { "message": "API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID 8ACE:267AE8:3F33FB6:F5884D8:6A1664FF and timestamp 2026-05-27 03:29:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\/\/docs.github.com\/en\/site-policy\/github-terms\/github-terms-of-service)", "documentation_url": "https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting", "status": "403" }; webhook_last_status reports trouble: error: webhook reconciliation failed for issue_comment: forwarder: API error: 403 Forbidden - { "message": "API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID ECF2:19716A:481D14:12043E6:6A16654E and timestamp 2026-05-27 03:30:25 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\/\/docs.github.com\/en\/site-policy\/github-terms\/github-terms-of-service)", "documentation_url": "https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting", "status": "403" } |
| 25m ago | sanity_warning | warn: 2 issue(s): repo Stbmap/chatter intake reports trouble: error: API error: 403 Forbidden - { "message": "API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID 8ACE:267AE8:3F33FB6:F5884D8:6A1664FF and timestamp 2026-05-27 03:29:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\/\/docs.github.com\/en\/site-policy\/github-terms\/github-terms-of-service)", "documentation_url": "https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting", "status": "403" }; github_sync_last_status reports trouble: error: API error: 403 Forbidden - { "message": "API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID 8ACE:267AE8:3F33FB6:F5884D8:6A1664FF and timestamp 2026-05-27 03:29:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\/\/docs.github.com\/en\/site-policy\/github-terms\/github-terms-of-service)", "documentation_url": "https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting", "status": "403" } |
| 29m ago | sanity_warning | warn: 2 issue(s): repo Stbmap/chatter intake reports trouble: error: API error: 403 Forbidden - { "message": "API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID B06E:3DD6F6:415EC9A:FD4BCB9:6A1663D7 and timestamp 2026-05-27 03:24:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\/\/docs.github.com\/en\/site-policy\/github-terms\/github-terms-of-service)", "documentation_url": "https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting", "status": "403" }; github_sync_last_status reports trouble: error: API error: 403 Forbidden - { "message": "API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID B06E:3DD6F6:415EC9A:FD4BCB9:6A1663D7 and timestamp 2026-05-27 03:24:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\/\/docs.github.com\/en\/site-policy\/github-terms\/github-terms-of-service)", "documentation_url": "https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting", "status": "403" } |
Sessions tracked by dev-manager in the local database. These are the normalized manager-owned rows the scheduler, watcher, and orchestrator actively manage end to end.
Pause keeps a session visible and held by the manager. Kill attempts to delete the remote Jules session, then stops local management and requeues the linked GitHub item when possible.
Click any session row to open its details here. The selection is remembered across auto-refreshes.
| Trace / ID / Item | State | Details | Actions |
|---|---|---|---|
|
Stbmap/chatter Issue #23 14443580683755511179 |
running |
[P3] Implement guided new-room creation with recommended agent teams
Created: just now
Lease Remaining: in 2d 23h
|
|
|
Stbmap/dev-manager PR #378 6442613082920015817 |
running |
feat: jules PR lifecycle reuse and batching
Created: 48m ago
Last Active: 2m ago
Lease Remaining: in 2d 23h
|
|
|
Stbmap/stbmap 18071088278327487459 |
paused |
STBMAP Implementer Worker
Created: 4h 28m ago
Last Active: 4h 6m ago
|
Remote sessions pulled from the Jules API for any configured Jules accounts. This is the raw upstream mirror. The manager-owned queue lives in Local Sessions and uses normalized internal states for automation.
Loading remote Jules sessions...
First-class attention queue for Jules sessions that need a response, recovery nudge, or operator decision. This view listens to the manager event stream and refreshes only when something changes.
Loading sessions that need attention...
Single place for human decisions. This queue collects escalations, provider failures, blocked messages, and other items the manager cannot safely finish on its own.
Loading operator inbox items...
Paste a Jules web suggestion here when the upstream surface does not expose a clean API. Suggestions are tracked advisory work first, then they can be promoted to a GitHub issue, turned into a directive inbox item, or ignored as noise.
Loading suggestions...
Durable memory rows capture incidents, prompt changes, self-improvement notes, split plans, and other lessons the manager should remember across sessions. Rows now carry an expiry and a retention sweep prunes stale memory so prompts stay current.
Loading memory entries...
Goal plans turn broad work into ordered, reusable slices. Each row records the target, dependency graph, and the split/blocked/launchable disposition the manager derived before a worker starts.
| Time | Target | Goal | Disposition | Graph |
|---|---|---|---|---|
| just now |
Stbmap/chatter goal-plan:Stbmap/chatter#23 |
Replace basic room creation with a polished multi-step guided experience: room naming, recommended team templates, rich manual agent selection, plain-language orchestration-mode selection, team behavior preview, room creation through the existing APIs, and immediate transition into the chat workspace. Plan: [P3] Implement guided new-room creation with recommended agent teams Keep issue #23 as one cohesive room-creation slice under the fat split policy. The guided flow, team templates, agent selection cards, orchestration-mode explanations, create-room API wiring, and transition into chat all share the same state and UX, so splitting would create duplicate UI/API coordination work. |
launchable |
deps=0 history=0 children=0 ordered=1 |
| 48m ago |
Stbmap/dev-manager goal-plan:Stbmap/dev-manager#378 |
Determine whether PR #378 is safe to merge by verifying that reuse is limited to explicit same-PR lifecycle or approved pre-PR bundles, and that reassigned work is delivered and tracked without being falsely completed. Plan: feat: jules PR lifecycle reuse and batching Do not split PR closeout. PR #378 should be reviewed as one fast-lane merge decision because the scheduler reuse logic, duplicate admission behavior, session-work-item links, and completion semantics must be assessed together. |
launchable |
deps=0 history=2 children=0 ordered=3 |
| 1h 59m ago |
Stbmap/dev-manager goal-plan:Stbmap/dev-manager#379 |
Decide whether PR #379 is safe to merge by checking that session reuse, issue batching, follow-on assignment, continuation probing, and session-work-item accounting preserve duplicate-session prevention, PR-first policy, repo concurrency, and explicit policy gates. Plan: Jules PR-lifecycle reuse and pre-PR issue batching Do not split PR closeout. PR #379 should be reviewed as one fast-lane merge decision because the scheduler, runner, orchestrator, PR closeout, and schema changes must be assessed together for policy consistency. |
launchable |
deps=0 history=1 children=0 ordered=2 |
| 2h 46m ago |
Stbmap/dev-manager goal-plan:Stbmap/dev-manager#371 |
Add first-class policy and state handling so dev-manager prefers the originating Jules session for PR feedback/repair, can launch compatible multi-issue batches before implementation starts, records bundle ownership clearly, and does not assign unrelated new work to a session that can only amend an existing PR. Plan: Feature: Jules PR-lifecycle reuse and pre-PR issue batching Keep this as one fat policy/workflow issue: the PR-lifecycle reuse, pre-PR batching, compatibility checks, and accounting rules are tightly coupled and should be designed/tested together to avoid contradictory scheduler behavior. |
launchable |
deps=0 history=0 children=0 ordered=1 |
| 4h 20m ago |
Stbmap/dev-manager goal-plan:Stbmap/dev-manager#365 |
Deliver an end-to-end intake path where an external producer can submit a scoped authenticated report, dev-manager stores raw and sanitized evidence with attachments, creates or groups a durable intake/work item candidate, records supervisor enrichment fields, and exposes the item in API/UI triage without automatically launching Jules unless policy later allows it. Plan: Feature: external production issue intake API with files, screenshots, logs, and metrics Keep #365 as one cohesive fat issue. The external intake endpoint, token/scoping rules, evidence storage, dedupe, enrichment record, and command-center triage lane need a shared data contract; splitting now would risk incompatible intake and artifact models. Scope should stay focused on intake/triage, not auto-launching work or production deploy behavior. |
launchable |
deps=0 history=0 children=0 ordered=1 |
Split plans are the operator-approved workflow that turns a broad item into linked child GitHub issues. Approve a proposal, apply it to create the child issues, or request a regeneration if the slice set needs another pass.
| Time | Target | State | Parent | Children | Summary | Actions |
|---|---|---|---|---|---|---|
| 4d 19h ago |
Stbmap/dev-manager Stbmap/dev-manager#244 issue_split:Stbmap/dev-manager#244 |
rejected | split_rejected |
|
Prove from merged main that the manager can survive a supervised multi-cycle workload window, capture incident-grade evidence, and stop deterministically when drift, duplicate work, stale leases, repeated recoveries, or manual intervention appear. The issue is too broad for one fresh worker because it mixes three separable concerns while repo guidance still says keep the manager supervised, not unattended: a long-running driver, durable soak evidence, and deterministic stop conditions. Rejected: 4d 19h ago |
|
Durable handoff rows record role transitions such as planner to implementer, implementer to reviewer, and orchestrator escalations. This is the visible multi-agent ownership trail.
Loading handoffs...
Durable role-owned tasks are derived from handoffs and tracked separately from raw GitHub items. They keep planner, implementer, reviewer, repairer, and reconciler work visible across retries and scheduler restarts.
By status:
By role/state:
| Task | Role / Status | Target | Chain | Updated |
|---|---|---|---|---|
|
agent-task:stbmap/dev-manager:github_item:Stbmap/dev-manager#379:reviewer goal-handoff:Stbmap/dev-manager#379:planner->reviewer |
reviewer
blocked
GitHub mirror drift must be reconciled before launching fresh work repo=Stbmap/dev-manager: repo Stbmap/dev-manager GitHub mirror drift (issue delta -12, PR delta -2)
|
Stbmap/dev-manager github_item Stbmap/dev-manager#379 |
chain: goal-handoff:Stbmap/dev-manager#379:planner->reviewer
origin: goal-handoff:Stbmap/dev-manager#379:planner->reviewer
|
29m ago |
|
agent-task:stbmap/dev-manager:github_item:Stbmap/dev-manager#378:reviewer goal-handoff:Stbmap/dev-manager#378:planner->reviewer |
reviewer
blocked
1 active session(s) already exist for Stbmap/dev-manager#378
|
Stbmap/dev-manager github_item Stbmap/dev-manager#378 |
chain: goal-handoff:Stbmap/dev-manager#378:planner->reviewer
origin: goal-handoff:Stbmap/dev-manager#378:planner->reviewer
|
45m ago |
|
agent-task:stbmap/chatter:github_item:Stbmap/chatter#55:reconciler handoff:pr_merge:reviewer->reconciler:8607365852593698811:Stbmap/chatter#55 |
reconciler
completed
merged
target pull request is merged on GitHub
|
Stbmap/chatter github_item Stbmap/chatter#55 |
chain: handoff:pr_merge:reviewer->reconciler:8607365852593698811:Stbmap/chatter#55
origin: handoff:pr_merge:reviewer->reconciler:8607365852593698811:Stbmap/chatter#55
session: 8607365852593698811
|
2d 6h ago |
|
agent-task:stbmap/chatter:github_item:Stbmap/chatter#52:reconciler handoff:pr_merge:reviewer->reconciler:12822045986200905102:Stbmap/chatter#52 |
reconciler
completed
merged
target pull request is merged on GitHub
|
Stbmap/chatter github_item Stbmap/chatter#52 |
chain: handoff:pr_merge:reviewer->reconciler:12822045986200905102:Stbmap/chatter#52
origin: handoff:pr_merge:reviewer->reconciler:12822045986200905102:Stbmap/chatter#52
session: 12822045986200905102
|
2d 7h ago |
|
agent-task:stbmap/chatter:github_item:Stbmap/chatter#49:reconciler handoff:pr_merge:reviewer->reconciler:7015900643684069678:Stbmap/chatter#49 |
reconciler
completed
merged
target pull request is merged on GitHub
|
Stbmap/chatter github_item Stbmap/chatter#49 |
chain: handoff:pr_merge:reviewer->reconciler:7015900643684069678:Stbmap/chatter#49
origin: handoff:pr_merge:reviewer->reconciler:7015900643684069678:Stbmap/chatter#49
session: 7015900643684069678
|
2d 7h ago |
Imported work items from the tracked repository. These feed the scheduler.
Closed items are hidden by default.
690 closed item(s) are hidden. Use ?show_closed=1 to reveal them.
| Repo / Issue | Title | State | Updated | Link |
|---|---|---|---|---|
|
Stbmap/chatter Issue #23 |
[P3] Implement guided new-room creation with recommended agent teams | in-progress | just now | Open |
|
Stbmap/dev-manager Issue #260 |
feature: dev-manager scheduled tasks | deferred | 1m ago | Open |
|
Stbmap/dev-manager Issue #291 |
feature: autonomy readiness scorecard and 100% vision dashboard | deferred | 1m ago | Open |
|
Stbmap/dev-manager Issue #366 |
Feature: work item attachments and implementer context delivery | deferred | 1m ago | Open |
|
Stbmap/dev-manager Issue #367 |
Feature: multimodal operator chat intake with audio, transcript, and text | deferred | 1m ago | Open |
|
Stbmap/dev-manager Issue #368 |
Feature: versioned issue-enrichment skill for supervisor intake | deferred | 1m ago | Open |
|
Stbmap/dev-manager Issue #374 |
Feature: unified PR acceptance state machine | deferred | 1m ago | Open |
|
Stbmap/dev-manager Issue #360 |
Feature: unified supervisor command center with modern Liquid Glass UX | deferred | 1m ago | Open |
|
Stbmap/dev-manager Issue #362 |
Feature: natural-language supervisor action planner and execution engine | deferred | 1m ago | Open |
|
Stbmap/dev-manager Issue #364 |
Feature: GitHub mirror bridge and unmanaged automation containment for devman-owned work | deferred | 1m ago | Open |
|
Stbmap/dev-manager Issue #363 |
Phase: production operations management for maintained repos | deferred | 1m ago | Open |
|
Stbmap/dev-manager Issue #365 |
Feature: external production issue intake API with files, screenshots, logs, and metrics | deferred | 1m ago | Open |
|
Stbmap/dev-manager Issue #371 |
Feature: Jules PR-lifecycle reuse and pre-PR issue batching | in-progress | 1m ago | Open |
|
Stbmap/chatter Issue #24 |
[P3] Build wow-effect Agent Team Strip with live execution states | deferred | 1m ago | Open |
|
Stbmap/chatter Issue #25 |
[P3] Connect frontend to WebSocket streaming and deterministic message state | deferred | 1m ago | Open |
|
Stbmap/chatter Issue #26 |
[P3] Implement composer, @mention autocomplete, and agent picker | deferred | 1m ago | Open |
|
Stbmap/chatter Issue #27 |
[P3] Render markdown, code blocks, tables, links, copy actions, and safe rich responses | deferred | 1m ago | Open |
|
Stbmap/chatter Issue #28 |
[P3] Build first-run onboarding, premium empty states, and starter prompts | deferred | 1m ago | Open |
|
Stbmap/chatter Issue #29 |
[P3] Add conversation controls: cancel, retry, copy, collapse, jump-to-latest, and scroll pause | deferred | 1m ago | Open |
|
Stbmap/chatter Issue #31 |
[P4] Add structured logging, run traces, metrics, health, and readiness endpoints | deferred | 1m ago | Open |
|
Stbmap/chatter Issue #32 |
[P4] Build automated test suite for auth, API, realtime, orchestration, and UI smoke flows | deferred | 1m ago | Open |
|
Stbmap/chatter Issue #33 |
[P4] Add CI/CD checks and production deployment packaging | deferred | 1m ago | Open |
|
Stbmap/chatter Issue #35 |
[Future] Add room summaries and approved memory foundation | hitl | 1m ago | Open |
|
Stbmap/chatter Issue #36 |
[Future] Add tools, retrieval, attachments, and citations architecture plan | hitl | 1m ago | Open |
|
Stbmap/chatter Issue #34 |
[P4] Performance and accessibility pass for premium fast UI | deferred | 1m ago | Open |
|
Stbmap/chatter Issue #15 |
[P2] Implement provider-neutral LLM streaming interface for local Codex and Gemini CLIs | deferred | 1m ago | Open |
|
Stbmap/chatter Issue #17 |
[P2] Implement routing policy engine for all_respond, round_robin, mention_only, and MC synthesis | deferred | 1m ago | Open |
|
Stbmap/chatter Issue #18 |
[P2] Build central multi-agent orchestrator with streamed turns and durable run state | deferred | 1m ago | Open |
|
Stbmap/chatter Issue #21 |
[P3] Create Liquid Glass design system primitives for the web UI | deferred | 1m ago | Open |
|
Stbmap/chatter Issue #22 |
[P3] Build main chat layout: sidebar, room header, timeline, composer, and agent strip slots | deferred | 1m ago | Open |
|
Stbmap/chatter Issue #30 |
[P4] Apply API, WebSocket, markdown, prompt, and secret security hardening | deferred | 1m ago | Open |
|
Stbmap/chatter Issue #16 |
[P2] Implement prompt builder with system prompts, history windowing, and pruning | deferred | 1m ago | Open |
|
Stbmap/chatter Issue #19 |
[P2] Implement run cancellation, failed-turn retry, and recovery semantics | deferred | 1m ago | Open |
Imported pull requests from the tracked repository.
Closed items are hidden by default.
690 closed item(s) are hidden. Use ?show_closed=1 to reveal them.
| Repo / PR | Title | State | Updated | Link |
|---|---|---|---|---|
|
Stbmap/dev-manager PR #379 |
Jules PR-lifecycle reuse and pre-PR issue batching | ready | 1m ago | Open |
|
Stbmap/dev-manager PR #378 |
feat: jules PR lifecycle reuse and batching | in-progress | 1m ago | Open |
Manager-level secrets loaded at runtime.
Map each GitHub repository to a local checkout so intake can watch it and Codex can answer from the correct codebase. This is the seam that makes multi-repo orchestration work.
Every repository policy save records a durable snapshot. Use restore to roll a repo back to a known-good policy version.
| Repo | Version | Status | Summary | Description | Updated | Actions |
|---|---|---|---|---|---|---|
| Stbmap/chatter | #1 | active | - | Enable Stbmap/chatter after bootstrap and successful repo preflight with explicit OAuth-scope waiver. | 3d 9h ago | |
| Stbmap/dev-manager | #1 | active | - | seeded from repo_configs | 6d 20h ago | |
| Stbmap/stbmap | #2 | active | reuse=Prefer continuing a receptive sam... route-responder=codex | - | 1d 21h ago | |
| Stbmap/stbmap | #1 | inactive | - | seeded from repo_configs | 1d 21h ago |
These DB-backed settings control the automatic loops and decision thresholds without code changes or restarts. Use Go duration strings like 30s, 5m, or 2h. The issue split policy lives here too, so you can keep Jules on fat issues unless you explicitly flip it to split.
Budget thresholds live in runtime settings for global defaults and in each repository mapping for overrides. They control how much Jules and provider burn the manager will tolerate before it slows fresh launches.
| Scope | Policy | Jules | Codex | Gemini | Status | Blocking |
|---|---|---|---|---|---|---|
| global | global defaults | 56/unbounded | 252/unbounded | 44/unbounded | pass | - |
| Stbmap/chatter | inherited | 20/unbounded | 103/unbounded | 0/unbounded | pass | - |
| Stbmap/dev-manager | inherited | 26/unbounded | 122/unbounded | 0/unbounded | pass | - |
| Stbmap/stbmap | inherited | 3/unbounded | 0/unbounded | 44/unbounded | pass | - |
| Name | Limits (Concurrent/Daily) | Active |
|---|---|---|
|
work_1 ID: 490a1869-f32f-4189-83cc-85b4334e8fcd |
Conc: 10 Daily: 85 Used: 56 Remaining: 29 |
Active Jules API Key: OK Last Used: never |
Roles describe the worker lanes the manager knows about. Updating a role now creates a new prompt version instead of overwriting the previous one.
Prompt versions are the durable source of truth for worker instructions and recovery playbooks. Use scope_type=role and scope_key=implementer/reviewer/orchestrator/responder/admission/completion_review for defaults, scope_type=repo plus a repo full name for repo overrides, or scope_type=playbook to manage named recovery playbooks.
| Scope | Prompt | Version | Status | Description | Content | Updated | Actions |
|---|---|---|---|---|---|---|---|
| playbook: global | awaiting_clarification | #1 | active | Clarification waiting path | {
"key": "awaiting_clarification",
"summary": "Answer or escalate a worker question with the smallest safe step.",
"audience": "responder",
"trigger_states": ["awaiting_clarification"],
"allowed_actions": ["answer", "escalate"],
"message_template": "This session is waiting on clarification. Answer the question directly from the repository docs and current codebase. If the docs do not cover it, say exactly what is missing and the smallest next step. Question: {{.Reason}}.",
"operator_note_template": "Clarification playbook selected for {{.SessionID}}.",
"stop_conditions": ["question answered", "escalated to human review"],
"evidence": ["clarification question present", "confidence available"]
} |
7d 23h ago | |
| playbook: global | blocked_merge | #1 | active | Merge blocker recovery | {
"key": "blocked_merge",
"summary": "Clear merge conflicts or report the exact blocker.",
"audience": "reviewer",
"trigger_states": ["blocked"],
"allowed_actions": ["nudge", "escalate"],
"message_template": "This session is blocked by merge or review state. Resolve the blocker directly now. If this is a merge conflict or behind-base PR, update from the base branch, resolve conflicts, rerun the relevant tests, and push an updated PR. If you still cannot proceed, report the exact blocker and the smallest next step.",
"operator_note_template": "Merge-block playbook selected for {{.ItemLabel}} because {{.Reason}}.",
"stop_conditions": ["blocker resolved", "human review required"],
"evidence": ["merge conflict", "branch protection", "base branch drift", "changes requested"]
} |
7d 23h ago | |
| playbook: global | duplicate_session | #1 | active | Duplicate session recovery | {
"key": "duplicate_session",
"summary": "Prevent duplicate work from spawning more quota burn.",
"audience": "operator",
"trigger_states": ["running", "blocked", "failed"],
"allowed_actions": ["escalate", "release"],
"message_template": "This session appears to duplicate another worker or a recently completed attempt. Stop new changes, keep the current evidence intact, and wait for manager reconciliation before starting more work.",
"operator_note_template": "Duplicate-session playbook selected for {{.ItemLabel}}.",
"stop_conditions": ["duplicate ownership resolved"],
"evidence": ["duplicate launch", "similar branch", "similar PR title", "same item already owned"]
} |
7d 23h ago | |
| playbook: global | failed_session | #1 | active | Failed session recovery | {
"key": "failed_session",
"summary": "Stop active work and surface the smallest clean recovery path.",
"audience": "operator",
"trigger_states": ["failed"],
"allowed_actions": ["escalate", "release"],
"message_template": "This session appears failed or unrecoverable. Stop active work, preserve the current evidence, and report the smallest clean recovery step for {{.ItemLabel}}.",
"operator_note_template": "Failed-session recovery selected for {{.ItemLabel}}.",
"stop_conditions": ["operator intervenes", "session is terminalized"],
"evidence": ["failed state", "stale lease", "missing remote activity"]
} |
7d 23h ago | |
| playbook: global | local_only_session | #1 | active | Local-only session recovery | {
"key": "local_only_session",
"summary": "Handle rows that exist locally without a reachable remote worker.",
"audience": "operator",
"trigger_states": ["blocked", "failed"],
"allowed_actions": ["reassign", "escalate", "release"],
"message_template": "This session is local-only or missing its remote worker. Do not assume the work is progressing remotely. Reconcile ownership, then decide whether to reassign or release {{.ItemLabel}}.",
"operator_note_template": "Local-only recovery selected for {{.ItemLabel}}.",
"stop_conditions": ["remote owner restored", "item requeued", "item released"],
"evidence": ["no remote account", "missing Jules session", "stale lease with no activity"]
} |
7d 23h ago | |
| playbook: global | operator_paused_work | #1 | active | Operator paused work recovery | {
"key": "operator_paused_work",
"summary": "Respect operator pauses and wait for an explicit resume.",
"audience": "implementer",
"trigger_states": ["paused"],
"allowed_actions": ["noop", "escalate"],
"message_template": "This session is paused by operator policy. Do not start new work or self-reassign. Wait for an explicit resume or a fresh operator instruction.",
"operator_note_template": "Operator-paused work selected for {{.ItemLabel}}.",
"stop_conditions": ["operator resumes", "operator changes the pause reason"],
"evidence": ["operator pause reason", "manager pause reason", "sanity pause"]
} |
7d 23h ago | |
| playbook: global | quiet_running_session | #1 | active | Quiet running worker | {
"key": "quiet_running_session",
"summary": "Nudge a running worker that has gone quiet but is still expected to continue.",
"audience": "implementer",
"trigger_states": ["running", "starting"],
"allowed_actions": ["nudge"],
"message_template": "This session has been quiet for {{.QuietFor}}. Continue from the repository docs and current branch. If you are blocked, report the exact blocker and the smallest next step for {{.ItemLabel}}.",
"operator_note_template": "Quiet running worker nudged for {{.ItemLabel}} after {{.QuietFor}}.",
"stop_conditions": ["worker responds", "state changes"],
"evidence": ["quiet_for >= nudge_after", "session still has an active owner"]
} |
6d 22h ago | |
| playbook: global | remote_only_session | #1 | active | Remote-only session recovery | {
"key": "remote_only_session",
"summary": "Handle sessions that exist remotely but are missing locally.",
"audience": "operator",
"trigger_states": ["blocked", "failed"],
"allowed_actions": ["escalate"],
"message_template": "This session appears to exist remotely without a matching local owner. Stop assuming local state is authoritative and wait for manager reconciliation before taking any more action.",
"operator_note_template": "Remote-only recovery selected for {{.SessionID}}.",
"stop_conditions": ["local mirror reconciled"],
"evidence": ["remote session missing local row", "mirror drift", "unmatched remote activity"]
} |
7d 23h ago | |
| playbook: global | stale_lease | #1 | active | Stale lease recovery | {
"key": "stale_lease",
"summary": "Reassign or release work that has exceeded its lease.",
"audience": "operator",
"trigger_states": ["running", "paused", "blocked", "awaiting_clarification"],
"allowed_actions": ["reassign", "escalate", "release"],
"message_template": "This session's lease looks stale. Confirm whether the worker is still actively making progress. If not, reassign or release the smallest work item possible and leave a clear trace for the next worker.",
"operator_note_template": "Stale-lease playbook selected for {{.ItemLabel}} after {{.QuietFor}}.",
"stop_conditions": ["lease refreshed", "work requeued", "operator decides to hold"],
"evidence": ["quiet_for beyond lease threshold", "lease expired", "worker not responding"]
} |
7d 23h ago | |
| role: admission | admission | #1 | active | Decides whether to start a new Jules session. | You are the orchestrator for dev-manager. Your job is to decide whether it is worth starting a fresh Jules session for a queued work item. Be patient. Avoid duplicate sessions. Prefer waiting when an existing worker is already handling the same issue or pull request. If the task is not clearly ready for a new worker, say so. If the task is clearly ready, say so and give the smallest useful reason. |
8d ago | |
| role: another-role | another-role | #1 | active | Desc | Prompt |
6d 22h ago | |
| role: completion_review | completion_review | #1 | active | Reviews terminal Jules sessions and reports whether the result looks trustworthy. | You are the orchestrator for dev-manager. Your job is to assess a Jules session that just reached a terminal state. Use the repository docs, current codebase, and manager context to produce a short completion review. Say whether the completion looks trustworthy and what the smallest next manager step should be. Be concrete, calm, and brief. |
8d ago | |
| role: implementer | implementer | #1 | active | Writes code to implement features and bugfixes. | You are an implementer. Write the code to solve the issue. |
5d 1h ago | |
| role: orchestrator | orchestrator | #1 | active | Orchestrates the workflow and triages issues. | You are an orchestrator. Route and plan the work. |
5d 1h ago | |
| role: reconciler | reconciler | #1 | active | Closes out finished work and reconciles the queue. | You are a reconciler. Tidy up, verify the final state, and close the loop. |
6d 8h ago | |
| role: repairer | repairer | #1 | active | Repairs blocked work and clears merge conflicts. | You are a repairer. Fix the blocker or conflict that is preventing the work from progressing. |
6d 8h ago | |
| role: responder | responder | #1 | active | Answers clarification questions from Jules. | You are the clarification responder for dev-manager. Your job is to answer Jules' question directly, briefly, and concretely. Prefer repository docs, tracked issue/PR context, and the current codebase. If the answer depends on live manager state, query the manager API yourself and turn that into a direct answer for Jules. Never tell Jules to query localhost, the manager API, or any other local-only service. If the docs do not cover the question, say exactly what is missing and the smallest next step. |
8d ago | |
| role: reviewer | reviewer | #1 | active | Reviews code changes. | You are a reviewer. Review the code changes. |
5d 1h ago | |
| role: splitter | splitter | #1 | active | Splits broad work into smaller slices. | You are a splitter. Break broad work into smaller, actionable slices and hand the next slice to the right worker. |
6d 8h ago | |
| role: test-role | test-role | #2 | active | Updated Description | Updated Prompt |
6d 22h ago | |
| role: test-role | test-role | #1 | inactive | Test Description | Test Prompt |
6d 22h ago |
Manage durable guidance, design aids, and reference artifacts for implementer agents.
| Time | Actor | Event | Target | Details |
|---|---|---|---|---|
| just now | scheduler | goal_plan_recorded | github_item: Stbmap/chatter#23 | {"goal": "Replace basic room creation with a polished multi-step guided experience: room naming, recommended team templates, rich manual agent selection, plain-language orchestration-mode selection, team behavior preview, room creation through the existing APIs, and immediate transition into the chat workspace.", "reason": "Keep issue #23 as one cohesive room-creation slice under the fat split policy. The guided flow, team templates, agent selection cards, orchestration-mode explanations, create-room API wiring, and transition into chat all share the same state and UX, so splitting would create duplicate UI/API coordination work.", "summary": "Build a premium guided new-room creation flow that lets users assemble an agent team from templates or manual selection and opens the created room immediately.", "repo_policy": "reuse=Prefer continuing a receptive sam... max-cycles=1", "should_split": false, "verification": ["User can create a room in minimal steps from a recommended template.", "Manual agent selection supports select/deselect with rich cards showing visual mark, name, role, and value proposition.", "All supported orchestration modes are explained in plain language, including MC synthesis when available.", "Validation, loading, success, and API error states are polished and do not leave the user stuck.", "Created room is selected/opened immediately in the chat experience.", "Tests cover successful room creation, validation errors, and template selection, or document exact blockers."], "admission_reason": "Issue #23 is ready and no live session owns it; the prior layout/security work is historical rather than active ownership, so guided new-room creation can start from current main as one cohesive frontend/API slice.", "split_suppressed": false, "dependency_reason": "", "split_recommended": false, "issue_split_policy": "fat"} |
| just now | dev-manager-codex | provider_result | github_item: Stbmap/chatter#23 | {"model": "gpt-5.5", "action": "issue_split", "status": "success", "provider": "codex", "item_type": "issue", "latency_ms": 11296, "item_number": 23, "prompt_name": "issue_split", "repo_full_name": "Stbmap/chatter"} |
| 1m ago | dev-manager-codex | provider_result | github_item: Stbmap/chatter#23 | {"model": "gpt-5.5", "action": "admission", "status": "success", "provider": "codex", "item_type": "issue", "latency_ms": 11151, "item_number": 23, "prompt_name": "admission", "repo_full_name": "Stbmap/chatter", "prompt_version_id": "11aac04d-7598-4ef2-9ea7-53be951f00c1", "prompt_version_number": 1} |
| 1m ago | dev-manager-github-intake | github-item-state-sync | github_item: 3c4b6c76-4bd1-4605-bf67-7ba64d7e7088 | {"state": "ready", "reason": "state synced from deferred to ready", "item_number": "379", "repo_full_name": "Stbmap/dev-manager"} |
| 1m ago | scheduler | github_item_expired_deferral_released | github_item: Stbmap/chatter#23 | {"item_number": 23, "repo_full_name": "Stbmap/chatter", "previous_reason": "Do not start issue #23 yet: the main chat layout from issue #22 is still pending PR #79 closeout/review, and guided room creation should build on the merged sidebar/workspace code rather than an unmerged branch."} |
| 1m ago | scheduler | duplicate_session_prevented | repo: Stbmap/chatter | {"is_pr": "false", "reason": "recent session 5656047916296403645 has similar title", "item_number": "22", "repo_full_name": "Stbmap/chatter", "duplicate_of_session": "5656047916296403645"} |
| 1m ago | dev-manager-webhook | webhook_delivery_processed | webhook_delivery: b35f9360-597f-11f1-99b9-9b2efcd68b0c | {"summary": "webhook reconciliation triggered", "event_type": "webhook_delivery_processed", "delivery_id": "b35f9360-597f-11f1-99b9-9b2efcd68b0c", "repo_full_name": "Stbmap/dev-manager", "source_event_type": "pull_request"} |
| 1m ago | dev-manager-webhook | webhook_delivery_processed | webhook_delivery: b49d91a0-597f-11f1-9985-8e191a0eb67e | {"summary": "webhook reconciliation triggered", "event_type": "webhook_delivery_processed", "delivery_id": "b49d91a0-597f-11f1-9985-8e191a0eb67e", "repo_full_name": "Stbmap/dev-manager", "source_event_type": "issue_comment"} |
| 1m ago | scheduler | github_item_expired_deferral_released | github_item: Stbmap/chatter#22 | {"item_number": 22, "repo_full_name": "Stbmap/chatter", "previous_reason": "recent session 5656047916296403645 has similar title"} |
| 1m ago | scheduler | duplicate_session_prevented | repo: Stbmap/dev-manager | {"is_pr": "true", "reason": "recent PR #378 branch \"feat/jules-pr-lifecycle-reuse-2781923755567573377\" looks like the same branch", "branch_ref": "jules-reuse-batching-14276849648897883708", "item_number": "379", "repo_full_name": "Stbmap/dev-manager"} |
| 1m ago | pr-first-controller | pr_closeout_action | pull_request: Stbmap/dev-manager#379 | {"action": "launch_repair", "reason": "local closeout requested changes: PR #379 is still not safe to merge: the diff still auto-bundles ready issues before a hard approved-bundle decision and adds orchestrator continuation/follow-on paths from normal no-op decisions, which can assign new work to existing sessions outside the required explicit policy gate.", "pr_number": 379, "repo_full_name": "Stbmap/dev-manager"} |
| 1m ago | dev-manager-codex | provider_result | pull_request: Stbmap/dev-manager#379 | {"model": "gpt-5.5", "action": "completion_review", "status": "success", "provider": "codex", "item_type": "pr", "latency_ms": 9120, "item_number": 379, "prompt_name": "completion_review", "repo_full_name": "Stbmap/dev-manager", "prompt_version_id": "0ff79af0-3c61-4a39-9931-9de571b7623f", "prompt_version_number": 1} |
| 2m ago | agent | agent_session_notify_completed | agent_protocol: 6442613082920015817 | {"body": "I noticed the reviewer's feedback. I updated the `AssessDuplicateAdmissionWithPolicy` function. The previous code was inferring intentional reuse for *any* active duplicate when the repo reuse policy was non-empty. Now, the logic correctly only considers \"intentional reuse\" for fuzzy matches (similar title/branch) which represent related/bundled work. It avoids marking exact PR matches or exact issue matches (same item number) as intentional reuse, since that indicates duplicate intake of the identical item rather than reuse.\n\nHowever, the reviewer commented:\n> \"the diff still turns any active duplicate into intentional reuse when the repo reuse policy is non-empty, without proving same open PR lifecycle or an approved pre-PR bundle.\"\n\nTo properly check for \"same open PR lifecycle or an approved pre-PR bundle\", I need to know where/how to perform this proof. \nShould `isIntentionalReuse` also check if the `dupSession` has an open PR or is part of a bundle? I might need more information about how \"approved pre-PR bundle\" or \"same open PR lifecycle\" are defined in the context of this function. Could you provide a pointer to what conditions or fields precisely determine these states?", "kind": "done", "state": "running", "title": "", "summary": "I noticed the reviewer's feedback. I updated the `AssessDuplicateAdmissionWithPolicy` function. The previous code was...", "trace_id": "ad4b7dad-5ad8-4ce0-b17c-d5cb63205d76", "source_id": "6442613082920015817", "session_id": "6442613082920015817", "source_type": "jules", "manager_status": "active", "repo_full_name": "Stbmap/dev-manager", "codex_forwarded": "false", "pr_closeout_verdict": "close", "pr_closeout_deferred": "true"} |
| 2m ago | agent | agent_session_notify_requested | agent_protocol: 6442613082920015817 | {"body": "I noticed the reviewer's feedback. I updated the `AssessDuplicateAdmissionWithPolicy` function. The previous code was inferring intentional reuse for *any* active duplicate when the repo reuse policy was non-empty. Now, the logic correctly only considers \"intentional reuse\" for fuzzy matches (similar title/branch) which represent related/bundled work. It avoids marking exact PR matches or exact issue matches (same item number) as intentional reuse, since that indicates duplicate intake of the identical item rather than reuse.\n\nHowever, the reviewer commented:\n> \"the diff still turns any active duplicate into intentional reuse when the repo reuse policy is non-empty, without proving same open PR lifecycle or an approved pre-PR bundle.\"\n\nTo properly check for \"same open PR lifecycle or an approved pre-PR bundle\", I need to know where/how to perform this proof. \nShould `isIntentionalReuse` also check if the `dupSession` has an open PR or is part of a bundle? I might need more information about how \"approved pre-PR bundle\" or \"same open PR lifecycle\" are defined in the context of this function. Could you provide a pointer to what conditions or fields precisely determine these states?", "kind": "done", "title": "", "summary": "I noticed the reviewer's feedback. I updated the `AssessDuplicateAdmissionWithPolicy` function. The previous code was...", "trace_id": "ad4b7dad-5ad8-4ce0-b17c-d5cb63205d76", "source_id": "6442613082920015817", "session_id": "6442613082920015817", "source_type": "jules", "repo_full_name": "Stbmap/dev-manager"} |
| 2m ago | agent | agent_session_notify_completed | agent_protocol: 6442613082920015817 | {"body": "PR #378 should be closed; manager awaiting terminal closeout", "kind": "blocker", "state": "blocked", "title": "", "summary": "PR #378 should be closed; manager awaiting terminal closeout", "trace_id": "ad4b7dad-5ad8-4ce0-b17c-d5cb63205d76", "source_id": "6442613082920015817", "session_id": "6442613082920015817", "source_type": "jules", "manager_status": "active", "repo_full_name": "Stbmap/dev-manager", "codex_forwarded": "true"} |
| 2m ago | dev-manager-codex | provider_result | session: 6442613082920015817 | {"model": "gpt-5.4-mini", "action": "answer", "status": "success", "provider": "codex", "trace_id": "ad4b7dad-5ad8-4ce0-b17c-d5cb63205d76", "item_type": "pr", "latency_ms": 6039, "item_number": 378, "prompt_name": "responder", "repo_full_name": "Stbmap/dev-manager", "prompt_version_id": "56c10c5f-469b-4aa4-bbd6-34f4d5e89cd9", "prompt_version_number": 1} |
| 2m ago | agent | agent_session_notify_requested | agent_protocol: 6442613082920015817 | {"body": "PR #378 should be closed; manager awaiting terminal closeout", "kind": "blocker", "title": "", "summary": "PR #378 should be closed; manager awaiting terminal closeout", "trace_id": "ad4b7dad-5ad8-4ce0-b17c-d5cb63205d76", "source_id": "6442613082920015817", "session_id": "6442613082920015817", "source_type": "jules", "repo_full_name": "Stbmap/dev-manager"} |
| 2m ago | pr-first-controller | pr_closeout_action | pull_request: Stbmap/dev-manager#378 | {"action": "request_changes", "reason": "local closeout requested changes: PR #378 still is not safe to merge: the scheduler still treats active fuzzy duplicates as intentional reuse based only on a non-empty repo reuse policy, without explicit same-open-PR or approved pre-PR bundle proof.", "pr_number": 378, "repo_full_name": "Stbmap/dev-manager"} |
| 2m ago | dev-manager-codex | provider_result | pull_request: Stbmap/dev-manager#378 | {"model": "gpt-5.5", "action": "completion_review", "status": "success", "provider": "codex", "item_type": "pr", "latency_ms": 8323, "item_number": 378, "prompt_name": "completion_review", "repo_full_name": "Stbmap/dev-manager", "prompt_version_id": "0ff79af0-3c61-4a39-9931-9de571b7623f", "prompt_version_number": 1} |
| 5m ago | dev-manager-sanity | sanity_warning | manager: sanity | {"status": "warn: 2 issue(s): repo Stbmap/chatter intake reports trouble: error: API error: 403 Forbidden - {\n\t\"message\": \"API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID 9F8E:3216DE:439C8FF:106F152D:6A1669A6 and timestamp 2026-05-27 03:49:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}; github_sync_last_status reports trouble: error: API error: 403 Forbidden - {\n\t\"message\": \"API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID 9F8E:3216DE:439C8FF:106F152D:6A1669A6 and timestamp 2026-05-27 03:49:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}", "repairs": [], "findings": ["repo Stbmap/chatter intake reports trouble: error: API error: 403 Forbidden - {\n\t\"message\": \"API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID 9F8E:3216DE:439C8FF:106F152D:6A1669A6 and timestamp 2026-05-27 03:49:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}", "github_sync_last_status reports trouble: error: API error: 403 Forbidden - {\n\t\"message\": \"API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID 9F8E:3216DE:439C8FF:106F152D:6A1669A6 and timestamp 2026-05-27 03:49:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}"]} |
| 9m ago | agent | agent_session_notify_completed | agent_protocol: 6442613082920015817 | {"body": "I noticed the reviewer's feedback. I updated the `AssessDuplicateAdmissionWithPolicy` function. The previous code was inferring intentional reuse for *any* active duplicate when the repo reuse policy was non-empty. Now, the logic correctly only considers \"intentional reuse\" for fuzzy matches (similar title/branch) which represent related/bundled work. It avoids marking exact PR matches or exact issue matches (same item number) as intentional reuse, since that indicates duplicate intake of the identical item rather than reuse.\n\nHowever, the reviewer commented:\n> \"the diff still turns any active duplicate into intentional reuse when the repo reuse policy is non-empty, without proving same open PR lifecycle or an approved pre-PR bundle.\"\n\nTo properly check for \"same open PR lifecycle or an approved pre-PR bundle\", I need to know where/how to perform this proof. \nShould `isIntentionalReuse` also check if the `dupSession` has an open PR or is part of a bundle? I might need more information about how \"approved pre-PR bundle\" or \"same open PR lifecycle\" are defined in the context of this function. Could you provide a pointer to what conditions or fields precisely determine these states?", "kind": "done", "state": "running", "title": "", "summary": "I noticed the reviewer's feedback. I updated the `AssessDuplicateAdmissionWithPolicy` function. The previous code was...", "trace_id": "ad4b7dad-5ad8-4ce0-b17c-d5cb63205d76", "source_id": "6442613082920015817", "session_id": "6442613082920015817", "source_type": "jules", "manager_status": "active", "repo_full_name": "Stbmap/dev-manager", "codex_forwarded": "false", "pr_closeout_verdict": "close", "pr_closeout_deferred": "true"} |
| 9m ago | agent | agent_session_notify_requested | agent_protocol: 6442613082920015817 | {"body": "I noticed the reviewer's feedback. I updated the `AssessDuplicateAdmissionWithPolicy` function. The previous code was inferring intentional reuse for *any* active duplicate when the repo reuse policy was non-empty. Now, the logic correctly only considers \"intentional reuse\" for fuzzy matches (similar title/branch) which represent related/bundled work. It avoids marking exact PR matches or exact issue matches (same item number) as intentional reuse, since that indicates duplicate intake of the identical item rather than reuse.\n\nHowever, the reviewer commented:\n> \"the diff still turns any active duplicate into intentional reuse when the repo reuse policy is non-empty, without proving same open PR lifecycle or an approved pre-PR bundle.\"\n\nTo properly check for \"same open PR lifecycle or an approved pre-PR bundle\", I need to know where/how to perform this proof. \nShould `isIntentionalReuse` also check if the `dupSession` has an open PR or is part of a bundle? I might need more information about how \"approved pre-PR bundle\" or \"same open PR lifecycle\" are defined in the context of this function. Could you provide a pointer to what conditions or fields precisely determine these states?", "kind": "done", "title": "", "summary": "I noticed the reviewer's feedback. I updated the `AssessDuplicateAdmissionWithPolicy` function. The previous code was...", "trace_id": "ad4b7dad-5ad8-4ce0-b17c-d5cb63205d76", "source_id": "6442613082920015817", "session_id": "6442613082920015817", "source_type": "jules", "repo_full_name": "Stbmap/dev-manager"} |
| 9m ago | agent | agent_session_notify_completed | agent_protocol: 6442613082920015817 | {"body": "I noticed the reviewer's feedback. I updated the `AssessDuplicateAdmissionWithPolicy` function. The previous code was inferring intentional reuse for *any* active duplicate when the repo reuse policy was non-empty. Now, the logic correctly only considers \"intentional reuse\" for fuzzy matches (similar title/branch) which represent related/bundled work. It avoids marking exact PR matches or exact issue matches (same item number) as intentional reuse, since that indicates duplicate intake of the identical item rather than reuse.\n\nHowever, the reviewer commented:\n> \"the diff still turns any active duplicate into intentional reuse when the repo reuse policy is non-empty, without proving same open PR lifecycle or an approved pre-PR bundle.\"\n\nTo properly check for \"same open PR lifecycle or an approved pre-PR bundle\", I need to know where/how to perform this proof. \nShould `isIntentionalReuse` also check if the `dupSession` has an open PR or is part of a bundle? I might need more information about how \"approved pre-PR bundle\" or \"same open PR lifecycle\" are defined in the context of this function. Could you provide a pointer to what conditions or fields precisely determine these states?", "kind": "done", "state": "running", "title": "", "summary": "I noticed the reviewer's feedback. I updated the `AssessDuplicateAdmissionWithPolicy` function. The previous code was...", "trace_id": "ad4b7dad-5ad8-4ce0-b17c-d5cb63205d76", "source_id": "6442613082920015817", "session_id": "6442613082920015817", "source_type": "jules", "manager_status": "active", "repo_full_name": "Stbmap/dev-manager", "codex_forwarded": "false", "pr_closeout_verdict": "close", "pr_closeout_deferred": "true"} |
| 9m ago | agent | agent_session_notify_requested | agent_protocol: 6442613082920015817 | {"body": "I noticed the reviewer's feedback. I updated the `AssessDuplicateAdmissionWithPolicy` function. The previous code was inferring intentional reuse for *any* active duplicate when the repo reuse policy was non-empty. Now, the logic correctly only considers \"intentional reuse\" for fuzzy matches (similar title/branch) which represent related/bundled work. It avoids marking exact PR matches or exact issue matches (same item number) as intentional reuse, since that indicates duplicate intake of the identical item rather than reuse.\n\nHowever, the reviewer commented:\n> \"the diff still turns any active duplicate into intentional reuse when the repo reuse policy is non-empty, without proving same open PR lifecycle or an approved pre-PR bundle.\"\n\nTo properly check for \"same open PR lifecycle or an approved pre-PR bundle\", I need to know where/how to perform this proof. \nShould `isIntentionalReuse` also check if the `dupSession` has an open PR or is part of a bundle? I might need more information about how \"approved pre-PR bundle\" or \"same open PR lifecycle\" are defined in the context of this function. Could you provide a pointer to what conditions or fields precisely determine these states?", "kind": "done", "title": "", "summary": "I noticed the reviewer's feedback. I updated the `AssessDuplicateAdmissionWithPolicy` function. The previous code was...", "trace_id": "ad4b7dad-5ad8-4ce0-b17c-d5cb63205d76", "source_id": "6442613082920015817", "session_id": "6442613082920015817", "source_type": "jules", "repo_full_name": "Stbmap/dev-manager"} |
| 9m ago | dev-manager-sanity | sanity_warning | manager: sanity | {"status": "warn: 2 issue(s): repo Stbmap/chatter intake reports trouble: error: API error: 403 Forbidden - {\n\t\"message\": \"API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID D1A6:9B44C:4293D88:10394DE2:6A16687C and timestamp 2026-05-27 03:44:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}; github_sync_last_status reports trouble: error: API error: 403 Forbidden - {\n\t\"message\": \"API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID D1A6:9B44C:4293D88:10394DE2:6A16687C and timestamp 2026-05-27 03:44:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}", "repairs": [], "findings": ["repo Stbmap/chatter intake reports trouble: error: API error: 403 Forbidden - {\n\t\"message\": \"API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID D1A6:9B44C:4293D88:10394DE2:6A16687C and timestamp 2026-05-27 03:44:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}", "github_sync_last_status reports trouble: error: API error: 403 Forbidden - {\n\t\"message\": \"API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID D1A6:9B44C:4293D88:10394DE2:6A16687C and timestamp 2026-05-27 03:44:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}"]} |
| 14m ago | dev-manager-codex | provider_result | monitor_agent: hourly | {"model": "gpt-5.5", "action": "monitor", "status": "success", "provider": "codex", "latency_ms": 13386, "prompt_name": "monitor_agent"} |
| 15m ago | dev-manager-sanity | sanity_warning | manager: sanity | {"status": "warn: 2 issue(s): repo Stbmap/chatter intake reports trouble: error: API error: 403 Forbidden - {\n\t\"message\": \"API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID C7EE:167ADF:59A181:166F1F6:6A16674A and timestamp 2026-05-27 03:39:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}; github_sync_last_status reports trouble: error: API error: 403 Forbidden - {\n\t\"message\": \"API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID C7EE:167ADF:59A181:166F1F6:6A16674A and timestamp 2026-05-27 03:39:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}", "repairs": [], "findings": ["repo Stbmap/chatter intake reports trouble: error: API error: 403 Forbidden - {\n\t\"message\": \"API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID C7EE:167ADF:59A181:166F1F6:6A16674A and timestamp 2026-05-27 03:39:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}", "github_sync_last_status reports trouble: error: API error: 403 Forbidden - {\n\t\"message\": \"API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID C7EE:167ADF:59A181:166F1F6:6A16674A and timestamp 2026-05-27 03:39:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}"]} |
| 19m ago | dev-manager-sanity | sanity_warning | manager: sanity | {"status": "warn: 2 issue(s): repo Stbmap/chatter intake reports trouble: error: API error: 403 Forbidden - {\n\t\"message\": \"API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID 8ACE:3E865:4D140B:134E0E5:6A166628 and timestamp 2026-05-27 03:34:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}; github_sync_last_status reports trouble: error: API error: 403 Forbidden - {\n\t\"message\": \"API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID 8ACE:3E865:4D140B:134E0E5:6A166628 and timestamp 2026-05-27 03:34:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}", "repairs": [], "findings": ["repo Stbmap/chatter intake reports trouble: error: API error: 403 Forbidden - {\n\t\"message\": \"API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID 8ACE:3E865:4D140B:134E0E5:6A166628 and timestamp 2026-05-27 03:34:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}", "github_sync_last_status reports trouble: error: API error: 403 Forbidden - {\n\t\"message\": \"API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID 8ACE:3E865:4D140B:134E0E5:6A166628 and timestamp 2026-05-27 03:34:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}"]} |
| 21m ago | dev-manager-sanity | sanity_warning | manager: sanity | {"status": "warn: 2 issue(s): repo Stbmap/chatter intake reports trouble: error: API error: 403 Forbidden - {\n\t\"message\": \"API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID 8ACE:267AE8:3F33FB6:F5884D8:6A1664FF and timestamp 2026-05-27 03:29:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}; github_sync_last_status reports trouble: error: API error: 403 Forbidden - {\n\t\"message\": \"API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID 8ACE:267AE8:3F33FB6:F5884D8:6A1664FF and timestamp 2026-05-27 03:29:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}", "repairs": [], "findings": ["repo Stbmap/chatter intake reports trouble: error: API error: 403 Forbidden - {\n\t\"message\": \"API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID 8ACE:267AE8:3F33FB6:F5884D8:6A1664FF and timestamp 2026-05-27 03:29:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}", "github_sync_last_status reports trouble: error: API error: 403 Forbidden - {\n\t\"message\": \"API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID 8ACE:267AE8:3F33FB6:F5884D8:6A1664FF and timestamp 2026-05-27 03:29:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}"]} |
| 22m ago | dev-manager-webhook | webhook_delivery_processed | webhook_delivery: bc075550-597c-11f1-85ab-3c19ac2751c6 | {"summary": "webhook reconciliation triggered", "event_type": "webhook_delivery_processed", "delivery_id": "bc075550-597c-11f1-85ab-3c19ac2751c6", "repo_full_name": "Stbmap/dev-manager", "source_event_type": "pull_request"} |
| 23m ago | dev-manager-sanity | sanity_warning | manager: sanity | {"status": "warn: 3 issue(s): repo Stbmap/chatter intake reports trouble: error: API error: 403 Forbidden - {\n\t\"message\": \"API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID 8ACE:267AE8:3F33FB6:F5884D8:6A1664FF and timestamp 2026-05-27 03:29:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}; github_sync_last_status reports trouble: error: API error: 403 Forbidden - {\n\t\"message\": \"API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID 8ACE:267AE8:3F33FB6:F5884D8:6A1664FF and timestamp 2026-05-27 03:29:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}; webhook_last_status reports trouble: error: webhook reconciliation failed for issue_comment: forwarder: API error: 403 Forbidden - {\n\t\"message\": \"API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID ECF2:19716A:481D14:12043E6:6A16654E and timestamp 2026-05-27 03:30:25 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}", "repairs": [], "findings": ["repo Stbmap/chatter intake reports trouble: error: API error: 403 Forbidden - {\n\t\"message\": \"API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID 8ACE:267AE8:3F33FB6:F5884D8:6A1664FF and timestamp 2026-05-27 03:29:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}", "github_sync_last_status reports trouble: error: API error: 403 Forbidden - {\n\t\"message\": \"API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID 8ACE:267AE8:3F33FB6:F5884D8:6A1664FF and timestamp 2026-05-27 03:29:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}", "webhook_last_status reports trouble: error: webhook reconciliation failed for issue_comment: forwarder: API error: 403 Forbidden - {\n\t\"message\": \"API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID ECF2:19716A:481D14:12043E6:6A16654E and timestamp 2026-05-27 03:30:25 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}"]} |
| 25m ago | dev-manager-webhook | webhook_delivery_error | webhook_delivery: 65c8c7f0-597c-11f1-81f8-47603a97ad30 | {"error": "webhook reconciliation failed for issue_comment: forwarder: API error: 403 Forbidden - {\n\t\"message\": \"API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID ECF2:19716A:481D14:12043E6:6A16654E and timestamp 2026-05-27 03:30:25 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}", "summary": "reconciliation failed", "event_type": "webhook_delivery_error", "delivery_id": "65c8c7f0-597c-11f1-81f8-47603a97ad30", "repo_full_name": "Stbmap/dev-manager", "source_event_type": "issue_comment"} |
| 25m ago | dev-manager-orchestrator | orchestrator-answer-remote-reply-skipped | session: 6442613082920015817 | {"action": "answer", "reason": "remote user reply already followed the latest agent message", "trace_id": "ad4b7dad-5ad8-4ce0-b17c-d5cb63205d76", "session_id": "6442613082920015817"} |
| 25m ago | dev-manager-sanity | sanity_warning | manager: sanity | {"status": "warn: 2 issue(s): repo Stbmap/chatter intake reports trouble: error: API error: 403 Forbidden - {\n\t\"message\": \"API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID 8ACE:267AE8:3F33FB6:F5884D8:6A1664FF and timestamp 2026-05-27 03:29:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}; github_sync_last_status reports trouble: error: API error: 403 Forbidden - {\n\t\"message\": \"API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID 8ACE:267AE8:3F33FB6:F5884D8:6A1664FF and timestamp 2026-05-27 03:29:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}", "repairs": [], "findings": ["repo Stbmap/chatter intake reports trouble: error: API error: 403 Forbidden - {\n\t\"message\": \"API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID 8ACE:267AE8:3F33FB6:F5884D8:6A1664FF and timestamp 2026-05-27 03:29:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}", "github_sync_last_status reports trouble: error: API error: 403 Forbidden - {\n\t\"message\": \"API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID 8ACE:267AE8:3F33FB6:F5884D8:6A1664FF and timestamp 2026-05-27 03:29:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}"]} |
| 25m ago | dev-manager-orchestrator | orchestrator-answer | session: 6442613082920015817 | {"action": "answer", "reason": "session is waiting on clarification", "item_type": "pr", "quiet_for": "1m", "role_name": "reviewer", "confidence": "low", "item_number": "378", "playbook_name": "awaiting_clarification", "lease_remaining": "2d 23h", "playbook_version_number": "1"} |
| 25m ago | dev-manager-codex | provider_result | session: 6442613082920015817 | {"model": "gpt-5.4-mini", "action": "answer", "status": "success", "provider": "codex", "trace_id": "ad4b7dad-5ad8-4ce0-b17c-d5cb63205d76", "item_type": "pr", "latency_ms": 16543, "item_number": 378, "prompt_name": "responder", "repo_full_name": "Stbmap/dev-manager", "prompt_version_id": "56c10c5f-469b-4aa4-bbd6-34f4d5e89cd9", "prompt_version_number": 1} |
| 26m ago | agent | agent_session_notify_completed | agent_protocol: 2781923755567573377 | {"body": "I have explored the codebase and found the right files to implement the pre-PR issue batching and PR lifecycle reuse functionality. \n\nI plan to:\n1. Create a migration and junction table to link multiple `work_items` to a single `session` (`session_work_item_links`).\n2. Update the `circuitbreaker` to not block \"duplicate\" PRs if the repo's `session_reuse_policy` allows it, instead returning a new boolean `isIntentionalReuse`.\n3. In `cmd/dev-manager/daemon_loops.go`, when `isIntentionalReuse` is detected, append the work item to the existing active session using targeted messaging (such as `database.ClaimOutboundMessageRetryFailed` or `database.SaveConsoleMessage`) so the agent performs the additional work instead of starting a new session.\n\nHowever, I am unsure of the best way to inject targeted instructions (e.g., sync/rebase-from-main) to an existing, active session directly from `daemon_loops.go`, because `julesClient` isn't fully instantiated inside the `AssessDuplicateAdmission` processing block (it's part of `startScheduledSession`), and the `schedulerIterationDatabase` interface doesn't natively expose `SendMessage`. What is the intended mechanism to send natural language instructions (like `git fetch && git rebase`) to an active Jules session from `daemon_loops.go`? Should I use `CreateOutboundMessage`, `SaveConsoleMessage`, or something else?", "kind": "question", "state": "complete", "title": "", "summary": "I have explored the codebase and found the right files to implement the pre-PR issue batching and PR lifecycle reuse...", "trace_id": "80fff1ca-d65a-4ea2-86ee-b1d37ee1173f", "source_id": "2781923755567573377", "session_id": "2781923755567573377", "source_type": "jules", "manager_status": "released", "repo_full_name": "Stbmap/dev-manager", "codex_forwarded": "false", "ignored_terminal": "true"} |
| 26m ago | agent | agent_session_notify_requested | agent_protocol: 2781923755567573377 | {"body": "I have explored the codebase and found the right files to implement the pre-PR issue batching and PR lifecycle reuse functionality. \n\nI plan to:\n1. Create a migration and junction table to link multiple `work_items` to a single `session` (`session_work_item_links`).\n2. Update the `circuitbreaker` to not block \"duplicate\" PRs if the repo's `session_reuse_policy` allows it, instead returning a new boolean `isIntentionalReuse`.\n3. In `cmd/dev-manager/daemon_loops.go`, when `isIntentionalReuse` is detected, append the work item to the existing active session using targeted messaging (such as `database.ClaimOutboundMessageRetryFailed` or `database.SaveConsoleMessage`) so the agent performs the additional work instead of starting a new session.\n\nHowever, I am unsure of the best way to inject targeted instructions (e.g., sync/rebase-from-main) to an existing, active session directly from `daemon_loops.go`, because `julesClient` isn't fully instantiated inside the `AssessDuplicateAdmission` processing block (it's part of `startScheduledSession`), and the `schedulerIterationDatabase` interface doesn't natively expose `SendMessage`. What is the intended mechanism to send natural language instructions (like `git fetch && git rebase`) to an active Jules session from `daemon_loops.go`? Should I use `CreateOutboundMessage`, `SaveConsoleMessage`, or something else?", "kind": "question", "title": "", "summary": "I have explored the codebase and found the right files to implement the pre-PR issue batching and PR lifecycle reuse...", "trace_id": "80fff1ca-d65a-4ea2-86ee-b1d37ee1173f", "source_id": "2781923755567573377", "session_id": "2781923755567573377", "source_type": "jules", "repo_full_name": "Stbmap/dev-manager"} |
| 27m ago | dev-manager-forwarder | comment_forwarded | session: 6442613082920015817 | {"forwarded_comment_id": 4550869951} |
| 29m ago | dev-manager-sanity | sanity_warning | manager: sanity | {"status": "warn: 2 issue(s): repo Stbmap/chatter intake reports trouble: error: API error: 403 Forbidden - {\n\t\"message\": \"API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID B06E:3DD6F6:415EC9A:FD4BCB9:6A1663D7 and timestamp 2026-05-27 03:24:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}; github_sync_last_status reports trouble: error: API error: 403 Forbidden - {\n\t\"message\": \"API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID B06E:3DD6F6:415EC9A:FD4BCB9:6A1663D7 and timestamp 2026-05-27 03:24:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}", "repairs": [], "findings": ["repo Stbmap/chatter intake reports trouble: error: API error: 403 Forbidden - {\n\t\"message\": \"API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID B06E:3DD6F6:415EC9A:FD4BCB9:6A1663D7 and timestamp 2026-05-27 03:24:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}", "github_sync_last_status reports trouble: error: API error: 403 Forbidden - {\n\t\"message\": \"API rate limit exceeded for user ID 63281460. If you reach out to GitHub Support for help, please include the request ID B06E:3DD6F6:415EC9A:FD4BCB9:6A1663D7 and timestamp 2026-05-27 03:24:08 UTC. For more on scraping GitHub and how it may affect your rights, please review our Terms of Service (https:\\/\\/docs.github.com\\/en\\/site-policy\\/github-terms\\/github-terms-of-service)\",\n\t\"documentation_url\": \"https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api#rate-limiting\",\n\t\"status\": \"403\"\n}"]} |
| 29m ago | scheduler | agent_task_duplicate_block_released | agent_task: agent-task:stbmap/dev-manager:github_item:Stbmap/dev-manager#379:reviewer | {"task_key": "agent-task:stbmap/dev-manager:github_item:Stbmap/dev-manager#379:reviewer", "target_id": "Stbmap/dev-manager#379", "item_number": 379, "previous_error": "1 active session(s) already exist for Stbmap/dev-manager#379", "repo_full_name": "Stbmap/dev-manager"} |
| 30m ago | dev-manager-webhook | webhook_delivery_processed | webhook_delivery: aa161760-597b-11f1-88e8-50c8738d286d | {"summary": "webhook reconciliation triggered", "event_type": "webhook_delivery_processed", "delivery_id": "aa161760-597b-11f1-88e8-50c8738d286d", "repo_full_name": "Stbmap/dev-manager", "source_event_type": "pull_request"} |
| 30m ago | dev-manager-webhook | webhook_delivery_processed | webhook_delivery: a9a41bb0-597b-11f1-9b49-7b16487374a9 | {"summary": "webhook reconciliation triggered", "event_type": "webhook_delivery_processed", "delivery_id": "a9a41bb0-597b-11f1-9b49-7b16487374a9", "repo_full_name": "Stbmap/dev-manager", "source_event_type": "pull_request"} |
| 30m ago | dev-manager-webhook | webhook_delivery_processed | webhook_delivery: aacfca70-597b-11f1-9cf1-c1c3dd19d692 | {"summary": "webhook reconciliation triggered", "event_type": "webhook_delivery_processed", "delivery_id": "aacfca70-597b-11f1-9cf1-c1c3dd19d692", "repo_full_name": "Stbmap/dev-manager", "source_event_type": "issue_comment"} |
| 30m ago | dev-manager-github-intake | github-item-state-sync | github_item: 3c4b6c76-4bd1-4605-bf67-7ba64d7e7088 | {"state": "ready", "reason": "state synced from deferred to ready", "item_number": "379", "repo_full_name": "Stbmap/dev-manager"} |
| 30m ago | dev-manager-watcher | jules_patch_only_completion_requeued | session: 12473526594172399388 | {"reason": "Jules completed with patch artifacts but did not open a pull request", "has_target": true, "inferred_pr": true, "patch_count": 80, "target_number": 379, "activity_error": "", "repo_full_name": "Stbmap/dev-manager", "total_patch_bytes": 3448309, "pull_request_count": 0, "largest_patch_bytes": 78261, "agent_tasks_requeued": null} |
| 30m ago | dev-manager-github-intake | github-item-state-sync | github_item: 3c4b6c76-4bd1-4605-bf67-7ba64d7e7088 | {"state": "ready", "reason": "state synced from changes-requested to ready", "item_number": "379", "repo_full_name": "Stbmap/dev-manager"} |
| 33m ago | dev-manager-forwarder | comment_forwarded | session: 12473526594172399388 | {"forwarded_comment_id": 4550620212} |
| 33m ago | dev-manager-forwarder | comment_forwarded | session: 12473526594172399388 | {"forwarded_comment_id": 4550615031} |
| 33m ago | dev-manager-webhook | webhook_delivery_processed | webhook_delivery: 35c7c4d0-597b-11f1-9228-a8229a5b9235 | {"summary": "webhook reconciliation triggered", "event_type": "webhook_delivery_processed", "delivery_id": "35c7c4d0-597b-11f1-9228-a8229a5b9235", "repo_full_name": "Stbmap/dev-manager", "source_event_type": "pull_request"} |
The manager exposes the following JSON API endpoints for orchestration tooling:
GET /api/admin/sessions - List active sessionsGET /api/admin/sessions/{id} - Get one local sessionGET /api/admin/jules-sessions - List remote Jules sessions visible to configured accountsGET /api/admin/jules-sessions/{id}/activities - Inspect a remote Jules session's activity streamGET /api/admin/accounts - List configured accountsGET /api/admin/repos - List repository-to-workspace mappings used for intake and CodexGET /api/admin/github-items - List imported GitHub issues and pull requestsGET /api/admin/audit - List recent audit eventsGET /api/admin/report - Generate the daily factory report as JSON or text with ?format=textGET /api/admin/resume-checkpoint - Fetch the latest operator resume checkpoint as JSON or text with ?format=textGET /api/admin/repo-policies - List repo policy snapshots and historyPOST /api/admin/repo-policies/{id}/rollback - Restore a repo policy snapshotGET /api/admin/events - Subscribe to manager change events as an SSE streamGET /api/agent/context - Fetch the read-only agent-to-manager context bundle with report, questions, resume checkpoint, and sandbox capabilitiesPOST /api/agent/verify - Ask the manager to run an ephemeral verify sandbox for a repo with the current safe profilePOST /api/agent/notify/{session_id} - Send a session-scoped Jules notification to the manager with kind, optional title/body, and trace metadataPOST /api/agent/notify - Record an operator inbox item for human follow-upGET /api/admin/handoffs - Browse durable agent handoff rows by repo, roles, trace, session, item number, or free text queryGET /api/admin/settings - List runtime settingsPUT /api/admin/settings/{key} - Update a runtime setting via JSONGET /api/admin/decisions - Preview the orchestrator's next actionsGET /api/admin/questions - List sessions waiting on clarification, blocked, or paused with latest Jules activity, manager rationale, and routing confidenceGET /api/admin/inbox - List operator inbox items that still need attentionGET /api/admin/suggestions - List Jules suggestions that were manually relayed or imported from the dashboardGET /api/admin/memory - Browse durable manager memory entries by repo, kind, trace, session, item number, or free text queryPOST /api/admin/inbox/{id}/acknowledge - Mark an inbox item as acknowledgedPOST /api/admin/inbox/{id}/assign - Assign an inbox item to a person or teamPOST /api/admin/inbox/{id}/snooze - Snooze an inbox item until a future timePOST /api/admin/inbox/{id}/resolve - Resolve an inbox item and update the linked GitHub thread when possiblePOST /api/admin/suggestions - Relays a Jules suggestion into the manager ledgerPOST /api/admin/suggestions/{id}/promote - Promote a relayed suggestion into a GitHub issue or directivePOST /api/admin/suggestions/{id}/ignore - Ignore a relayed suggestion while keeping the historyPOST /api/admin/sessions/{id}/answer - Send a direct answer back to Jules for a sessionPOST /api/admin/sessions/{id}/pause - Pause a session locally without letting the remote Jules mirror overwrite itPOST /api/admin/sessions/{id}/resume - Resume a paused sessionPOST /api/admin/sessions/{id}/kill - Delete the remote Jules session when possible, stop local management, and requeue the linked GitHub item when possibleGET /api/admin/roles - List all agent rolesGET /api/admin/roles/{name} - Get details for a specific rolePUT /api/admin/roles/{name} - Update or create an agent roleGET /api/admin/prompts - List prompt versions and recovery playbooksPOST /api/admin/prompts - Create a new prompt version or recovery playbookPOST /api/admin/prompts/{id}/activate - Activate a prompt versionPOST /api/admin/prompts/{id}/rollback - Roll back to a previous prompt versionGET /api/admin/repo-policies - List repo policy versions and snapshotsPOST /api/admin/repo-policies/{id}/rollback - Restore a prior repo policy snapshot