Skip to content

feat(workflows): schedule workflows and inspect each occurrence's run - #36

Merged
Igloczek merged 6 commits into
workflows/28-parallel-attentionfrom
workflows/29-scheduling
Oct 14, 2026
Merged

Igloczek merged 6 commits into
workflows/28-parallel-attentionfrom
workflows/29-scheduling

Conversation

@Igloczek

@Igloczek Igloczek commented Oct 9, 2026 •

Copy link
Copy Markdown

Summary

Scheduled tasks can select a saved workflow, and each occurrence links to its exact run.

Host schedule → saved revision at dispatch → existing start service
             → durable occurrence receipt → exact run and snapshot
             → dispatch status + independent workflow outcome

Refs #29 and parent #3. Final layer of #30 → #31 → #34 → #35 → #36. Head 5e21740b47a2b9dc4e82043751699e9f68c94a20 is based on approved #35 edf703c3bb3949c807e29c119b4f13b39616a85a, on main 294aa94c427c2bd9690af172f07374bfc9877a9c.

The generic target contribution provides workflow/project/workspace selection and bounded task input. The host owns timing. Each occurrence resolves the saved revision at dispatch; older runs retain their snapshot. Durable redelivery reuses the same start service and run. Bounded, authorized history preserves exact project/run links and separates dispatch from workflow outcome. Read-only users can open history while mutations remain guarded. Prompt schedules remain usable.

Evidence

  • Before: the host offered prompt scheduling; the first read-only workflow-history entry was blocked by the write-gated menu. After: workflow scheduling and read-only history work in the actual client. Original before/after images and recording.
  • Fork-only server validation: 105 files, 472 cases passed. Current focused host/client/logic validation: 38 distinct cases have latest passing results; the final grouped run passed 37 and had one RPC ping-timeout failure, followed by an unchanged affected-file rerun passing1. No skipped cases. The original component fails the native-click history regression. Prepared affected types, lint, format and diff checks pass. Unchanged backend bytes reuse the accepted server proof; failed diagnostics remain recorded separately.
  • Primary integrated local and HTTPS pass: actual scheduled parallel Graph, Bun checks, three native reviewer threads, reports versus settlement, one repeat, human approval, exact run navigation, revision change, redelivery, restart durability, edit/enable/pause/delete, unavailable plugin, read-only access, narrow history and keyboard navigation.
  • Independent GPT-6-Astra/Gilfoyle R2 APPROVED the exact current head; ROOT agrees. R1’s sole material draft-retention finding is resolved. Unsaved task drafts now stay mounted during disconnection; Save/Create remain guarded until the current target catalog is reconciled. Real same-page HTTPS disconnect/reconnect and explicit save passed. Original recovery images and31second recording. Independent R2 passed 12 current repository cases plus the unchanged accepted R1 reproduction. The latest exact-head CI Check passed.

External provider turns/availability and forge input are replay; authorization, registered services, scheduler receipts, SQL, workspaces, actual Bun checks, compiled client and native/gate state are real. No live provider/forge, second physical device, hardware-touch, scale benchmark, uninterrupted automatic reconnect or positive human-comprehension claim. Reopening exact pages recovers after disconnection; HTTP-scope replay restart is distinct from actual provider-process-loss tests.

Merge Danger

Door: two-way. Contributions/UI can be reverted; already dispatched runs retain their authoritative durable history.

Blast Radius: scheduling. Generic target controls, saved workflow starts and bounded occurrence history. No new workflow engine or timing owner.

Implementation: Claude Opus 5.5 / Claude Code and OpenAI GPT-6.1-Sol / Codex. Current orchestration, integration and primary client verification: GPT-6.1-Sol / Codex in T3 Code. Independent current review: GPT-6-Astra / Codex with Gilfoyle, R2 APPROVED 5e21740b47a2b9dc4e82043751699e9f68c94a20.

@Igloczek

Igloczek commented Oct 14, 2026 •

Copy link
Copy Markdown
Author

Primary browser evidence for #29 at eae10a9. Parent-client before image is EDF; ordinary scheduling/Graph captures are source-qualified FDD reuse, and corrected read-only captures use the exact tested/committed EAE bytes. External provider turns/forge are replay; auth, services, scheduler receipts, workspaces, actual Bun check and native/gate state remain real. No live provider/forge, second physical device, hardware-touch or uninterrupted reconnect claim.

Before: approved #28 host offered prompt schedules, captured from EDF client.

pr36-before-schedule-editor

