feat: import agents_and_robots platform as unibots (Matrix-out, unibus transport)

Reemplaza el scaffold del echobot por la plataforma completa de bots traida
desde ~/DataProyects/Github/agents_and_robots tras la operacion Matrix-out:
los bots ya no hablan por Matrix sino por el bus unibus (modelo todo-rooms +
E2E via shell/transportunibus sobre github.com/enmanuel/unibus/pkg/client).

- go.mod: replace de unibus -> ../unibus y de fn-registry -> ../../../.. (paths
  relativos reajustados a la nueva ubicacion dentro de fn_registry).
- app.md: bump a 0.2.0, descripcion + arquitectura + comandos + gotchas reales.
- modulo Go conservado como github.com/enmanuel/agents (sin reescribir imports).

agents_and_robots queda archivado como museo de la era Matrix.
This commit is contained in:
agent
2026-06-07 11:50:13 +02:00
parent bb5b0e09b1
commit fc644ecd6e
308 changed files with 38829 additions and 474 deletions
+26
View File
@@ -0,0 +1,26 @@
package acl
// RoleDef is the input shape for building an ACL — matches config.RoleCfg.
type RoleDef struct {
Users []string
Actions []string
}
// FromRoles builds an ACL directly from a slice of Role values.
func FromRoles(roles []Role) ACL {
return ACL{roles: roles}
}
// FromMap builds an ACL from a map of role name → RoleDef.
// This is the primary constructor used from the runtime.
func FromMap(roles map[string]RoleDef) ACL {
var rs []Role
for name, def := range roles {
rs = append(rs, Role{
Name: name,
Users: def.Users,
Actions: def.Actions,
})
}
return ACL{roles: rs}
}