SyncThinkDesignSTD

AAA³ · definição v0.3 · estado em outubro de 2026

AAA³: três planos, um mesmo projeto

Uma arquitetura em que a interface humana, a representação declarativa e o motor de execução podem evoluir sem perder a coerência sobre um mesmo projeto.

Definição

AAA3 significa AI-Addressable Application — Three-Plane Architecture. Os três A dizem que uma inteligência artificial pode operar a aplicação de ponta a ponta escrevendo um documento; o 3 diz como ela é construída para que isso seja possível: em três planos que operam sobre o mesmo projeto.

AAA3
O nome oficial e técnico. É o que se usa em URLs, buscas, código e documentação.
AAA³
Grafia visual opcional, para títulos e diagramas.
AI-Addressable Application
O sentido dos três A: uma aplicação que pode ser operada escrevendo seu documento, sem manipular sua interface.
Three-Plane Architecture
O sentido do 3: um plano humano, um plano declarativo e um plano de execução.

A definição é uma proposta de Iván Braida no contexto de SyncThinkDesign, desenvolvida tecnologicamente na Braidata. O sentido do 3 foi formalizado em 28 de outubro de 2026; até então, o termo era usado internamente apenas como AI-Addressable Application. Formalizá-lo não altera nenhum contrato JSON nem identificador existente. AAA não é usado como nome independente.

Os três planos

1 · Plano humano
A interface visual pela qual uma pessoa cria, consulta e modifica o projeto.
2 · Plano declarativo
O documento JSON canônico: estruturado, versionado, validável e legível tanto por pessoas quanto por programas e modelos de linguagem. É a fonte de verdade do estado declarativo do projeto.
3 · Plano de execução
O motor, o runtime e as APIs que interpretam o documento e produzem comportamento ou resultados reais.
  1. Plano humanoPessoa → Interface → Validação
  2. Plano declarativoIA externa · Script → Validação → Documento canônicomesmas regras para todos · fonte de verdade · versionado
  3. Plano de execuçãoDocumento canônico → Motor · runtime · APIs → ResultadosEstado transitório: não é persistido sem regra explícitaResultados → revisão humana ou automatizada → Validação
AAA³ — Plano humano · Plano declarativo · Plano de execuçãoPessoa → Interface → Validação → Documento canônico. IA externa, Script → Validação. Documento canônico → Motor · runtime · APIs → Resultados. Motor · runtime · APIs ↔ Estado transitório. Resultados → revisão humana ou automatizada → Validação.1 · Plano humano2 · Plano declarativo3 · Plano de execuçãoPessoaIA externaScriptInterfaceValidaçãomesmas regras para todosDocumento canônicofonte de verdade · versionadoMotor · runtime · APIsinterpreta o documentoEstado transitórionão é persistido sem regra explícitaResultadose diagnósticoseditaescreveinterpretarevisão humana ou automatizada
Figura 1. Os três planos do AAA³ e os caminhos pelos quais a informação circula. Uma pessoa escreve pela interface; uma IA externa ou um script escrevem diretamente o documento; em uma aplicação conforme, todas as escritas passam pela mesma validação (invariante IV, hoje verificado em quatro das seis aplicações). O motor interpreta o documento, pode manter estado transitório e produz resultados e diagnósticos, que só voltam ao documento por meio de uma revisão.

Três planos. Um mesmo projeto.

Uma aplicação AAA3 permite que seus três planos operem sobre uma representação coerente do mesmo projeto. O documento canônico é a fonte de verdade do estado declarativo; a interface permite manipulá-lo e o motor o interpreta para executá-lo. Os planos podem evoluir tecnicamente cada um por si — uma nova interface, um motor mais rápido, uma nova versão do formato — desde que respeitem o mesmo contrato.

Nenhum dos planos precisa de uma IA. Uma pessoa pode usar a aplicação sem nenhuma; uma IA externa, qualquer uma, pode operá-la escrevendo ou modificando o documento, sem manipular visualmente a interface e sem que a aplicação dependa de um modelo integrado. A IA é um cliente possível do plano declarativo, não um componente da arquitetura.

Caminhos, não uma sequência

As relações interface ↔ documento ↔ motor não formam uma cadeia obrigatória. Uma aplicação AAA3 admite, quando aplicável, os seguintes caminhos:

  • Pessoa → interface → documento.
  • IA externa → documento.
  • Script → documento.
  • Documento → motor → execução.
  • Motor → resultados e diagnósticos.
  • Resultados → revisão humana ou automatizada → evolução do documento.

Estado declarativo e estado de execução

