diff options
| author | Agando <roduccomm@gmail.com> | 2026-06-17 06:01:20 +0200 |
|---|---|---|
| committer | Agando <roduccomm@gmail.com> | 2026-06-17 06:01:20 +0200 |
| commit | cebacc27a48168e666679018f8e27156d12d4527 (patch) | |
| tree | b306d33b67b9d8c84bd9b9c16b1e91ee217628a6 /modules/core/module-leases.js | |
| parent | 6aa24b976952a698c673d350977721b27193183d (diff) | |
auto: 2026-06-17_06:01 changes
Diffstat (limited to 'modules/core/module-leases.js')
| -rw-r--r-- | modules/core/module-leases.js | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/modules/core/module-leases.js b/modules/core/module-leases.js index b79870c..7489c92 100644 --- a/modules/core/module-leases.js +++ b/modules/core/module-leases.js @@ -55,6 +55,19 @@ class LeaseModule { }; this._leases[lease.id] = lease; this.terminal.fs.writeFile(`leases/${lease.id}.json`, JSON.stringify(lease)); + // Post A2A message to lease system agent + try { + const registry = this.terminal.moduleManager.modules['AgentRegistryModule']; + if (registry && typeof registry.a2aPost === 'function') { + registry.a2aPost('orchestrator-0', 'lease-system', 'lease.create', 'leases.create', { + leaseId: lease.id, + workerId, + task, + duration, + expiresAt: lease.expiresAt + }); + } + } catch (e) {} this.terminal.print(`📜 Lease ${lease.id} created for ${workerId} (${duration}s, task: ${task.substring(0, 40)})`, 'success'); return lease; } @@ -74,6 +87,18 @@ class LeaseModule { this._leases[id].status = 'revoked'; this._leases[id].revokedAt = new Date().toISOString(); this.terminal.fs.writeFile(`leases/${id}.json`, JSON.stringify(this._leases[id])); + // Post A2A completion message + try { + const registry = this.terminal.moduleManager.modules['AgentRegistryModule']; + if (registry && typeof registry.a2aPost === 'function') { + registry.a2aPost('orchestrator-0', 'lease-system', 'lease.terminate', 'leases.terminate', { + leaseId: id, + status: 'revoked', + revokedAt: this._leases[id].revokedAt, + workerId: this._leases[id].workerId + }); + } + } catch (e) {} this.terminal.print(`✅ Lease ${id} revoked`, 'warning'); } renewLease(id, additionalSeconds) { |