Skip to content

Commit cb86c8b

Browse files
committed
feat(protocol): add validation tooling and docs
1 parent 25b27fb commit cb86c8b

29 files changed

+1102
-75
lines changed
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
name: Validate Schemas
2+
3+
on:
4+
push:
5+
branches: [main]
6+
pull_request:
7+
8+
jobs:
9+
validate:
10+
runs-on: ubuntu-latest
11+
steps:
12+
- uses: actions/checkout@v4
13+
- name: Setup Node
14+
uses: actions/setup-node@v4
15+
with:
16+
node-version: '20'
17+
cache: 'npm'
18+
- name: Install dependencies
19+
run: npm ci
20+
- name: Run schema validation
21+
run: npm test

CHANGELOG.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1111
- Smart contract integration planning in RFC-004
1212
- Multi-material bundle specification draft
1313
- WebSocket support for real-time updates
14+
- Schema validation script and CI workflow
15+
- Example JSON payloads for schemas
16+
- RFC template and RFC 0004 draft
17+
- Documentation: glossary, FAQ, implementation guide, security guides
1418

1519
### Changed
1620
- Clarified LoopSignal voting weight calculations
21+
- Updated project structure documentation
22+
- Adjusted README to remove unverified deployment claims
23+
- Updated maintainer contact details
1724

1825
### Deprecated
1926
- Nothing yet
@@ -23,6 +30,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
2330

2431
### Fixed
2532
- Typo in MaterialDNA regex pattern example
33+
- Repaired truncated MaterialDNA schema JSON
34+
- Corrected LoopCost reference implementation variables
35+
- Aligned specification examples with schema-required fields and types
2636

2737
### Security
2838
- Nothing yet

CODE_OF_CONDUCT.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ Project maintainers will remove, edit, or reject contributions that violate this
2626

2727
## Reporting
2828

29-
Report violations to: conduct@local-loop.io
29+
Report violations to: alphinctom@gmail.com (GitHub: @alpha912)
3030

3131
## Attribution
3232

CONTRIBUTING.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,6 @@ See rfcs/0000-template.md for the RFC template.
6464

6565
## ❓ Questions?
6666

