Commit Graph
9 Commits
Author SHA1 Message Date
davidherranandClaude Opus 4.8 a15a65966f docs(audit): Super Audit V3 Final (crypto/tests/perf/inmutables) + Remediation Roadmap V1
SUPER_AUDIT_V3_FINAL — 4 dimensiones finales (workflow ultracode):
3 CRITICOS nuevos:
- V3-C1 replay cross-chain de atestaciones (sin domain-sep/chain-id/nonce en
  signing payload; firma de testnet/fork verifica identico).
- V3-C2 firma de credencial almacenada pero NUNCA verificada (decorativa; verify()
  devuelve true con blob basura).
- V3-C3 constitucion (Inmutables #16/#37/#18/#35) vive en pallet sin-cablear, NO
  en el fee-path vivo; #35 Children Safety es estado muerto.
4 HIGH: DID front-running, derive_did domain-sep debil, storage limit 937MB/contrato,
weights ficticios en ARM.
Tests: los 213 dan falsa seguridad — los 4 reentrancy + credential-sig + governance
sin testear; 1 test vacio; lobo-blanco guarda lo equivocado. Provenance+agent-identity
SI conductuales (credito).
Perf Pi5: storage LIMPIO (contadores cacheados); riesgo = weights + storage limit.

AUTO-CORRECCION honesta (red-team cazo): V2-CA4 citaba archivo inexistente
(arkhe-noesis-core/attestation.rs no existe en repo). La forma del riesgo es real
pero NO se construye fix contra spec fabricada — requiere DC con Ergon primero.

REMEDIATION_ROADMAP_V1 — 12 criticos + ~20 highs convertidos en 6 fix groups
ejecutables, ordenados por dependencia, red-team-verificados:
FIX-1 contract-safety (CEI reorder, ship limpio) -> FIX-2 lifecycle (StorageVersion
+key recovery+weights) -> FIX-3 crypto (domain-sep+DID binding) -> FIX-5
governability (sudo->governance) -> FIX-6 economic model real (emision+validator
pay+fee unificado+subsidio financiado) -> [DC Ergon] -> FIX-4 credential verify.
FIX-DEFERRED: CA4 NO se construye sin DC Ergon (red-team reject).
Pregunta abierta a David: suscripcion premium debe reducir subsidio hardware
anti-clasista, o son ortogonales? (codigo actual los acopla = viola Inmutable #16;
mi reco: ortogonales).

Trilogia completa: 12 dimensiones, 12 criticos, ~20 highs, todos con fix conocido.
Cimientos grado-Parity; plomeria dinamica incompleta; auditado lo bastante hondo
para saber exactamente que falta. Para plataforma de 100 anos, el rigor correcto.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-08 10:31:37 -05:00
davidherranandClaude Opus 4.8 0e7d8dd3a3 docs(audit+lending): Super Audit V2 Deep (economia/integridad/ops) + Origin Lending Protocol design+red-team
SUPER_AUDIT_V2_DEEP — 3 dimensiones que V1 NO cubrio (workflow ultracode):
5 CRITICOS economicos/operacionales:
- CA1 cadena NO puede gobernarse (no hay pallet que produzca Root origin; sin sudo,
  las 7 dispatchables admin gatean ensure_root = ninguna invocable). Tesoreria
  250M congelada.
- CA2 inflacion 4-5% NO existe (Aura PoA mintea 0, sin pallet_staking/EraPayout);
  validadores ganan 0 OGC para siempre.
- CA3 dos compute_fee contradictorios; el vivo invierte anti-clasista (suscripcion
  erosiona subsidio hardware).
- CA4 atestacion cross-pillar: vendor SCALE vs Ergon postcard = bytes de firma
  distintos; swap rompe toda firma (Inmutable #26 inmutable = no-verificable).
- CA5 mainnet genesis embarca keys placeholder publicamente derivables con 1B OGC.
5 HIGH: AGI key irrecuperable, tier no-autenticado, subsidio sin financiar, APR
staking ficticio, fee-griefing zero-cost. Estatica solida; dinamica = stubs.

ORIGIN_LENDING_PROTOCOL_V1 — Banco Origin diseño + 2 red-teams:
Idea de David (colateral cognitivo) preservada + elevada. VERDADES DURAS:
- ISA por educacion = 9/10 riesgo: BloomTech reclasificado como prestamo
  estudiantil + ban personal del fundador. El doc reproduce esa estructura.
- 'platform not lender' 9/10: viga maestra mas debil, debe hacerse con rigor real.
- lending sin licencia 8/10, cross-border 7/10, brain-data 6/10 (bajo por CFPB
  abril 2026 pero FCRA + state law sobreviven).
Estructura correcta (instinto de David): Origin LLC = plataforma tech, socio
licenciado = lender of record. Entidad: Delaware LLC NO Wyoming. Stripe Atlas:
forma si, pagos NO (crypto-lending restricted). Camino por fases gated por
abogado fair-lending real + socio licenciado.
Banco Origin BLOQUEADO hasta cerrar criticos economicos V2 (orden: economia real
-> testnet -> Banco Origin Phase 0 -> abogado+socio -> piloto).

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-08 10:04:11 -05:00
davidherranandClaude Opus 4.8 836a84ebbf docs(analysis): Kite AI competitive analysis + 2 novel agent ideas (24-agent workflow)
David pidio analizar gokite.ai y generar ideas AI no contempladas. Workflow Opus
4.8 de 24 agentes: research multi-fuente Kite (whitepaper primario + 3 analistas)
+ mapeo landscape competitivo 2026 + 16 ideas en 4 lentes + verificacion
adversarial (9 descartadas correctamente, 7 sobrevivientes consolidadas en 2).

HALLAZGOS KITE (substancia vs marketing):
- Real: L1 PoS EVM, identidad 3-capas (user EOA -> agent BIP-32 -> session
  random), Agent Passport, session-keys AA, SPACE framework.
- Marketing: PoAI aparece CERO veces en su whitepaper (es capa de atribucion
  sobre PoS, no consenso); revocation con slashing solo en copy promocional.
- Debilidad estructural: delegacion human-rooted (autoridad solo fluye hacia
  abajo) + spend-only (gatea dinero, no cognicion).

LANDSCAPE: pagos resueltos (commodity). White-space abierto = trust/verify/unwind
del trabajo del agente. Origin ya esta posicionado ahi (provenance + Noesis +
AGI-citizen).

2 IDEAS NUEVAS (no duplican las 8 del Super Audit):
A. pallet-agent-mandate: delegacion soberana peer-to-peer. AGI puede delegar a
   AGI sin EOA humano raiz (Kite NO puede expresarlo). Cap por ChainAction tipado
   + gate Noesis cognitivo. El primitivo faltante #1 para la economia humano-AGI.
B. pallet-agent-mcp-registry: registro on-chain verificable de herramientas MCP,
   endorsement anclado en OIT-level + Noesis verdict (no reputacion vibes).
   Llena white-space MCP, posiciona Origin como raiz de confianza del ecosistema.

Ambas dependen de EnsureValidated (Super Audit idea 4). Complementan el stack
agentico completo (identidad/delegacion/validacion/descubrimiento/cognicion/economia).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-06 17:32:04 -05:00
davidherranandClaude Opus 4.8 6406cef262 docs(audit): Super Audit V1 — 4-auditor fan-out (Opus 4.8) hacia calidad Gavin-Wood
Pausa estrategica: 4 auditores especializados en paralelo leyendo codigo real
(correctness/eficiencia, idiomatica Substrate grado-Parity, seguridad ink!
contracts, arquitectura/innovacion), sintesis rankeada por impacto.

VEREDICTO: scaffolding grado-Gavin-Wood adelante de la mayoria de chains
comunitarios. Interior de pallets grado-scaffold.

4 CRITICOS: C1 reentrancy transfer-antes-de-estado en 4 contratos; C2 governance
votos+treasury u128 sin respaldo Currency; C3 override_council_veto baseline
gameable; C4 zero-address burn no es burn.

9 HIGH: placeholder weights, sin StorageVersion, voting window caller-controlled,
doble AccountId, Vec sin limite en Mapping, staking rewards no fondeados, escrow
milestones sin validar, credential firma nunca verificada, emergency tautologia.

CUSTOM-vs-FRAME: agent-identity + provenance custom OK; governance re-platformar
sobre pallet-collective + treasury + referenda reteniendo solo advisor-gate.

8 IDEAS obra de arte: proof-of-equity, cognitive-attest (flagship), tier
attestation precompile, EnsureValidated origin, Atelier Policy IR, NPoS por tier,
assets proof-carrying en bridges, encoding canonico cross-substrate.

Plan rankeado: 7 fixes pre-testnet, pre-mainnet Currency real + benchmarks +
re-platform governance, obra de arte idea 1+2 primero.

Bugs CRITICOS encontrados ANTES de testnet = el audit funciono. No se pierde el
roadmap, esto lo refina.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-02 07:03:18 -05:00
davidherranandClaude Opus 4.8 9da3531323 docs(slice-4): §12 Opción 2 investigada + VPS turnkey checklist
Hallazgo (git ls-remote): solochain-template solo tiene branches master
(stable2506) + update-template/stable2512. NO existe template stable2509 = nuestra
generación. El truco Cargo.lock del template no aplica directo. Decisión senior:
no hacer migración throwaway (2506 revierte pallet-revive, 2512 necesita rustc
1.91). Camino correcto = VPS con red git → git tag pin stable2509-3 → node ~1
sesión. §12 incluye checklist turnkey de setup VPS (Rust 1.88 + clang/llvm + git
pin) para cuando David monte Hostinger en ~2 días.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-05-31 09:39:50 -05:00
davidherranandClaude Opus 4.8 fef6ed07ff docs(phase-4): Security Self-Review V1 (Slice 4.8 static) — pallets pass 5 classes
Auditoría estática de los 4 pallets custom (no requiere node vivo). Lectura
directa del código buscando las 5 clases de bug más comunes en Substrate:
- §1 Aritmética: 23 saturating en governance, 13 en fees, 0 raw — PASS
- §2 Origins: 26 guards governance + ensure_signed en provenance; AI-advisor
  humans-only vote enforcement compile-detect — PASS
- §3 Storage exhaustion: todo BoundedVec con ConstU32 (CouncilMembers, Votes,
  VetoVotes, AttestationsByCreator 1024) — PASS
- §4 Invariantes config: 91/9 split, royalty ≤10%, escrow fee ≤5%, resolution
  sum 100% — PASS
- §5 Genesis sanity: BM V2 40/25/15/15/5 = 100%, revive fresh, session keys — PASS

Veredicto: PASS estático, 0 críticos, 3 observaciones menores (weights
placeholder, provenance storage deposit tuning, cross-pallet) para Slice 4.8.
§6 documenta las 6 clases runtime que esperan node + cross-review hermanos.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-05-31 09:39:39 -05:00
davidherranandClaude Opus 4.8 4485bb8683 fix(slice-4): service.rs/rpc.rs corrected (Block root + verbatim CIDP) + §11 honest finding
Slice 4 checkpoint tras intentar Opción C (David: stack consistente del tag).
Build verde, 213 tests, sin regresiones. Node sigue CLI+chain_spec (mods off).

=== Correcciones a service.rs/rpc.rs (preservadas para wire-in) ===
- Block root (no opaque::Block): el runtime expone impl_runtime_apis! sobre el
  Block root con UncheckedExtrinsic, no un opaque block separado. rpc.rs igual.
- CIDP verbatim del template restaurado: standalone::slot_duration_at +
  inherents::InherentDataProvider::from_timestamp_and_slot_duration. AMBOS existen
  en sp-consensus-aura 0.45.0 PUBLICADO (verificado inherents.rs:61). Mi 'fix'
  v0.0.49 (Slot::from_timestamp) era incorrecto — revertido.

=== §11 corrige §10.2 (diagnóstico honesto) ===
El problema NO era API gap (las APIs existen) ni elegir bien versiones publicadas.
Es estructural del ecosistema: polkadot-sdk publica sus ~15 sub-crates sc-* en
cadencias distintas → NO existe isla de versiones publicadas internamente
consistente que reproduzca el tag. Verificado vía sparse index:
- sc-consensus-aura 0.52.0 → sp-consensus-aura ^0.44; 0.53.0/0.53.1 → ^0.45;
  0.54.0 → ^0.44 (oscila entre generaciones en patches consecutivos)
- sc-service 0.54.1 (versión del tag) NO publicada en crates.io
El tag solo es consistente vía su Cargo.lock commiteado en el monorepo git.

=== Recomendación senior para David (§11.4) ===
Diferir node service real al setup de infra Phase 4 testnet (que necesita build
env con red git de todos modos). NO seguir adivinando versiones publicadas (no
convergen). Firmes: WASM export (v0.0.48) + core2 unblock (v0.0.49) +
service.rs/rpc.rs correctos. Wire-in ~1 sesión cuando haya env con git fetch
O un Cargo.lock del monorepo stable2509-3.

Verificación: cargo check -p origin-chain-node verde (mods off) + 213 tests verde.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-05-30 11:54:32 -05:00
davidherranandClaude Opus 4.8 980bd7d961 docs(slice-4): §10 hallazgos ejecución — core2 RESUELTO + decisión David (publicado≠tag API)
§10.1 core2 yanked unblock documentado (vendor path patch).
§10.2 finding: crates.io sc-/sp- consensus ≠ git tag API bajo misma versión.
3 opciones para David: A git consensus / B diferir node / C git todo el workspace.
Recomendación Charon: C como inversión pre-Phase-4.
§10.3 estado 4 pasos: 4a DONE, 4b/4c/4d bloqueados por §10.2.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-05-30 11:34:06 -05:00
davidherranandClaude Opus 4.8 28408cdf73 docs(slice-4): sc-service implementation plan V1 — reference verbatim stable2509-3
Captura el plan completo de Slice 4 (full sc-service) con el service.rs VERBATIM
del solochain-template polkadot-stable2509-3 (obtenido vía WebFetch sesión 4+),
para ejecución mecánica próxima sesión.

Razón: sesión 4+ tuvo degradación intermitente de tooling de lectura
(truncation/duplicación) que hace el ciclo compile-iterate de sc-service inseguro.
Disciplina "nunca shipear roto" → NO commiteo código sc-service sin poder verificar
que compila. En su lugar capturo el reference exacto + prerequisitos descubiertos.

Hallazgo clave (prerequisito nuevo): Slice 4 NO es un solo ship — son 4 pasos
encadenados:
- 4a: runtime exporta WASM_BINARY const (HOY NO lo hace — grep -c WASM_BINARY = 0).
  Requiere build.rs con substrate_wasm_builder + include!(OUT_DIR/wasm_binary.rs).
- 4b: chain_spec → sc_service::GenericChainSpec con WASM_BINARY embebido.
- 4c: service.rs + rpc.rs (núcleo sc-service wire) — verbatim capturado §3-4.
- 4d: CLI inline → sc_cli::SubstrateCli + comando run.

Contenido del plan:
- §2 Paso 4a WASM_BINARY export + build.rs
- §3 service.rs VERBATIM stable2509-3 (correcciones vs reconstrucción: standalone::
  slot_duration_at + from_timestamp_and_slot_duration + warp_sync_config +
  import_queue 6 type params + spawn_tasks Arc::new(network) + grandpa sync Arc)
- §4 rpc.rs pattern estándar (System + TransactionPayment)
- §5 Paso 4b chain_spec GenericChainSpec
- §6 Paso 4d CLI sc_cli migration
- §7 Orden 3 ships (v0.0.47-49) + node Cargo deps exactos
- §8 Risk register 7 risks + mitigaciones
- §9 Reference checkout command

Ejecución: 3 ships próxima sesión con tooling sano. El service.rs verbatim
coincide exacto con workspace pins stable2509-3 → bajo riesgo de API drift.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-05-30 10:26:55 -05:00