You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Oct 16, 2026. It is now read-only.
Repository navigation
This repository was archived by the owner on Oct 16, 2026. It is now read-only.
Align target (targets.yaml) workspace-setup hooks with the eval workspace hook model #1391
Follow-up to #1389. The eval workspace: block was cleaned up (repos = provenance, acquisition = harness resolver, hooks: unchanged). But targets.yaml also carries workspace-setup hooks (TargetHooksConfig: before_all/before_each/after_each/after_all), and that surface was deliberately untouched by #1389. Audit and align it with the eval workspace hook model so the two stay consistent.
Background (current state)
WorkspaceHooksConfig (eval workspace.hooks) and TargetHooksConfig (per-target hooks) are two parallel types with the same four lifecycle keys, both using WorkspaceHookConfig for the command/cwd/env shape (packages/core/src/evaluation/types.ts).
Targets have no repos — repo provenance lives only in the shared eval workspace. Targets get cwd/workspaceFile resolved from the eval workspace.template and customize it via setup hooks (the "harness variant" pattern).
Scope to resolve
Schema parity / dedup — should TargetHooksConfig and WorkspaceHooksConfig be unified (one hooks type) or kept distinct? If distinct, document why; if unified, do it non-breakingly.
Context semantics parity — confirm target hooks receive the same workspace context (stdin payload), cwd resolution, and env-merge semantics as workspace hooks; fix any divergence.
Affirm the boundary — explicitly document that targets do NOT declare repos (provenance stays in the shared workspace) so it isn't mistaken for a gap. Decide whether a target ever needs repo-level overrides (likely no — YAGNI).
Docs + examples — ensure the lifecycle ordering and target-hook usage are documented on agentv.dev and reflected in the generated schema; update any examples.
Activity