67-
- Discord: [#development](https://discord.gg/localloop)
68-
- Forum: [forum.local-loop.io](https://forum.local-loop.io)
67+
- GitHub Discussions or email: alphinctom@gmail.com
6968

7069
Thank you for helping build the future of circular economy! 🌍

LICENSE

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
MIT License
22

3-
Copyright (c) 2025 local-loop-io
3+
Copyright (c) 2025-2026 Alphin Tom
44

55
Permission is hereby granted, free of charge, to any person obtaining a copy
66
of this software and associated documentation files (the "Software"), to deal

PROJECT_STRUCTURE.md

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,11 @@ loop-protocol/
88
├── CODE_OF_CONDUCT.md
99
├── SECURITY.md
1010
├── CHANGELOG.md
11+
├── PROJECT_STRUCTURE.md
12+
├── package.json
13+
├── package-lock.json
14+
├── scripts/
15+
│ └── validate-schemas.js
1116
├── schemas/
1217
│ ├── README.md
1318
│ ├── material-dna.schema.json
@@ -25,18 +30,15 @@ loop-protocol/
2530
├── rfcs/
2631
│ ├── README.md
2732
│ ├── 0000-template.md
28-
│ ├── 0001-material-categories.md
29-
│ ├── 0002-penalty-calculation.md
30-
│ └── 0003-federation-discovery.md
33+
│ └── 0004-smart-contract-integration.md
3134
├── docs/
3235
│ ├── glossary.md
3336
│ ├── faq.md
34-
│ └── implementation-guide.md
37+
│ ├── implementation-guide.md
38+
│ ├── security-guide.md
39+
│ ├── secure-coding.md
40+
│ └── incident-response.md
3541
└── .github/
36-
├── ISSUE_TEMPLATE/
37-
│ ├── bug_report.md
38-
│ ├── feature_request.md
39-
│ └── rfc_proposal.md
4042
└── workflows/
4143
└── validate-schemas.yml
4244
```

README.md

Lines changed: 19 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,8 @@ LOOP Protocol enables cities to create federated circular economy networks while
2222

2323
### For Cities
2424
```bash
25-
# Deploy a LOOP node in minutes
26-
docker run -p 8080:8080 localloop/node:latest
25+
# Prototype-only example (no official images yet)
26+
# docker run -p 8080:8080 localloop/node:latest
2727
```
2828

2929
### For Developers
@@ -43,6 +43,13 @@ const material = await loop.registerMaterial({
4343
});
4444
```
4545

46+
#### Schema Validation
47+
48+
```bash
49+
npm install
50+
npm test
51+
```
52+
4653
## 📋 Specification
4754

4855
Read the full LOOP Protocol Specification v0.1
@@ -57,21 +64,13 @@ Read the full LOOP Protocol Specification v0.1
5764

5865
## 🏗️ Implementations
5966

60-
|Language|Repository|Status|
61-
|---|---|---|
62-
|JavaScript/Node.js|[loop-node-js](https://github.com/local-loop-io/loop-node-js)|Reference Implementation|
63-
|Python|[loop-node-py](https://github.com/local-loop-io/loop-node-py)|In Development|
64-
|Rust|[loop-node-rust](https://github.com/local-loop-io/loop-node-rust)|Planned|
67+
Implementations are exploratory and may not be publicly available yet. If you
68+
are building one, open an issue or RFC so we can link it here.
6569

6670
## 🧪 Test Network
6771

68-
Join our test network to experiment:
69-
70-
- `test-munich.loop` - Munich test node
71-
- `test-berlin.loop` - Berlin test node
72-
- `test-vienna.loop` - Vienna test node
73-
74-
Access the [Network Explorer](https://explorer.local-loop.io)
72+
No public test network is available yet. This is an early, low‑TRL concept and the
73+
reference materials here are for specification and research only.
7574

7675
## 🤝 Contributing
7776

@@ -86,10 +85,8 @@ We welcome contributions! See CONTRIBUTING.md for guidelines.
8685

8786
## 📚 Resources
8887

89-
- **Documentation**: [docs.local-loop.io](https://docs.local-loop.io)
90-
- **Forum**: [forum.local-loop.io](https://forum.local-loop.io)
91-
- **Blog**: [blog.local-loop.io](https://blog.local-loop.io)
92-
- **Twitter**: [@localloop_io](https://twitter.com/localloop_io)
88+
Public resources are still being assembled. For now, use GitHub Discussions and
89+
the repository documentation.
9390

9491
## 🎯 Roadmap
9592

@@ -100,14 +97,14 @@ We welcome contributions! See CONTRIBUTING.md for guidelines.
10097
- ✅ Test network
10198
- 🔄 First pilot cities
10299

103-
### v0.2 (Q3 2025)
100+
### v0.2 (Planned)
104101

105102
- Smart contract integration
106103
- Advanced routing algorithms
107104
- Mobile SDKs
108105
- Production deployments
109106

110-
### v1.0 (Q1 2026)
107+
### v1.0 (Planned)
111108

112109
- Stable protocol
113110
- 100+ cities connected
@@ -116,8 +113,8 @@ We welcome contributions! See CONTRIBUTING.md for guidelines.
116113

117114
## 📊 Adoption
118115

119-
- **Test Network**: 3 nodes, 1,247 materials tracked
120-
- **Pilot Cities**: Munich, Freiburg (starting June 2025)
116+
There are no public pilots or deployments at this time. We are actively seeking
117+
collaboration partners and research contributors.
121118
- **Development**: 12 contributors, 4 implementations
122119

123120
## ⚖️ License

SECURITY.md

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,7 @@ The LOOP Protocol team takes security seriously. We appreciate your efforts to r
99
**DO NOT** create public GitHub issues for security vulnerabilities.
1010

1111
Please report security vulnerabilities by emailing:
12-
- **security@local-loop.io**
13-
- GPG Key: `https://local-loop.io/security-pgp.asc`
14-
- Key fingerprint: `XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX`
12+
- **alphinctom@gmail.com** (GitHub: @alpha912)
1513

1614
### What to Include
1715

@@ -184,11 +182,10 @@ We thank the following security researchers for responsibly disclosing vulnerabi
184182

185183
## 📞 Contact
186184

187-
- **Security Issues**: security@local-loop.io
188-
- **General Support**: support@local-loop.io
189-
- **Bug Bounty Program**: https://local-loop.io/security/bug-bounty
185+
- **Security Issues**: alphinctom@gmail.com
186+
- **General Support**: alphinctom@gmail.com
190187

191188
---
192189

193-
*Last Updated: May 2025*
194-
*Next Review: August 2025*
190+
*Last Updated: December 2025*
191+
*Next Review: March 2026*

0 commit comments

Comments
 (0)