5 Commits

Author SHA1 Message Date
geoffsee
0578496474 add backlog document 2025-06-16 12:43:34 -04:00
geoffsee
72206f8704 update readme and remove bridge network 2025-06-16 12:08:46 -04:00
geoffsee
7c379d89c7 use triple slashes for websocket, local only mode 2025-06-16 11:55:07 -04:00
Geoff Seemueller
ae50076cdb Merge pull request #4 from seemueller-io/network-establishment
Network establishment
2025-06-15 20:09:13 -04:00
Geoff Seemueller
d4d83d302d Merge pull request #3 from seemueller-io/dockerize
dockerize
2025-06-15 16:16:33 -04:00
4 changed files with 180 additions and 8 deletions

174
BACKLOG.md Normal file
View File

@@ -0,0 +1,174 @@
# gsio-net Backlog
This document outlines the current tasks, planned features, known issues, and potential improvements for the GSIO-Net project. Items are prioritized based on their importance and alignment with the project's goals. Subject to change without notice.
## Current Pending Tasks
1. **User Personas Development** (Priority: High)
- ~~Hypothesize personas~~
- ~~Complete the PERSONAS_BLUEPRINT.md document with detailed user profiles (TinyTroupe)~~
- ~~Validate personas with stakeholders~~
- Run Tinytroupe on existing documentation
- ~~Finalize personas~~
2. **Project Documentation** (Priority: High)
- ~~Enhance README.md with comprehensive project description, architecture overview, and setup instructions~~
- Document existing Rust code
- Complete project document blueprints
- ~~[PROBLEM_STATEMENT_BLUEPRINT.md](project/PROBLEM_STATEMENT_BLUEPRINT.md)~~
- ~~[HUMAN_FACTORS_BLUEPRINT.md](project/HUMAN_FACTORS_BLUEPRINT.md)~~
- ~~[PERSONAS_BLUEPRINT.md](project/PERSONAS_BLUEPRINT.md)~~
- ~~[SECURITY_BLUEPRINT.md](project/SECURITY_BLUEPRINT.md)~~
- ~~[STORY_MAPPING_BLUEPRINT.md](project/STORY_MAPPING_BLUEPRINT.md)~~
- ~~[CRITIQUE.md](project/CRITIQUE.md)~~
### Trust & Provenance Backlog
1. **Ledger Persistence** (Priority: Critical)
- Implement persistent storage for ledger entries
- Add data recovery mechanisms
- Ensure data integrity across restarts
2. **Enhanced Validation** (Priority: High)
- Implement multi-signature validation for ledger entries
- Add cryptographic verification of entry content
- Create validation rules engine
3. **Audit Trail** (Priority: Medium)
- Implement comprehensive audit logging
- Create audit report generation
- Add tamper-evident audit trails
### Edge-Cloud Performance Backlog
1. **Advanced P2P Networking** (Priority: High)
- Complete Iroh integration for improved peer discovery
- Implement NAT traversal techniques
- Add bandwidth optimization for constrained environments
2. **Edge Optimization** (Priority: High)
- Implement local-first operations
- Add offline operation support
- Create intelligent sync strategies for intermittent connectivity
3. **Performance Monitoring** (Priority: Medium)
- Add comprehensive metrics collection
- Implement performance dashboards
- Create alerting for performance degradation
### Autonomous System Governance Backlog
1. **Consensus Mechanism** (Priority: Critical)
- Implement robust consensus algorithm
- Add conflict resolution strategies
- Create governance rules for network operation
2. **Explainable Operations** (Priority: High)
- Add operation tracing
- Implement decision logging
- Create visualization tools for system behavior
3. **Controlled Rollback** (Priority: Medium)
- Implement safe rollback mechanisms
- Add checkpoint system
- Create recovery procedures
### Regulatory Compliance Backlog
1. **Policy Engine** (Priority: High)
- Implement policy-as-code framework
- Add jurisdiction-aware rule processing
- Create compliance reporting tools
2. **Data Privacy** (Priority: High)
- Implement data encryption at rest and in transit
- Add access control mechanisms
- Create data minimization strategies
3. **Automated Reporting** (Priority: Medium)
- Implement report generation for compliance requirements
- Add scheduled reporting
- Create audit-ready data exports
### Human-System Integration Backlog
1. **Client Libraries** (Priority: High)
- Complete gsio-client implementation
- Add language-specific SDKs
- Create comprehensive client documentation
2. **Developer Tools** (Priority: Medium)
- Implement CLI tools for network interaction
- Add development environment setup scripts
- Create debugging and monitoring tools
3. **User Interfaces** (Priority: Medium)
- Implement admin dashboard
- Add visualization tools for network activity
- Create user-friendly client applications
## Critical Issue Backlog
1. **Ledger Implementation** (Priority: High)
- In-memory only storage lacks persistence
- Limited validation (only checks hash correctness)
- No conflict resolution mechanism
2. **P2P Networking** (Priority: High)
- Limited error handling and recovery
- No explicit security measures for node authentication
- Basic synchronization mechanism (full ledger sync)
3. **Relay Component** (Priority: Medium)
- Very basic implementation (echo server only)
- No integration with ledger or p2p components
- No security measures
- iroh ecosystem lock-in
## Improvements Backlog
1. **Architecture** (Priority: High)
- Create detailed architecture documentation
- Implement modular plugin system
- Add more service discovery mechanisms
2. **Testing** (Priority: High)
- Increase test coverage
- Add integration tests
- Implement performance benchmarks
3. **Security** (Priority: Critical)
- Conduct security audit
- Implement secure node authentication
- Add encryption for all communications
4. **Scalability** (Priority: Medium)
- Optimize for high-volume ledger operations
- Implement sharding for large networks
- Add load balancing for relay nodes
5. **Usability** (Priority: Medium)
- Improve error messages and handling
- Add comprehensive logging
- Create user-friendly documentation
## Roadmap
### Phase 1: Networking + Edge
- Ledger persistence implementation
- Enhanced validation
- Advanced P2P networking
- Edge optimization
### Phase 2: Autonomy + UX
- Consensus mechanism
- Explainable operations
- Client libraries
- Developer tools
### Phase 3: Regulation + Cohesion
- Policy engine
- Data privacy
- Automated reporting
- System integration and cohesion

