groove-dev 0.26.31 → 0.26.32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/node_modules/@groove-dev/daemon/src/api.js +24 -3
- package/node_modules/@groove-dev/gui/dist/assets/{index-vxioP1y2.js → index-CwUZRfEx.js} +12 -12
- package/node_modules/@groove-dev/gui/dist/index.html +1 -1
- package/node_modules/@groove-dev/gui/src/components/dashboard/fleet-panel.jsx +6 -5
- package/package.json +1 -1
- package/packages/daemon/src/api.js +24 -3
- package/packages/gui/dist/assets/{index-vxioP1y2.js → index-CwUZRfEx.js} +12 -12
- package/packages/gui/dist/index.html +1 -1
- package/packages/gui/src/components/dashboard/fleet-panel.jsx +6 -5
|
@@ -1822,14 +1822,35 @@ Keep responses concise. Help them think, don't lecture them about the system the
|
|
|
1822
1822
|
);
|
|
1823
1823
|
|
|
1824
1824
|
if (existing && prompt) {
|
|
1825
|
-
//
|
|
1825
|
+
// Reuse existing agent: kill the old process and spawn fresh with full context.
|
|
1826
|
+
// This ensures the agent gets intro context, project map, and design system —
|
|
1827
|
+
// resume() bypasses all of that and the agent spawns blind.
|
|
1826
1828
|
try {
|
|
1827
|
-
|
|
1829
|
+
// Kill old process if running
|
|
1830
|
+
if (existing.status === 'running' || existing.status === 'starting') {
|
|
1831
|
+
try { await daemon.processes.kill(existing.id); } catch { /* already dead */ }
|
|
1832
|
+
}
|
|
1833
|
+
// Remove old entry
|
|
1834
|
+
daemon.registry.remove(existing.id);
|
|
1835
|
+
daemon.locks.release(existing.id);
|
|
1836
|
+
|
|
1837
|
+
// Spawn fresh with the same name/team but new prompt + full context
|
|
1838
|
+
const validated = validateAgentConfig({
|
|
1839
|
+
role: existing.role,
|
|
1840
|
+
scope: config.scope || existing.scope || [],
|
|
1841
|
+
prompt,
|
|
1842
|
+
provider: config.provider || existing.provider || undefined,
|
|
1843
|
+
model: config.model || existing.model || 'auto',
|
|
1844
|
+
permission: config.permission || existing.permission || 'auto',
|
|
1845
|
+
workingDir: existing.workingDir || projectWorkingDir,
|
|
1846
|
+
name: existing.name,
|
|
1847
|
+
});
|
|
1848
|
+
validated.teamId = defaultTeamId;
|
|
1849
|
+
const newAgent = await daemon.processes.spawn(validated);
|
|
1828
1850
|
reused.push({ id: newAgent.id, name: newAgent.name, role: newAgent.role, reusedFrom: existing.name });
|
|
1829
1851
|
phase1Ids.push(newAgent.id);
|
|
1830
1852
|
daemon.audit.log('team.reuse', { oldId: existing.id, newId: newAgent.id, role: config.role });
|
|
1831
1853
|
} catch (err) {
|
|
1832
|
-
// Reuse failed — fall through to spawn
|
|
1833
1854
|
failed.push({ role: config.role, error: `reuse failed: ${err.message}` });
|
|
1834
1855
|
}
|
|
1835
1856
|
} else {
|