feat: P0 LLM-readiness — Chrome aislado (9333), tab_select determinista, page_get_text, page_perceive

This commit is contained in:
agent
2026-06-06 11:15:12 +02:00
parent 6ecaf9a969
commit 9af2e75246
7 changed files with 272 additions and 36 deletions
+15
View File
@@ -47,6 +47,21 @@ func (p *connPool) drop(port int) {
}
}
// connectTarget descarta la conexión actual del puerto y reconecta a un target
// determinista (por id o substring de URL). Asegura que el agente opera sobre una
// pestaña conocida y no sobre "la primera al azar".
func (p *connPool) connectTarget(port int, match string) (*browser.CDPConn, error) {
p.drop(port)
c, err := browser.CdpConnectTarget("localhost", port, match)
if err != nil {
return nil, err
}
p.mu.Lock()
p.conns[port] = c
p.mu.Unlock()
return c, nil
}
func (p *connPool) setCancel(port int, cancel func()) {
p.mu.Lock()
defer p.mu.Unlock()