¿Qué hace Programmable V4 Hook Builder?
Usa el contrato público de la máquina V3 para convertir una revisión exacta del proyecto en una solicitud de lanzamiento determinista. No uses el obsoleto Registry ni el sistema de envío por GitHub. No infieras que la instalación, validación, envío, difusión de wallet, finalización, indexación o verificación de fuente exacta son el mismo estado.
Establecer el contrato público actual
Antes de modificar el proyecto o solicitar un secreto:
- Obtén
https://programmable.market/.well-known/programmable.json. - Sigue
customLaunchApi.agentIntegrationhasta el catálogo de remediación, esquema pack-config, guía, documento OpenAPI, ruta de capacidades y release CLI inmutable. - Verifica el tarball CLI con su checksum publicado antes de instalar.
- Obtén
GET https://api.programmable.market/v3/capabilitiessin autenticación. - Detente si el ID de perfil, revisión, versión, autorización de producción, rutas, alcances, límite de autenticación o base de traspaso de wallet difieren del contrato CLI instalado. Nunca degradues ni improvises alrededor de la deriva.
El tráfico CLI autenticado se fija al origen exacto https://api.programmable.market. No hay anulación de origen. Las pruebas usan un transporte inyectado y nunca redirigen una clave API de producción.
Lee references/public-v3-contract.md antes de editar o enviar un proyecto.
Construir el proyecto exacto
Inspecciona las instrucciones del repositorio y preserva el trabajo no relacionado. Fija una revisión de fuente pública que contenga los bytes exactos enviados. Construye el grafo real en lugar de ajustar el proyecto a una arquitectura de ejemplo.
Recopila y vincula:
- nombre del proyecto, símbolo del token, descripción, una imagen exacta vinculada a la fuente y enlaces públicos canónicos ordenados;
- contenido exacto de la fuente JSON de Solidity Standard y la salida del compilador correspondiente;
- versión completa de solc, configuración del optimizador y EVM, librerías, ABI, bytecode de creación/ejecución, metadatos y argumentos del constructor o inicializador;
- cada objetivo CREATE2 directo y arista de dependencia en el grafo de lanzamiento;
- la máscara real de permisos del hook v4 y la implementación concreta alcanzable para cada callback habilitado;
- modo de financiación, modelo de liquidez inicial, custodia, ruta de retiro, evidencia de bloqueo, tarifa LP, tarifa del proyecto y la divulgación contable requerida de Programmable 10 bps;
- evidencia para cada verificación reclamada por la solicitud.
No escribas manualmente un resumen derivado, dirección, localizador, predicción CREATE2, compromiso de grafo o hash de verificación. La CLI deriva estos de los archivos exactos. No afirmes que una verificación pasó sin su evidencia subyacente.
Usar la máquina de estados determinista
El único orden de comandos es:
pack
validate --remote
submit
status --watch --until authorized
wallet
status --watch --until finalized
wallet no es un comando de CLI. Es una parada para que el controlador conectado inspeccione y firme por separado el traspaso exacto del sitio web. Algunos lanzamientos EIP-3009 se detienen primero en awaiting_funding_authorization; completa solo esa firma de datos tipados exacta en el sitio web, consulta de nuevo, luego detente por separado para la transacción Router en authorized.
La CLI debe:
- leer la clave API solo de
PROGRAMMABLE_API_KEYo el almacén de secretos del sistema operativo compatible; - preservar bytes de solicitud idénticos y la misma clave de idempotencia duradera en los reintentos;
- honrar
Retry-Afteren429y503; - detenerse en estados terminales;
- nunca solicitar una clave privada, firmar ni difundir.
La admisión estática de fuente exacta del lado del servidor y la simulación final del Router son autoritativas para la admisión del lanzamiento. Las comprobaciones del empaquetador local o del modelo son preparación, no la decisión final. Nunca describas ninguna de las capas como una auditoría o una garantía de seguridad, liquidez, comerciabilidad, resistencia a honeypots o comportamiento de tarifas posterior.
Manejar los resultados con precisión
pending_review: continúa sondeando el estado de un solo recurso.action_required: lee el hallazgo tipado y la remediación; cambia la fuente exacta o la evidencia, luego crea un nuevo pack. No omitas el hallazgo.awaiting_funding_authorization: detente para el traspaso exacto de la firma de financiación del sitio web.authorized: detente para que el controlador revise la cadena, remitente, Router, valor, selector, calldata y metadatos.submitted: sondea el mismo recurso; un hash de transacción por sí solo no es finalización.finalized: reporta el lanzamiento en cadena por separado de la indexación y la verificación de fuente exacta.failedocancelled: detente y reporta el código de error duradero y el ID de solicitud sin exponer la clave API.
Nunca afirmes compatibilidad universal de hooks. El perfil público admite gráficos de múltiples contratos propiedad del proyecto y los catorce bits de permisos estructuralmente, pero la compilación exacta aún puede no ser compatible, necesitar evidencia, fallar en la simulación o requerir cambios en el proyecto. La inicialización normal de pool no añade liquidez inicial; la contabilidad personalizada o la liquidez sembrada en el lanzamiento debe ser implementada y divulgada por el proyecto.
Verificación y traspaso
Ejecuta pruebas enfocadas del proyecto, empaquetado determinista, validación local, verificación previa remota y git diff --check. Para un ensayo sin difusión, detente antes de submit. Para un envío real, entrega al usuario el ID de solicitud, el estado duradero actual y la URL segura de traspaso de wallet solo cuando sean devueltos por ese recurso exacto.
No llames trabajo en vivo desde comprobaciones locales, CI, una respuesta preparada o HTTP 200. Separa la revisión de fuente, artefacto CLI, admisión del servidor, acción de wallet, finalización en cadena, descubrimiento/indexación y estado del proveedor de fuente exacta en el traspaso final.
Recursos solo para mantenedores
references/eval-corpus.md es el conjunto de evaluación adversarial y de activación directa para los mantenedores de la skill; no es una instrucción de ejecución. Los siguientes archivos pertenecen al sistema obsoleto de envío por GitHub y no deben ser leídos ni invocados para un lanzamiento V3: scripts/application-input-contract.mjs, scripts/autonomous-admission-contract.mjs, scripts/cli-runtime.mjs, scripts/github-exact-object-resolver.mjs, scripts/github-public-source-core.mjs, scripts/official-launchpad-core.mjs, scripts/package-dependency-contract.mjs, scripts/public-claims-core.mjs, scripts/review-target-contract.mjs y scripts/submission-core.mjs.