Skip to content

AI Engineering Loop v2.0.0

Choose a tag to compare

@egagofur egagofur released this 17 Oct 16:17
· 33 commits to main since this release
d98ac01

Highlights

  • Personal workflow onboarding (#81):
    • workflow interview|propose|accept|reject|suggest builds a per-user personal recipe. It lives under AEL_HOME / ~/.ai-engineering-loop, with version history, proposals and a redacted workflow-history.jsonl (mode 0600).
    • run picks a workflow in this order: project-required (runtime-policy.json → workflow.requiredRecipe / allowPersonal: false), then personal, then built-in. It reports workflowSource.
    • With no task, the skill offers workflow interview instead of starting a Run (new eval case 25).
  • ael bench: compliance self-check for your own host and model (#79):
    • Runs scripted scenarios (evals/scenarios/: T0/T1/T2 tasks and traps) against one host and model, each in a sandboxed temp repo. A scripted approver drives ASSISTED gates.
    • Scores come only from Run artifacts.
    • Writes results.json, report.md (per-gate compliance, guard violations, scope drift, receipt validity, p50/p90 time and tokens) and hardening.md (violations mapped to skill instructions, with suggested fixes that are never applied automatically).
    • bench compare puts two benches side by side. It does no routing and makes no model recommendation.
  • Studio real-time sync and compact live-run UI (#80):
    • lib/run-watcher.js pushes typed events on GET /api/events (SSE, replay via Last-Event-ID, resync fallback, stat-poll when fs.watch is unavailable).
    • The default route is a compact live-run view.
    • Wiring mode edits only edges between existing nodes, still validated by the recipe compiler; STUDIO_STRUCTURE_READ_ONLY is enforced server-side.
    • status --json / run --json include a tokenless studioUrl.

Breaking changes

  • Studio no longer creates, duplicates, deletes or edits nodes. Loop groups, the Custom Agent dialog, Import workflow JSON and the export toolbar are removed. POST /api/import/preview and POST /api/import/apply return 404. Author recipes as files with recipe create|clone|install.
  • GET /api/runs/:id/lifecycle/stream now returns 404; subscribe to GET /api/events instead. The client-side 1.8 s poll and the 750 ms lifecycle interval are gone.
  • /api/install requires baseRecipeId and rejects node-set changes (STUDIO_STRUCTURE_READ_ONLY).

Merged in #82, #83, #84, and #85. Closes #79, #80, and #81.

Upgrading

npm install -g ai-engineering-loop@2.0.0, then run ai-engineering-loop sync-hosts once so the installed host skills match 2.0.0 (the always-loaded skill changed). Any Studio integration using the per-run lifecycle stream must switch to GET /api/events.