Skip to content

Commit 9714f66

Browse files
committed
style: Improved readme.
1 parent 4cd7ff4 commit 9714f66

File tree

1 file changed

+32
-29
lines changed

1 file changed

+32
-29
lines changed

README.md

Lines changed: 32 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,43 +1,18 @@
1-
# GenLayer Solidity Challenge - Simplified Optimistic Consensus
2-
3-
> ⚠️ **SECURITY WARNING - PENDING CRITICAL FIXES**
4-
>
5-
> The following security issues remain unresolved due to time constraints:
6-
>
7-
> **DoS Protection - External calls in loops**
8-
> - Add MAX_VALIDATORS = 50 limits in loops
9-
> - Implement batch processing for multiple validators
10-
> - Circuit breakers for emergency pause
11-
>
12-
> **Enum Comparison Safety**
13-
> - Replace direct equality with explicit state checks
14-
> - Comprehensive state validation
15-
>
16-
> **Complete CEI Pattern**
17-
> - Move ALL events before external calls
18-
> - Verify order in _finalizeProposal() and slashValidator()
19-
>
20-
> **Edge Case Handling**
21-
> - Handle when insufficient validators available
22-
> - What happens if all validators are slashed
23-
> - Recovery mechanisms for inconsistent states
24-
>
25-
> **Parameter Validation**
26-
> - Verify valid ranges for SLASH_PERCENTAGE, CONSENSUS_THRESHOLD
27-
> - Prevent division by zero in reward distribution
28-
1+
# Simplified Optimistic Consensus
292
---
303

314
## Overview
325

33-
The system implements a **centralized state inbox** approach with **modular consensus mechanisms**, featuring:
6+
The system implements a **state inbox** approach with **modular consensus mechanisms**, featuring:
347

358
- **Centralized State**: `TransactionManager` as the single source of truth for all proposal states
369
- **Optimistic Execution**: Transactions are assumed valid unless challenged
3710
- **LLM Integration**: Mock LLM oracle for transaction validation
3811
- **Validator Staking**: Delegated Proof-of-Stake with individual validator contracts
3912
- **Dispute Resolution**: Economic challenge-response mechanism with slashing
4013

14+
All state, validations and challenges resolution will bubble-up to change the state into transaction manager that acts as an input box of transactions.
15+
4116
### System Architecture Diagram
4217

4318
```
@@ -82,6 +57,34 @@ The system implements a **centralized state inbox** approach with **modular cons
8257

8358
I acknowledge some errors found in REPORT file, please visit it in the root folder.
8459

60+
61+
> ⚠️ **SECURITY WARNING - PENDING CRITICAL FIXES**
62+
>
63+
> The following security issues remain unresolved due to time constraints:
64+
>
65+
> **DoS Protection - External calls in loops**
66+
> - Add MAX_VALIDATORS = 50 limits in loops
67+
> - Implement batch processing for multiple validators
68+
> - Circuit breakers for emergency pause
69+
>
70+
> **Enum Comparison Safety**
71+
> - Replace direct equality with explicit state checks
72+
> - Comprehensive state validation
73+
>
74+
> **Complete CEI Pattern**
75+
> - Move ALL events before external calls
76+
> - Verify order in _finalizeProposal() and slashValidator()
77+
>
78+
> **Edge Case Handling**
79+
> - Handle when insufficient validators available
80+
> - What happens if all validators are slashed
81+
> - Recovery mechanisms for inconsistent states
82+
>
83+
> **Parameter Validation**
84+
> - Verify valid ranges for SLASH_PERCENTAGE, CONSENSUS_THRESHOLD
85+
> - Prevent division by zero in reward distribution
86+
87+
8588
## Core Components
8689

8790
### 🎯 **TransactionManager** - *Central Orchestrator*

0 commit comments

Comments
 (0)