Os resultados de uma execução não fazem parte automaticamente do documento. O runtime pode manter estado transitório — uma posição de câmera, uma partida em andamento, um cálculo intermediário — que não é persistido. O que precisa voltar ao documento volta por regras explícitas, com a mesma validação que qualquer outra escrita. Sem essa separação, executar um projeto o modificaria em silêncio, e o documento deixaria de ser uma descrição legível e comparável do que foi decidido.

Invariantes

Estes seis invariantes dizem o que uma aplicação precisa cumprir para ser considerada AAA3, como cada um é verificado e em que estado está hoje o nosso ecossistema. Distinguimos o que está implementado (com evidência verificável), o que é parcialmente verificável e o que continua sendo um objetivo de arquitetura.

Invariantes do AAA3. A última coluna resume a matriz de conformidade mais abaixo.
InvarianteO que exigeComo verificarEstado no ecossistema
I · CorrespondênciaToda operação de autoria na interface tem uma representação documentada no modelo canônico.Um teste que percorra os controles da interface e verifique que cada um escreve um campo, e que cada campo tem um controle ou está declarado como editável apenas no documento.Objetivo de arquitetura. É uma regra escrita no SketchLab, no Mapping Studio e no Experience Creator; nenhuma aplicação a testa automaticamente.
II · IndependênciaNem o documento nem o motor exigem uma IA embutida para funcionar.Revisar as dependências de execução e usar a aplicação completa sem nenhum provedor de IA configurado.Implementado nas seis aplicações revisadas. O SketchLab tem uma integração de IA opcional e desativável.
III · InteroperabilidadeUma especificação válida pode ser importada e executada por meio de interfaces documentadas.Pedir a uma pessoa de fora do projeto que produza um documento válido e executá-lo pela API ou pela linha de comando, sem passar pela interface.Implementado nos quatro provedores (contrato braidata.aaa3.*.v1) e no Experience Creator (resolvedor de linha de comando). Parcial no Stellar Map.
IV · ConsistênciaModificar o projeto pela interface ou por um cliente externo respeita as mesmas regras de validação.Verificar que a interface e os clientes externos usam o mesmo código de validação, e que um mesmo documento é aceito ou rejeitado da mesma forma pelos dois caminhos.Implementado com código compartilhado no Experience Creator, no Scene Creator, no SketchLab e no FrameLab. Parcial no Soundcrafter (dois motores). Não verificado no Stellar Map.
V · ReprodutibilidadeÉ possível identificar as condições necessárias para reproduzir um resultado: versões, recursos, parâmetros e sementes, quando aplicável.Registrar essas condições junto com o resultado e executar de novo para comparar. Não exige determinismo absoluto onde há processos que não o são.Parcialmente verificável. Testado no SketchLab e no FrameLab; parcial nas demais (ver a matriz).
VI · PortabilidadeO documento pode passar entre instâncias compatíveis, com suas dependências externas declaradas.Exportar, importar em outra instância e comparar; listar o que o documento precisa fora de si mesmo (recursos, serviços, bibliotecas).Parcialmente verificável. O ida e volta sem perdas é testado no SketchLab, no Scene Creator e no Stellar Map; as dependências externas estão documentadas apenas em parte.

O que o AAA3 acrescenta a uma aplicação com interface e backend

Quase toda aplicação tem uma interface, um formato de dados e um servidor ou motor. Ter os três não a torna AAA3. O que distingue a arquitetura são quatro garantias que uma aplicação tradicional normalmente não oferece, e os problemas que essas garantias resolvem. São invariantes propostos: a matriz de conformidade indica quais cada aplicação cumpre hoje.

Garantias adicionais do AAA3 em relação a uma aplicação tradicional com interface e backend.
GarantiaEm uma aplicação tradicionalNo AAA3Problema que resolve
O documento é um contrato públicoO modelo de dados é interno — um banco de dados, um estado em memória — e muda sem aviso.O documento canônico é documentado, versionado e pode ser validado fora da aplicação.Um terceiro, um script ou um modelo podem produzir projetos válidos sem acesso ao código.
Correspondência (I)Algumas operações existem apenas como cliques ou estado da interface.Toda operação de autoria tem um campo no documento.Uma IA não precisa manipular a interface visualmente, com a fragilidade que isso implica.
Uma única validação (IV)A interface e a API validam separadamente e acabam divergindo.A interface e os clientes externos passam pelo mesmo validador.Um documento aceito por um caminho não é rejeitado nem interpretado de outra forma pelo outro.
Estados separadosO que foi decidido e o que o motor calcula se misturam no mesmo armazenamento.O runtime pode ter estado transitório, mas só regras explícitas o transformam em documento.Executar não modifica o projeto em silêncio, e o documento continua legível e comparável.

