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
@@ -1344,6 +1345,10 @@ private function registerAbilities(): void {
1344
1345
'type' => 'string',
1345
1346
'description' => 'Optional short task/issue reference (e.g. `org/repo#123`) recorded alongside task_url. Falls back to DATAMACHINE_TASK_REF env when omitted.',
1346
1347
),
1348
+
'require_task_tracker' => array(
1349
+
'type' => 'boolean',
1350
+
'description' => 'Require a valid task URL or task reference before creating the worktree. Defaults true; trusted operator-local callers may explicitly set false.',
1351
+
),
1347
1352
),
1348
1353
'required' => array( 'repo', 'branch' ),
1349
1354
),
@@ -3886,7 +3891,8 @@ public static function worktreeAdd( array $input ): array|\WP_Error {
returnnew \WP_Error('worktree_task_tracker_required', 'Refusing to create a managed worktree without a valid task URL or task reference.', array( 'status' => 400 ));
'Refusing to create a managed worktree without a valid task URL or task reference. Supply task_url or task_ref, or use an operator-local creation path that does not require a tracker.',
101
+
array( 'status' => 400 )
102
+
);
103
+
}
104
+
95
105
$slug = $this->slugify_branch($branch);
96
106
if ( '' === $slug ) {
97
107
returnnew \WP_Error('invalid_branch', sprintf('Branch "%s" produced an empty slug.', $branch), array( 'status' => 400 ));
assert_true(str_contains($refused->get_error_message(), 'studio wp datamachine-code workspace worktree bounded-cleanup-eligible-apply --dry-run --limit=25'), 'disk pressure refusal must include the next cleanup command');
290
290
assert_true(! is_dir($workspace_root . '/homeboy@audit-primitives-disk-refused'), 'disk pressure refusal left a worktree directory behind');
0 commit comments