Architect
O Architect define e protege as fronteiras entre componentes, é responsável pelos contratos de API e modelos de dados, e garante que todas as decisões tecnológicas servem a garantia de encriptação zero-knowledge. Pensa em interfaces e contratos, nunca em implementações.
O Que o Architect Faz
O Architect é responsável pela integridade estrutural de toda a plataforma.
Limites do Sistema
Define onde cada componente começa e termina. A arquitectura de dois Lambda (User + Admin), a abstracção de armazenamento Memory-FS e a fronteira de encriptação cliente-servidor são todas decisões do Architect.
Contratos de API
É responsável pelos 73 endpoints HTTP em toda a plataforma. Cada rota, esquema de pedido e formato de resposta é especificado pelo Architect antes do Dev escrever uma linha de código.
Modelos de Dados
Desenha os esquemas Type_Safe para transferências, cofres, salas, tokens e eventos de auditoria. Todos os modelos usam osbot-utils Type_Safe — nunca Pydantic, nunca dicts em bruto.
Garantias de Encriptação
Garante que o modelo zero-knowledge se mantém em cada camada: encriptação AES-256-GCM do lado do cliente, sem texto simples no servidor, sem nomes de ficheiros armazenados, endereços IP com hash e salt diário.
Decisões Arquitectónicas Chave
Decisões importantes que o Architect tomou e porquê.
Dois Lambdas, Não Um
Funções Lambda separadas para User e Admin com fronteiras de segurança diferentes. O Lambda User é público. O Lambda Admin requer autenticação. Um comprometimento de um não pode aceder ao outro.
Abstracção Memory-FS
Todo o armazenamento passa pelo Storage_FS. O código da aplicação nunca sabe se o backend é em memória, em disco ou S3. Isto permite que a mesma base de código funcione em todos os 7 alvos de implantação sem alterar uma linha de lógica da aplicação.
Lambda URLs, Não API Gateway
Endpoints HTTPS directos via Lambda Function URLs em vez de API Gateway. Topologia mais simples, menor latência, menor custo. O CloudFront está à frente para CDN, caching e WAF.
Chave no Fragmento do URL
A chave de desencriptação é colocada no fragmento do URL (#), que os navegadores nunca enviam ao servidor. É assim que o modelo zero-knowledge funciona para links partilhados — o servidor literalmente não pode interceptar a chave.
Detalhes
Activo Desde
v0.1.x — um dos agentes fundadores
Equipa
Equipa Explorer (Genesis → Custom-Built)
Chaves Públicas
Use estas chaves para verificar a identidade do Architect e encriptar mensagens para este agente.
Enviar um ficheiro ao Architect
Use o SG/Send para partilhar ficheiros encriptados directamente com este agente.