Nenhuma dessas ideias é nova isoladamente. Os formatos de documento abertos, a infraestrutura como código e o software local-first já tratam uma representação declarativa como fonte de verdade. O que o AAA3 propõe é reuni-las em um conjunto explícito de invariantes a serviço de um objetivo concreto: que uma aplicação possa ser operada de ponta a ponta por uma pessoa, um script ou qualquer modelo de linguagem, sem depender de um modelo integrado. Se isso é uma contribuição arquitetural ou uma síntese útil de ideias conhecidas, cabe a outros julgar.

Matriz de conformidade

Revisamos o código e a documentação de cada aplicação do ecossistema. Sim significa que há evidência verificável: um teste automatizado ou código compartilhado que conferimos. Parcial indica uma regra escrita sem teste, ou evidência que cobre apenas uma parte. Não significa que não encontramos evidência. Ter interface, JSON e API não basta para marcar um plano ou um invariante.

Auditoria de 2026-10-28 sobre os commits 95c3ba8 (Experience Creator), 8bf81b8 (Scene Creator), 46bea25 (SketchLab), 3f0e5ea (FrameLab), 5a1be38 (Soundcrafter) e bcf2e55 (Stellar Map). As colunas I a VI são os invariantes.
AplicaçãoHumanoDeclarativoExecuçãoIIIIIIIVVVI
Experience CreatorSimSimSimParcialSimSimSimParcialParcial
Scene CreatorSimSimSimParcialSimSimSimParcialParcial
SketchLabSimSimSimParcialSimSimSimSimParcial
FrameLabSimSimSimParcialSimSimSimSimParcial
SoundcrafterParcialSimSimNãoSimSimParcialParcialParcial
Stellar MapSimSimParcialParcialSimParcialNãoParcialParcial
Evidências e lacunas por aplicação. Os contratos aparecem como existem; esta definição não os altera.
AplicaçãoContratoEvidência principalLacuna principal
Experience Creatorexperiencecreator.project.v1Schema Zod em @experience-creator/schema; o editor e o resolvedor de linha de comando importam o mesmo @experience-creator/core; a paridade interface ↔ JSON é uma regra escrita do contrato; o estado do editor não é salvo no documento.A paridade não tem teste automatizado. A captura em tempo real não é reproduzível quadro a quadro; a exportação offline busca ser.
Scene Creatorglbforge.scene v2.5A API usa o mesmo normalizeDoc, o kernel e o exportador do editor; o ida e volta cleanDoc → importação → cleanDoc é idempotente; 14 testes cobrem a API e seu uso a partir do Experience Creator.Referências idb: e caminhos locais exigem o navegador. A reprodutibilidade do GLB byte a byte não está documentada.
SketchLabbraidata.sketchlab.v1 (e braidata.mappinglab.v2)Interface, linha de comando, API e testes usam lib/sketchlab/core.js; exportar → importar → exportar é verificado; a semente é testada de ponta a ponta; a IA integrada é opcional.sketch.html carrega o p5 do jsDelivr, exceto no modo offline; sketch.png exige Chromium no servidor.
FrameLabprojeto type: "framelab", versão 1.0A API executa no jsdom os mesmos módulos de validação e exportação do navegador, sem reimplementá-los; um teste verifica que o mesmo pedido produz o mesmo outputId.Sem regra escrita de paridade interface ↔ documento nem teste de ida e volta do projeto.
Soundcrafterbraidata.alsopack.v2API com 12 testes; os pedidos são idempotentes; a interface importa, valida, renderiza e exporta o documento.Há dois motores com validadores distintos — o do navegador em JavaScript e o da API em Python — e não encontramos teste de equivalência. A interface não edita o documento completo.
Stellar Mapstarmap.v1Schema JSON gerado e testado; exportar → importar → exportar é estável byte a byte.Não expõe o contrato braidata.aaa3.*.v1. Não verificamos que sua API de mapas use o mesmo validador do editor. Manter o layout como estado transitório fora do documento está proposto em sua documentação, não implementado.
A5Aspiração

Que a conformidade com os invariantes possa ser verificada com testes comuns a todas as aplicações, começando pela correspondência (I) e pela consistência (IV), hoje as mais difíceis de demonstrar.

Relação com SyncThinkDesign