After: workflow target, project/workspace and task inputs; dispatch-time revision wording.

pr36-after-schedule-editor

Accepted3/3 reports with2/3 reviewers settled: scheduled join still waiting.

pr36-reported-running

Scheduled parallel Graph repeated once and reached the actual bounded Human gate.

pr36-human-gate

Dispatch succeeded while workflow awaited a human decision.

pr36-history-gate

Actual HTTPS revision2 occurrence completed after UI approval.

pr36-remoteCompleted

Restored plugin: failed dispatch/no run, completed revision2 and older running revision1.

pr36-history-after-plugin-restored

390CSS history wraps saved revision evidence and exact run links.

pr36-narrow-history

Plugin removed: retained schedule with actionable unavailable-target text.

pr36-unavailable

Before permission correction: read-only Actions trigger incorrectly blocked history.

pr36-readonly-before

Original24second Run now/dispatched/navigation recording; loaded history is pictured separately.

pr36-run-now-history.mp4

After permission correction: read-only history is available; mutation items are disabled. The normal re-pairing permission notification remains visible.

pr36-readonlyMenu

Corrected read-only history at390CSS: authoritative statuses, revisions and exact links remain accessible.

pr36-readonlyNarrow

Implementation: Claude Opus5.5 / Claude Code and GPT-6.1-Sol / Codex. Primary integration, verification and publication: GPT-6.1-Sol / Codex in T3 Code. Independent current review: GPT-6-Astra / Codex with Gilfoyle, R2 APPROVED 5e21740b47a2b9dc4e82043751699e9f68c94a20.

Final approval: independent GPT-6-Astra/Gilfoyle R2 and ROOT approve 5e21740b47a2b9dc4e82043751699e9f68c94a20; latest CI passed. Capture provenance above is preserved. The recovery supplement records the final draft-retention correction.

@Igloczek

Igloczek commented Oct 14, 2026 •

Copy link
Copy Markdown
Author

R1 recovery correction at5e21740b47a2b9dc4e82043751699e9f68c94a20. Actual HTTPS Settings dialog, same-page backend disconnect/restart, retained typed task and explicit save. These are original captures on the final tested bytes. Existing full gallery remains source-qualified. Independent R2 APPROVED the exact 5e21740b47a2b9dc4e82043751699e9f68c94a20 head; ROOT agrees.

Edited task:39/4000characters in the real host dialog.

pr36-draft-before

Actual backend offline: the same task stays visible and Save is disabled.

pr36-draft-offline

Same-page reconnect: task preserved and Save available after reconciliation.

pr36-draft-reconnected

Original31second recording: physical disconnect/reconnect retains draft, then actual Save.

pr36-draft-reconnect.mp4

Implementation/primary verification/publication: GPT-6.1-Sol / Codex in T3 Code. Independent review: GPT-6-Astra / Codex with Gilfoyle.

Final approval: independent GPT-6-Astra/Gilfoyle R2 and ROOT approve 5e21740b47a2b9dc4e82043751699e9f68c94a20; latest CI passed. Capture provenance above is preserved. The recovery supplement records the final draft-retention correction.

@Igloczek
Igloczek marked this pull request as ready for review October 14, 2026 11:11
Igloczek and others added 6 commits October 14, 2026 13:19
Adds a generic plugin schedule-target contribution to the existing
Scheduled tasks controls, which the workflows plugin fills with a saved
workflow, workspace, and bounded task. Each occurrence starts through the
same saved-workflow start service keyed by its durable occurrence
identity, and a bounded occurrence history links each dispatch to its
exact run with dispatch and workflow status kept separate. The host
scheduler remains the only timing owner.

Refs #29

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Link schedule history to each occurrence's recorded project, refresh
history only on real receipt or run state changes with a lighter read,
cover the host dialog's target routing, keep recreated schedules from
inheriting old receipts, and align the unavailable-target guidance.

Refs #29

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…real seams

Redact titles, reasons, and receipt errors in schedule history, move the
host dialog's plugin submission decision into tested pure logic, keep
the server as the owner of existing dispatch targets, and withhold Open
run for runs whose project was removed.

Refs #29

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Preserve scheduling target identity when capabilities disappear and retain focused history, permission and editor compatibility proofs.

Co-authored-by: GPT-6.1-Sol <noreply@openai.com>
@Igloczek
Igloczek force-pushed the workflows/29-scheduling branch from 5e21740 to a134a23 Compare October 14, 2026 11:19
@Igloczek
Igloczek merged commit 165dfd8 into main Oct 14, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant