summaryrefslogtreecommitdiffstats
path: root/pt-br/news/phase0-foundation
diff options
context:
space:
mode:
authormurilo ijanc2026-03-24 21:41:06 -0300
committermurilo ijanc2026-03-24 21:41:06 -0300
commitf186b71ca51e83837db60de13322394bb5e6d348 (patch)
treecd7940eaa16b83d2cde7b18123411bfb161f7ebb /pt-br/news/phase0-foundation
downloadwebsite-f186b71ca51e83837db60de13322394bb5e6d348.tar.gz
Initial commit
Import existing tesseras.net website content.
Diffstat (limited to 'pt-br/news/phase0-foundation')
-rw-r--r--pt-br/news/phase0-foundation/index.html130
-rw-r--r--pt-br/news/phase0-foundation/index.html.gzbin0 -> 2885 bytes
2 files changed, 130 insertions, 0 deletions
diff --git a/pt-br/news/phase0-foundation/index.html b/pt-br/news/phase0-foundation/index.html
new file mode 100644
index 0000000..ab4b679
--- /dev/null
+++ b/pt-br/news/phase0-foundation/index.html
@@ -0,0 +1,130 @@
+<!DOCTYPE html>
+<html lang="pt-br">
+<head>
+ <meta charset="utf-8">
+ <meta name="viewport" content="width=device-width, initial-scale=1">
+ <title>Fase 0: Fundação Construída — Tesseras</title>
+ <meta name="description" content="Os crates fundamentais do Tesseras estão prontos — tipos de domínio, primitivas criptográficas, armazenamento SQLite e uma CLI funcional.">
+ <!-- Open Graph -->
+ <meta property="og:type" content="article">
+ <meta property="og:title" content="Fase 0: Fundação Construída">
+ <meta property="og:description" content="Os crates fundamentais do Tesseras estão prontos — tipos de domínio, primitivas criptográficas, armazenamento SQLite e uma CLI funcional.">
+ <meta property="og:image" content="https://tesseras.net/images/social.jpg">
+ <meta property="og:image:width" content="1200">
+ <meta property="og:image:height" content="630">
+ <meta property="og:site_name" content="Tesseras">
+ <!-- Twitter Card -->
+ <meta name="twitter:card" content="summary_large_image">
+ <meta name="twitter:title" content="Fase 0: Fundação Construída">
+ <meta name="twitter:description" content="Os crates fundamentais do Tesseras estão prontos — tipos de domínio, primitivas criptográficas, armazenamento SQLite e uma CLI funcional.">
+ <meta name="twitter:image" content="https://tesseras.net/images/social.jpg">
+ <link rel="stylesheet" href="https://tesseras.net/style.css?h=21f0f32121928ee5c690">
+
+
+ <link rel="alternate" type="application/atom+xml" title="Tesseras" href="https://tesseras.net/atom.xml">
+
+
+ <link rel="icon" type="image/png" sizes="32x32" href="https://tesseras.net/images/favicon.png?h=be4e123a23393b1a027d">
+
+</head>
+<body>
+ <header>
+ <h1>
+ <a href="https:&#x2F;&#x2F;tesseras.net/pt-br/">
+ <img src="https://tesseras.net/images/logo-64.png?h=c1b8d0c4c5f93b49d40b" alt="Tesseras" width="40" height="40" class="logo">
+ Tesseras
+ </a>
+ </h1>
+ <nav>
+
+ <a href="https://tesseras.net/pt-br/about/">Sobre</a>
+ <a href="https://tesseras.net/pt-br/news/">Notícias</a>
+ <a href="https://tesseras.net/pt-br/releases/">Lançamentos</a>
+ <a href="https://tesseras.net/pt-br/faq/">FAQ</a>
+ <a href="https://tesseras.net/pt-br/subscriptions/">Inscrições</a>
+ <a href="https://tesseras.net/pt-br/contact/">Contato</a>
+
+ </nav>
+ <nav class="lang-switch">
+
+ <a href="https:&#x2F;&#x2F;tesseras.net&#x2F;news&#x2F;phase0-foundation&#x2F;">English</a> | <strong>Português</strong>
+
+ </nav>
+ </header>
+
+ <main>
+
+<article>
+ <h2>Fase 0: Fundação Construída</h2>
+ <p class="news-date">2026-02-14</p>
+ <p>O primeiro marco do projeto Tesseras está completo. A Fase 0 estabelece a
+fundação sobre a qual cada componente futuro será construído: tipos de domínio,
+criptografia, armazenamento e uma interface de linha de comando funcional.</p>
+<h2 id="o-que-foi-construido">O que foi construído</h2>
+<p><strong>tesseras-core</strong> — A camada de domínio define o formato tessera: <code>ContentHash</code>
+(BLAKE3, 32 bytes), <code>NodeId</code> (Kademlia, 20 bytes), tipos de memória (Moment,
+Reflection, Daily, Relation, Object), modos de visibilidade (Private, Circle,
+Public, PublicAfterDeath, Sealed) e um formato de manifesto em texto plano que
+pode ser interpretado por qualquer linguagem de programação pelos próximos mil
+anos. A camada de serviço (<code>TesseraService</code>) gerencia operações de criação,
+verificação, exportação e listagem através de port traits, seguindo arquitetura
+hexagonal.</p>
+<p><strong>tesseras-crypto</strong> — Geração de chaves Ed25519, assinatura e verificação. Um
+framework de assinatura dual (Ed25519 + placeholder ML-DSA) pronto para migração
+pós-quântica. Hashing de conteúdo com BLAKE3. Codificação de apagamento
+Reed-Solomon atrás de uma feature flag para futura replicação.</p>
+<p><strong>tesseras-storage</strong> — Índice SQLite via rusqlite com migrações em SQL puro.
+Blob store no sistema de arquivos com layout endereçável por conteúdo
+(<code>blobs/&lt;tessera_hash&gt;/&lt;memory_hash&gt;/&lt;filename&gt;</code>). Persistência de chaves de
+identidade em disco.</p>
+<p><strong>tesseras-cli</strong> — Um binário <code>tesseras</code> funcional com cinco comandos:</p>
+<ul>
+<li><code>init</code> — gera identidade Ed25519, cria banco de dados SQLite</li>
+<li><code>create &lt;dir&gt;</code> — varre um diretório por arquivos de mídia, cria uma tessera
+assinada</li>
+<li><code>verify &lt;hash&gt;</code> — verifica assinatura e integridade dos arquivos</li>
+<li><code>export &lt;hash&gt; &lt;dest&gt;</code> — escreve um diretório tessera autocontido</li>
+<li><code>list</code> — mostra uma tabela das tesseras armazenadas</li>
+</ul>
+<p><strong>Testes</strong> — 67+ testes em todo o workspace: testes unitários em cada módulo,
+testes baseados em propriedades (proptest) para roundtrips hex e serialização de
+manifesto, testes de integração cobrindo o ciclo completo de
+criação-verificação-exportação incluindo detecção de arquivos adulterados e
+assinaturas inválidas. Zero avisos do clippy.</p>
+<h2 id="decisoes-de-arquitetura">Decisões de arquitetura</h2>
+<ul>
+<li><strong>Arquitetura hexagonal</strong>: operações criptográficas são injetadas via trait
+objects (<code>Box&lt;dyn Hasher&gt;</code>, <code>Box&lt;dyn ManifestSigner&gt;</code>,
+<code>Box&lt;dyn ManifestVerifier&gt;</code>), mantendo o crate core livre de dependências
+criptográficas concretas.</li>
+<li><strong>Feature flags</strong>: a feature <code>service</code> no tesseras-core controla a camada de
+aplicação assíncrona. As features <code>classical</code> e <code>erasure</code> no tesseras-crypto
+controlam quais algoritmos são compilados.</li>
+<li><strong>Manifesto em texto plano</strong>: interpretável sem qualquer biblioteca de formato
+binário, com prefixos de hash explícitos <code>blake3:</code> e layout legível por
+humanos.</li>
+</ul>
+<h2 id="o-que-vem-a-seguir">O que vem a seguir</h2>
+<p>A Fase 0 é a fundação local. O caminho adiante:</p>
+<ul>
+<li><strong>Fase 1: Rede</strong> — Transporte QUIC (quinn), DHT Kademlia para descoberta de
+pares, travessia de NAT</li>
+<li><strong>Fase 2: Replicação</strong> — Codificação de apagamento Reed-Solomon pela rede,
+loops de reparo, reciprocidade bilateral (sem blockchain, sem tokens)</li>
+<li><strong>Fase 3: Clientes</strong> — App Flutter mobile/desktop via flutter_rust_bridge, API
+GraphQL, nó WASM no navegador</li>
+<li><strong>Fase 4: Endurecimento</strong> — Assinaturas pós-quânticas ML-DSA, empacotamento
+para Alpine/Arch/Debian/FreeBSD/OpenBSD, CI no SourceHut</li>
+</ul>
+<p>O formato tessera é estável. Tudo construído a partir daqui se conecta e estende
+o que existe hoje.</p>
+
+</article>
+
+ </main>
+
+ <footer>
+ <p>&copy; 2026 Tesseras Project. <a href="/atom.xml">News Feed</a> · <a href="https://git.sr.ht/~ijanc/tesseras">Source</a></p>
+ </footer>
+</body>
+</html>
diff --git a/pt-br/news/phase0-foundation/index.html.gz b/pt-br/news/phase0-foundation/index.html.gz
new file mode 100644
index 0000000..fc10aa5
--- /dev/null
+++ b/pt-br/news/phase0-foundation/index.html.gz
Binary files differ