Version Packages#82
Open
github-actions[bot] wants to merge 1 commit into
Open
Conversation
00f8943 to
f67e3c8
Compare
b7c142b to
4a8c6c8
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.
Releases
@generata/core@1.3.0
Minor Changes
16aeb16: feat: pin template catalog entries to core version
9a3a2e2: feat(core): add head field to ContextSource for trimming context to first N lines
2524d75: Expose
loadTsandfindProjectRootas public exports so consumer packages (notably@generata/serve) can resolve project-relative TypeScript modules.Add an optional
servefield toGlobalConfigsodefineConfig({ serve: {...} })typechecks for users of@generata/serve. Core ignores the field; the serve package validates and consumes it.d17256b: Allow factory-form agents with no declared inputs to be passed bare to
.step()andonReject. Previously,defineAgent<{}>(() => ({...}))had to be wrapped as.step("id", () => agent({}))even though there were no inputs to thread - the engine now wraps such factories itself, so.step("id", agent)works. Factories with declared inputs are still required to be called inside a stepFn so prior-step outputs thread through correctly.66b0511: Programmatic
runWorkflow/runAgentnow write prompt logs to the same<logsDir>/<kind>/<name>-<runId>.logpaths the CLI uses, mirroring the CLI'slogPromptsflow. The path is printed once to stderr at run start asFull log: file:///...so callers can click through and tail the file as it streams - this fires for both CLI and programmatic runs, with or withoutonEvent. PasspromptLogFileto override the path.Silent-mode programmatic runs also print a header to stderr:
workflow: <name> (<n> steps)oragent: <name> [<type>]. Suppressed whenonEventis wired (the caller is driving display).Auto-derived programmatic log paths now prepend the calling script's basename - e.g.
logs/workflow/batch-script-review-note-<runId>.loginstead oflogs/workflow/review-note-<runId>.log- so logs from different scripts driving the same workflow are easy to tell apart. CLI runs and explicitpromptLogFileoverrides are unaffected.consoleSinkno longer prints the prompt log path itself onworkflow-start/agent-welcome-runWorkflow/runAgentare now the single source for that line.The
logPromptsconfig default has flipped fromfalsetotrue- prompt logs are on by default for both CLI and programmatic runs. SetlogPrompts: falseingenerata.config.tsto opt out.18264a7: Expose
runWorkflowandrunAgentas public API so workflows and agents can be driven from code. Programmatic callers run silently by default and subscribe to structuredEngineEvents viaonEvent. The CLI is unchanged in behaviour.AbortSignalis now wired throughrunWorkflowend-to-end: a pre-aborted signal short-circuits before precheck/worktree setup, and a signal that fires mid-step bypasses the per-agent retry loop and propagatesAbortErrorto the caller.The
EngineEventunion now emits a discretehaltevent when a worker callsemit --halt, andworkflow-startcarries therunId(the same id stamped into per-step metric records) so subscribers can correlate events with metrics.One internal-behaviour change worth flagging: critic-step max-retries no longer throws inside the engine. The CLI now exits non-zero by checking
result.success. Same observable outcome for end users; loop-friendly contract for programmatic callers.be78f7a: feat: make Read/Glob/Grep filesystem tools opt-outable for full agents
c6ac72f: refactor: remove redundant ModelTier and LLMAgentDef aliases
ddab78e: feat(cli): rename skills sync to commands sync
b38d4c9: feat(cli): generate slash commands with detected package manager
27e4f47:
worktree({...})now accepts acleanupfield (defaultfalse). Whenfalse, the worktree and itsgenerata/wt-<runId>branch are kept on disk after the workflow finishes so you can inspect the run; passcleanup: trueto restore the previous teardown-on-exit behaviour. The engine logs[worktree] cleaned up <path>or[worktree] preserved at <path>at end of run. Setup-failure cleanup is unchanged - half-built worktrees are still torn down. Usegenerata worktree pruneto clear preserved worktrees.b9d8165: Fix worktree isolation prompt header and surface typed outputs on
WorkflowResult.The prompt's
Working directory:line (and the agent factory's${work_dir}substitution) now reflect the actual cwd the agent runs in, not the user-config workDir. Agents under worktree isolation were previously misled into resolving absolute file paths against the main repo and mutating it instead of the worktree.WorkflowResultnow exposesoutputs: Record<string, string>(typed outputs accumulated across steps) andworktreePath?: string(when the workflow ran with worktree isolation), so programmatic post-workflow drivers can read what agents emitted and locate the worktree without re-deriving either.Patch Changes
killReason, the OS signal, and any abnormal close-delay inmetrics.error, and setsstatus: "timeout". Previously a SIGTERM kill left only the benign "no stdin data received in 3s" warning and a generic "failure" status, making it impossible to distinguish timeout from crash.printSummaryhelper so the today/week/agent metrics commands share one formatter; output is unchanged.generataASCII banner and randomised tagline from the start ofgenerata agentandgenerata workflowruns. The workflow start header (name, isolation, prompt log) is now the first thing printed. Removes thelogBannerandpickWorkflowTaglineexports from@generata/core/logger.whereon Windows andwhichon Unix-like systems to properly detect CLI tools on all platforms.generata initwhen the template'snode_modulesis missing. Avoids confusing import errors during first-run scaffolding before deps are installed.setupWorktree's cleanup now probes the throwaway branch withgit rev-parse --verifybefore issuinggit branch -D. Skipping the delete when the branch is gone keeps cleanup quiet for callers (e.g. shippers) that have renamed the worktree branch to a semantic name and pushed it.setupWorktreeno longer wrapsgit fetch,git worktree add, and the install command in animated spinners. Each step now prints a plain→ worktree: ...line instead. The spinners often appeared frozen on fast operations because the work completed before the animation could cycle, and the cursor blinking on top of the braille frames read as buggy.@generata/serve@0.2.0
Minor Changes
serve/, mounts each atPOST /<route>, runs them in-process with Bearer auth, 202+status-URL async lifecycle viarunAsync, and disk-persisted run state. v1 targets solo-dev / single-user automation; webhook signature verifiers and SSE deferred to a future release.Patch Changes
generata initwhen the template'snode_modulesis missing. Avoids confusing import errors during first-run scaffolding before deps are installed.@generata/self-improve@0.0.2
Patch Changes