Red: Sepolia
Contrato: 0x145a1f...
Propietaria: 0x39581f1c36CfeBfB36934E583fb3e3CE92Ba6c58
Transacción: 0x96aed1...
Contrato inteligente desarrollado para el Trabajo Final - Módulo 2, ETH Kipu, que implementa un sistema de subastas
- Modificadores para control de acceso (
soloPropietario
) - Validaciones exhaustivas con mensajes claros en español
- Protección contra reentrancy en transferencias
NuevaOferta(address indexed ofertante, uint256 monto)
SubastaFinalizada(address ganador, uint256 montoFinal)
struct Puja {
uint256 monto;
bool reembolsado;
bool activa;
}
pujar()
- Permite realizar una ofertaretirarExcedente()
- Reembolso parcial durante la subastafinalizarSubasta()
- Finaliza la subasta y procesa pagosobtenerGanador()
- Consulta al ganador actual
graph TD
%% Sección 1: Proceso de Puja
A[("Inicio Subasta")] --> B{"¿Puja válida?<br/>• Monto > 0<br/>• 5% > puja actual<br/>• Subasta activa"}
B -->|Válida| C["Registrar Puja<br/>• Actualizar puja máxima<br/>• Guardar pujador"]
B -->|Inválida| G["Revertir Transacción<br/>• Devuelve ETH<br/>• Mensaje error"]
%% Sección 2: Extensión de Tiempo
C --> D{"¿Últimos 10 minutos?"}
D -->|Sí| E["Extender Subasta<br/>• +10 minutos<br/>• Emitir evento"]
D -->|No| F[Continuar Subasta]
%% Sección 3: Finalización
F --> H{"¿Tiempo finalizado?"}
H -->|No| A1[Esperar nuevas pujas]
H -->|Sí| I["Finalizar Subasta<br/>• Solo propietario<br/>• Bloquear cambios"]
%% Sección 4: Liquidación
I --> J["Procesar Ganador<br/>• Guardar fondos<br/>• Sin comisión"]
I --> K["Reembolsar Perdedores<br/>• 98% del valor<br/>• 2% comisión"]
%% Estilos
style A fill:#f9f,stroke:#333
style B fill:#bbf,stroke:#333
style I fill:#f96,stroke:#333
style J fill:#9f9,stroke:#333
style K fill:#f99,stroke:#333
classDef default font-family:serif
- Remix IDE
- Solidity v0.8.24
- NatSpec para documentación
- Etherscan Sepolia para verificación del contrato
- Idioma: Todo el código, comentarios, eventos y documentación están redactados en español, en cumplimiento con los requisitos del Trabajo Final - Módulo 2. Se asegura coherencia semántica con los nombres solicitados
Estudiante: Elisa Araya
Curso: ETH Kipu - Ethereum Developer Pack
Entrega: Trabajo Final - Módulo 2