AAA3 e SyncThinkDesign têm identidades independentes. STD estuda e propõe a evolução contínua de sistemas por meio de processos sincronizados que se influenciam reciprocamente; o AAA3 aplica alguns desses princípios à arquitetura de aplicações. A sincronização entre os três planos permite que as decisões de autoria, a representação estruturada e o comportamento do sistema se retroalimentem, mas a arquitetura não implementa por si só todos os princípios de STD.

Os três planos também não correspondem um a um aos quatro processos. Capturar, Idear, Executar e Otimizar podem acontecer em qualquer plano: uma pessoa ideia na interface, um modelo ideia escrevendo o documento, o motor executa, uma revisão otimiza. Forçar uma equivalência esconderia justamente o que é interessante: que os processos atravessam os planos.

Quais princípios de SyncThinkDesign o AAA3 materializa, do que precisam a mais e quais ficam de fora.
Princípio de STDO que o AAA3 materializaO que mais é necessárioEstado
F2 SincronizaçãoOs três planos atuam sobre o mesmo projeto: uma mudança no documento chega à interface e ao motor sem esperar uma fase; entre aplicações, uma mudança na fonte regenera o que a consome (I5).Mecanismos de propagação (M5) quando intervêm várias pessoas ou aplicações.Materializado em parte
F3 Evolução orgânica e contínuaO documento pode mudar por partes e ser regenerado sem refazer o resto (I4).Um histórico do documento para acompanhar sua evolução (M1).Materializado em parte
F6 Validação contínuaOnde o invariante IV se cumpre, toda escrita passa pelo mesmo validador; hoje está verificado em quatro das seis aplicações.Critérios sobre o que verificar além da forma (M4).Materializado onde IV se cumpre
F12 Design como evoluçãoO documento declara explicitamente o que pode mudar no sistema.Decidir quem pode mudar o quê, e o que fica protegido (M6).Materializado em parte
F4 EmergênciaA execução busca reprodutibilidade; se há emergência, ela ocorre no ciclo de autoria (Q6).Estudar como os documentos evoluem (Q1).Aberto
F8 Captação permanenteQuase nada: o AAA3 não observa o mundo.Instrumentar o uso real do sistema.Não coberto
F9 e F10 Silos e mentalidadeNada por si só.A organização do trabalho, não a arquitetura.Fora do escopo

O ecossistema atual

Hoje o ecossistema tem um orquestrador e vários provedores. O orquestrador é o Experience Creator, publicado como Alterverse: um editor de experiências 3D interativas e peças audiovisuais. Um projeto do Experience Creator pode declarar os recursos de que precisa — um mundo, uma textura, uma interface, uma peça musical — como pedidos a outros provedores, cada um escrito no formato nativo do provedor. Um resolvedor, que roda no editor ou na linha de comando, os produz. Cada aplicação tem seus próprios três planos; o contrato braidata.aaa3.*.v1 conecta seus planos de execução.

AAA3Pessoa · script · LLM → Documento JSON canônico → Experience Creator (orquestrador) → SketchLab: sketch.html, sketch.png, sketch.validate; Scene Creator: scene.glb; FrameLab: ui.html; Soundcrafter: audio.render. entrada por sha256: SketchLab → Scene Creator.Pessoa · script · LLMDocumento JSON canônicoexperiencecreator.project.v1 · assetRequests[]Experience Creatororquestrador · braidata.aaa3.request.v1Provedores · braidata.aaa3.*.v1SketchLabsketch.htmlsketch.pngsketch.validateScene Creatorscene.glbFrameLabui.htmlSoundcrafteraudio.renderentrada por sha256
Figura 2. Topologia do ecossistema em outubro de 2026. Qualquer autor escreve o documento; o Experience Creator resolve os pedidos com quatro provedores que expõem o mesmo contrato. A linha tracejada é um encadeamento verificado: a saída do SketchLab entra como textura no Scene Creator.
Provedores e operações segundo a documentação de cada repositório.
ProvedorO que fazOperaçõesEstado
Scene CreatorMundos 3D a partir de um documento de cena; exporta GLB com um kernel real, sem navegador.scene.glbFunciona; aceita entradas encadeadas (texturas embutidas no GLB).
SketchLabSketches generativos p5.js definidos por braidata.sketchlab.v1, com parâmetros, semente e lotes.sketch.html, sketch.png, sketch.validateFunciona. sketch.png exige Chromium no servidor; sem ele, responde 501.
FrameLabInterfaces HTML (HUD, menus) com exportação idêntica à do navegador.ui.htmlFunciona; executa os módulos de exportação reais no jsdom.
SoundcrafterMúsica a partir de um projeto braidata.alsopack.v2: áudio WAV e partitura.audio.renderFunciona com limites: em servidores sem estado, o render roda dentro da requisição, até 20 s de áudio.

