Skip to content

Sync generic engine improvements - #1

Merged
dioptx merged 1 commit into
mainfrom
release/generic-sync
Jul 9, 2026
Merged

Sync generic engine improvements#1
dioptx merged 1 commit into
mainfrom
release/generic-sync

Conversation

@dioptx

@dioptx dioptx commented Jul 9, 2026

Copy link
Copy Markdown
Owner

Summary

Forward-ports generic engine improvements.

  • weft doctor / /wf-doctor — template drift + plugin clone currency (offline)
  • weft analyze / /wf-analyze — per-template durations, loop counts, guard blocks, friction
  • scripts/wf.py curses TUI + wf-monitor.py plain-text/JSON viewer
  • Unattended-park at human gates (WEFT_UNATTENDED) + Workflow executor steps
  • Richer event model: wf.guard_blocked, wf.stalled, paired wf.step_changed, wf.failed
  • context.md surfacing: description, next action, suggested commands, insights
  • New skills: wf-resume, wf-run-step, wf-template; codex-review template

Fixed

  • insights step field is now populated into step state (was rendered by projections but never carried from the template).

Changed

  • workflow_id carries second resolution (name-YYYYMMDD-HHMMSS) so same-day runs stay distinct.

Tests

263 passing.

Forward-ports the generic weft features developed privately, excluding
all company-specific templates and tooling.

Added:
- weft doctor / wf-doctor: template drift + plugin clone currency
- weft analyze / wf-analyze: per-template durations, loops, friction
- scripts/wf.py curses TUI + wf-monitor.py plain-text/JSON viewer
- unattended-park at human gates (WEFT_UNATTENDED) + executor steps
- richer event model: wf.guard_blocked, wf.stalled, paired wf.step_changed, wf.failed
- context.md surfacing (description, next action, suggest, insights)
- codex-review template; wf-resume / wf-run-step / wf-template skills

Fixed:
- insights step field now populated into step state (was read by
  projections but never carried from the template)

Changed:
- workflow_id carries second resolution (name-YYYYMMDD-HHMMSS)

Excluded (company-specific): amonit-triage + address-pr-feedback
templates, command-deck, test_amonit_triage. Sanitized default paths and
examples in wf-monitor.py, wf-analyze, README to neutral values.

263 tests pass.
@dioptx
dioptx merged commit 9fc6814 into main Jul 9, 2026
4 checks passed
@dioptx
dioptx deleted the release/generic-sync branch July 9, 2026 14:05
dioptx added a commit that referenced this pull request Aug 14, 2026
…ing work

Integrates the public 'Sync generic engine improvements from private (#1)'
commit with the 4 local unpushed commits (resolve-finding template +
per-run pre-accept guard allowlist). Clean auto-merge — only
core/guard_engine.py overlapped and merged without conflict.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N6DLyhgaWctqCCEj2sRTcg
dioptx added a commit that referenced this pull request Aug 14, 2026
…branch

Salvages the one genuinely-unique, still-valuable piece of the Mini's
stale terminal-mode-fixes branch (which otherwise predates and conflicts
with the public generic-engine sync). Reconciled against PR #1's newer
Next-action system rather than ported wholesale:

- cli.py: --help / -h / help / no-args now print full usage to stdout and
  exit 0 (was: 'Unknown command' to stderr, exit 1 — a wall for a first-
  time terminal user). Unknown commands now point at --help. USAGE lists
  the current command set incl. PR #1's run-result/resume/analyze/doctor.
- projections.py: added _terminal_mode() (driven by CLAUDECODE, overridable
  via WEFT_TERMINAL). The existing 'Next action:' line and the command-
  reference footer now translate /weft:* slash commands to their cli.py
  equivalents when not running inside Claude Code — those slash commands
  don't exist in a plain shell. Footer is now running-only (a completed
  workflow no longer shows a stale 'advance' hint — origin's old bug).

Deliberately NOT ported: the 482-line sonnet_terminal_drive.py behavioral
harness (adds a live-Sonnet dependency to CI and tests an old cli.py) and
the renamed/removed old skill files. Feature covered by 7 focused unit
tests instead.

270 tests pass (263 + 7 new). Verified rendered output in both modes.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N6DLyhgaWctqCCEj2sRTcg
dioptx added a commit that referenced this pull request Aug 15, 2026
Forward-ports the generic weft features developed privately, excluding
all company-specific templates and tooling.

Added:
- weft doctor / wf-doctor: template drift + plugin clone currency
- weft analyze / wf-analyze: per-template durations, loops, friction
- scripts/wf.py curses TUI + wf-monitor.py plain-text/JSON viewer
- unattended-park at human gates (WEFT_UNATTENDED) + executor steps
- richer event model: wf.guard_blocked, wf.stalled, paired wf.step_changed, wf.failed
- context.md surfacing (description, next action, suggest, insights)
- codex-review template; wf-resume / wf-run-step / wf-template skills

Fixed:
- insights step field now populated into step state (was read by
  projections but never carried from the template)

Changed:
- workflow_id carries second resolution (name-YYYYMMDD-HHMMSS)

Excluded (company-specific): amonit-triage + address-pr-feedback
templates, command-deck, test_amonit_triage. Sanitized default paths and
examples in wf-monitor.py, wf-analyze, README to neutral values.

263 tests pass.

Co-authored-by: Dennis <dennis@dune.com>
dioptx added a commit that referenced this pull request Aug 15, 2026
…ing work

Integrates the public 'Sync generic engine improvements from private (#1)'
commit with the 4 local unpushed commits (resolve-finding template +
per-run pre-accept guard allowlist). Clean auto-merge — only
core/guard_engine.py overlapped and merged without conflict.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N6DLyhgaWctqCCEj2sRTcg
dioptx added a commit that referenced this pull request Aug 15, 2026
…branch

Salvages the one genuinely-unique, still-valuable piece of the Mini's
stale terminal-mode-fixes branch (which otherwise predates and conflicts
with the public generic-engine sync). Reconciled against PR #1's newer
Next-action system rather than ported wholesale:

- cli.py: --help / -h / help / no-args now print full usage to stdout and
  exit 0 (was: 'Unknown command' to stderr, exit 1 — a wall for a first-
  time terminal user). Unknown commands now point at --help. USAGE lists
  the current command set incl. PR #1's run-result/resume/analyze/doctor.
- projections.py: added _terminal_mode() (driven by CLAUDECODE, overridable
  via WEFT_TERMINAL). The existing 'Next action:' line and the command-
  reference footer now translate /weft:* slash commands to their cli.py
  equivalents when not running inside Claude Code — those slash commands
  don't exist in a plain shell. Footer is now running-only (a completed
  workflow no longer shows a stale 'advance' hint — origin's old bug).

Deliberately NOT ported: the 482-line sonnet_terminal_drive.py behavioral
harness (adds a live-Sonnet dependency to CI and tests an old cli.py) and
the renamed/removed old skill files. Feature covered by 7 focused unit
tests instead.

270 tests pass (263 + 7 new). Verified rendered output in both modes.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N6DLyhgaWctqCCEj2sRTcg
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.

2 participants