View File

@@ -4,12 +4,11 @@
Warning: This API is unstable.
## run a network
```yaml
```shell
docker compose build
docker compose up
```
## License
This project is licensed under the MIT License - see the LICENSE file for details.
This project is licensed under the MIT License - See [LICENSE](./LICENSE) for details.

View File

@@ -373,7 +373,6 @@ async fn main() -> Result<(), Box<dyn std::error::Error>> {
let endpoint = Endpoint::builder().discovery_n0()
.relay_conn_protocol(iroh_relay::http::Protocol::Websocket)
.discovery_local_network()
.discovery_dht()
.relay_mode(RelayMode::Custom(relays)).bind().await?;
// Concrete store type inferred from the builder
let blobs = Arc::new(Blobs::memory().build(&endpoint));

View File

@@ -19,7 +19,7 @@ services:
dockerfile: Dockerfile
container_name: gsio-node1
environment:
RELAY_ADDRESS: "ws://gsio-relay:3340"
RELAY_ADDRESS: "ws:///gsio-relay:3340"
ports:
- "3001:3000" # Map to different host ports to avoid conflicts
volumes:
@@ -41,7 +41,7 @@ services:
dockerfile: Dockerfile
container_name: gsio-node2
environment:
RELAY_ADDRESS: "ws://gsio-relay:3340"
RELAY_ADDRESS: "ws:///gsio-relay:3340"
ports:
- "3002:3000"
volumes:
@@ -63,7 +63,7 @@ services:
dockerfile: Dockerfile
container_name: gsio-node3
environment:
RELAY_ADDRESS: "ws://gsio-relay:3340"
RELAY_ADDRESS: "ws:///gsio-relay:3340"
ports:
- "3003:3000"
volumes:
@@ -87,4 +87,4 @@ volumes:
# Define a custom network for the nodes to communicate
networks:
gsio-network:
driver: bridge
name: gsio-network