O contrato entre aplicações

I1Implementação

Cada aplicação do ecossistema tem um formato JSON canônico e versionado. A regra de que a interface apenas edita esse documento está escrita no SketchLab, no Mapping Studio e no Experience Creator; nas demais, observa-se no código, mas não está documentada como regra.

I2Implementação

Nenhuma aplicação precisa de um modelo de IA para funcionar, nem na execução nem no formato. Qualquer modelo pode escrever o documento de fora (chamamos isso de BYO-AI: traga sua própria IA).

I3Implementação

Todo provedor expõe o contrato braidata.aaa3.*.v1 em /api/aaa3: GET manifest (público), POST run, GET jobs/{requestId}, GET outputs/{outputId} e PUT inputs/{sha256} para o encadeamento.

// pedido (resumido)
{
  "contract": "braidata.aaa3.request.v1",
  "requestId": "music",
  "operation": "audio.render",
  "spec": { /* documento nativo do provedor, sem reinterpretar */ },
  "inputs": [{ "name": "albedo", "sha256": "…", "mimeType": "image/png" }]
}

// resultado
{
  "contract": "braidata.aaa3.result.v1",
  "status": "succeeded",
  "diagnostics": [],
  "outputs": [{ "outputId": "<sha256>", "kind": "audio", "mimeType": "audio/wav", "url": "…" }]
}
Forma do pedido e do resultado. Os binários viajam por URL ou por hash, nunca dentro do JSON.
I4Implementação

Os pedidos são idempotentes. A identidade de um pedido é o hash do provedor, da operação, da especificação, dos parâmetros e do conteúdo de suas entradas: pedir duas vezes a mesma coisa devolve o mesmo resultado sem produzi-lo de novo.

I5Implementação

Os pedidos se encadeiam por conteúdo. Uma entrada viaja como sha256; se o provedor não a tem, responde missing_inputs, o cliente a envia e tenta de novo uma vez. Se um recurso de origem muda, muda o hash de todos os pedidos que o consomem e eles são regenerados.

I6Implementação

A aprovação humana é registrada como um pin sobre o hash aprovado. Um pedido fixado não é regenerado, nem forçando a execução; se sua especificação mudou, o resolvedor mantém o que foi aprovado e avisa a diferença. Só uma pessoa remove um pin. É um mecanismo de governança do AAA3, não um princípio de SyncThinkDesign.

I7Implementação

As aplicações buscam reprodutibilidade (invariante V), não determinismo absoluto. No SketchLab, a semente controla randomSeed, noiseSeed e Math.random, e testes de ponta a ponta verificam que o mesmo documento produz a mesma imagem; no FrameLab, um teste verifica que o mesmo pedido produz o mesmo resultado. Nas demais, a reprodutibilidade é parcial.

Como é construído

Boa parte do código do AAA3 é escrita com agentes de programação de IA, sob direção e revisão humanas; o histórico de cada repositório registra isso commit a commit. Mencionamos isso porque faz parte do experimento: se H5 for verdadeira, é em projetos como este que deveria aparecer primeiro. E porque deixa uma pergunta que ainda não sabemos responder bem: como atribuir o trabalho de forma justa quando parte dele é produzida por um agente.

O que o AAA3 não resolve

  • Não capta sinais do mundo. As observações ainda são inseridas à mão.
  • A correspondência entre interface e documento (invariante I) não é testada automaticamente em nenhuma aplicação.
  • Os armazenamentos de saídas são memórias limitadas de cada provedor; uma instância nova pode ter esquecido um resultado e o cliente precisa pedi-lo de novo.
  • Os repositórios são privados. Este site documenta a arquitetura e o contrato para que possam ser discutidos, mas o código ainda não pode ser auditado de fora.
A4Aspiração

Publicar a especificação do AAA3 — os três planos, os invariantes e o contrato braidata.aaa3.*.v1 — como um documento autônomo e versionado, para que alguém possa construir uma aplicação conforme sem ler o nosso código.

Referências

Histórico

VersãoDataMudança
0.12026-10-27Descrição do ecossistema como AI-Addressable Application: contrato, provedores e encadeamento.
0.22026-10-28O AAA3 passa a ser apresentado como uma implementação de SyncThinkDesign com identidade própria.
0.32026-10-28Definição formal: AI-Addressable Application — Three-Plane Architecture. Três planos, seis invariantes com seu estado, garantias em relação a uma aplicação tradicional e matriz de conformidade de seis aplicações. Sem mudanças de contratos nem de identificadores.