You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
mleku
24383ef1f4
Decompose handle-event.go into DDD domain services (v0.36.15)
Major refactoring of event handling into clean, testable domain services:
- Add pkg/event/validation: JSON hex validation, signature verification,
timestamp bounds, NIP-70 protected tag validation
- Add pkg/event/authorization: Policy and ACL authorization decisions,
auth challenge handling, access level determination
- Add pkg/event/routing: Event router registry with ephemeral and delete
handlers, kind-based dispatch
- Add pkg/event/processing: Event persistence, delivery to subscribers,
and post-save hooks (ACL reconfig, sync, relay groups)
- Reduce handle-event.go from 783 to 296 lines (62% reduction)
- Add comprehensive unit tests for all new domain services
- Refactor database tests to use shared TestMain setup
- Fix blossom URL test expectations (missing "/" separator)
- Add go-memory-optimization skill and analysis documentation
- Update DDD_ANALYSIS.md to reflect completed decomposition
Files modified:
- app/handle-event.go: Slim orchestrator using domain services
- app/server.go: Service initialization and interface wrappers
- app/handle-event-types.go: Shared types (OkHelper, result types)
- pkg/event/validation/*: New validation service package
- pkg/event/authorization/*: New authorization service package
- pkg/event/routing/*: New routing service package
- pkg/event/processing/*: New processing service package
- pkg/database/*_test.go: Refactored to shared TestMain
- pkg/blossom/http_test.go: Fixed URL format expectations
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
|
3 weeks ago |
| .. |
|
acl
|
Fix Blossom CORS headers and add root-level upload routes (v0.36.12)
|
3 weeks ago |
|
blossom
|
Decompose handle-event.go into DDD domain services (v0.36.15)
|
3 weeks ago |
|
database
|
Decompose handle-event.go into DDD domain services (v0.36.15)
|
3 weeks ago |
|
event
|
Decompose handle-event.go into DDD domain services (v0.36.15)
|
3 weeks ago |
|
find
|
Remove Dgraph, check hex field case, reject if any uppercase
|
1 month ago |
|
interfaces
|
Add fixed-size type support for IdPkTs and EventRef
|
3 weeks ago |
|
mode
|
Adjust ACL behavior for "none" mode and make query cache optional
|
1 month ago |
|
neo4j
|
Add fixed-size type support for IdPkTs and EventRef
|
3 weeks ago |
|
pid
|
Generalize PID controller as reusable library with abstract interfaces
|
1 month ago |
|
policy
|
Add ORLY_POLICY_PATH for custom policy file location
|
4 weeks ago |
|
protocol
|
Fix broken submodule and add import memory optimization plan
|
1 month ago |
|
ratelimit
|
Interim release: documentation updates and rate limiting improvements
|
1 month ago |
|
run
|
Implement PID-controlled adaptive rate limiting for database operations
|
1 month ago |
|
spider
|
add directory spider
|
2 months ago |
|
sync
|
Fix NIP-11 fetch URL scheme conversion for non-proxied relays
|
4 weeks ago |
|
utils
|
migrate to new nostr library
|
2 months ago |
|
version
|
Decompose handle-event.go into DDD domain services (v0.36.15)
|
3 weeks ago |
|
wasmdb
|
implement wasm/js specific database engine
|
1 month ago |