Tree:
951e98ca3e
imwald
imwald-v0.58.10
imwald-v0.58.5
main
v0.1.0
v0.10.0
v0.10.1
v0.10.2
v0.10.3
v0.10.4
v0.10.5
v0.11.0
v0.11.1
v0.11.2
v0.11.3
v0.12.0
v0.12.1
v0.12.2
v0.12.3
v0.13.0
v0.13.1
v0.13.2
v0.14.0
v0.14.1
v0.14.2
v0.14.3
v0.14.4
v0.15.0
v0.16.0
v0.16.1
v0.16.2
v0.16.3
v0.17.0
v0.17.1
v0.17.10
v0.17.11
v0.17.12
v0.17.13
v0.17.14
v0.17.15
v0.17.16
v0.17.17
v0.17.18
v0.17.2
v0.17.3
v0.17.4
v0.17.5
v0.17.6
v0.17.7
v0.17.8
v0.17.9
v0.18.0
v0.19.0
v0.19.1
v0.19.10
v0.19.2
v0.19.3
v0.19.4
v0.19.5
v0.19.6
v0.19.7
v0.19.8
v0.19.9
v0.2.0
v0.2.1
v0.20.0
v0.20.1
v0.20.2
v0.20.3
v0.20.4
v0.20.5
v0.20.6
v0.21.0
v0.21.1
v0.21.2
v0.21.3
v0.21.4
v0.22.0
v0.23.0
v0.23.1
v0.23.3
v0.23.4
v0.24.0
v0.24.1
v0.24.2
v0.24.3
v0.24.4
v0.24.5
v0.24.6
v0.24.7
v0.25.0
v0.25.1
v0.25.3
v0.25.4
v0.25.5
v0.25.6
v0.25.7
v0.26.0
v0.26.1
v0.26.2
v0.26.3
v0.26.4
v0.27.0
v0.27.1
v0.27.2
v0.27.3
v0.27.4
v0.27.5
v0.27.6
v0.27.7
v0.27.8
v0.27.9
v0.28.0
v0.28.1
v0.28.3
v0.29.0
v0.29.1
v0.29.10
v0.29.11
v0.29.12
v0.29.13
v0.29.14
v0.29.15
v0.29.16
v0.29.17
v0.29.18
v0.29.19
v0.29.2
v0.29.20
v0.29.3
v0.29.4
v0.29.6
v0.29.7
v0.29.8
v0.29.9
v0.3.0
v0.3.1
v0.3.2
v0.30.0
v0.30.1
v0.30.2
v0.30.3
v0.31.0
v0.31.1
v0.31.1-bump
v0.31.10
v0.31.11
v0.31.2
v0.31.3
v0.31.4
v0.31.5
v0.31.6
v0.31.7
v0.31.8
v0.31.9
v0.32.0
v0.32.1
v0.32.2
v0.32.3
v0.32.4
v0.32.5
v0.32.6
v0.32.7
v0.33.0
v0.33.1
v0.34.0
v0.34.1
v0.34.2
v0.34.3
v0.34.4
v0.34.5
v0.34.6
v0.34.7
v0.35.0
v0.35.1
v0.35.2
v0.35.3
v0.35.4
v0.35.5
v0.36.0
v0.36.1
v0.36.10
v0.36.11
v0.36.12
v0.36.13
v0.36.14
v0.36.15
v0.36.16
v0.36.17
v0.36.18
v0.36.19
v0.36.2
v0.36.20
v0.36.21
v0.36.22
v0.36.23
v0.36.3
v0.36.4
v0.36.5
v0.36.6
v0.36.7
v0.36.8
v0.36.9
v0.37.0
v0.37.1
v0.37.2
v0.37.3
v0.38.0
v0.38.1
v0.39.0
v0.39.1
v0.39.2
v0.39.3
v0.39.4
v0.4.0
v0.4.1
v0.4.2
v0.4.3
v0.4.4
v0.4.5
v0.4.6
v0.4.9
v0.40.0
v0.40.1
v0.41.0
v0.42.0
v0.43.0
v0.43.1
v0.44.0
v0.44.1
v0.44.2
v0.44.3
v0.44.4
v0.44.5
v0.44.6
v0.44.7
v0.46.0
v0.46.1
v0.46.2
v0.47.0
v0.47.1
v0.48.1
v0.48.10
v0.48.11
v0.48.12
v0.48.13
v0.48.14
v0.48.15
v0.48.8
v0.48.9
v0.49.0
v0.49.1
v0.49.2
v0.50.0
v0.50.1
v0.51.0
v0.52.0
v0.52.1
v0.52.10
v0.52.11
v0.52.12
v0.52.17
v0.52.2
v0.52.3
v0.52.4
v0.52.5
v0.52.6
v0.52.7
v0.52.8
v0.52.9
v0.53.0
v0.53.1
v0.54.0
v0.55.0
v0.55.10
v0.55.11
v0.55.4
v0.55.5
v0.55.6
v0.56.0
v0.56.1
v0.56.2
v0.56.3
v0.56.4
v0.56.5
v0.56.6
v0.56.8
v0.56.9
v0.57.0
v0.57.1
v0.57.2
v0.58.0
v0.58.1
v0.58.2
v0.58.3
v0.58.4
v0.58.5
v0.6.0
v0.6.1
v0.6.2
v0.6.3
v0.6.4
v0.7.1
v0.8.0
v0.8.1
v0.8.2
v0.8.3
v0.8.4
v0.8.5
v0.8.6
v0.8.7
v0.8.8
v0.8.9
v0.9.0
v0.9.1
v0.9.2
v0.9.3
v4.1.0
${ noResults }
4 Commits (951e98ca3e6068d90edb122b0cfbd2ec05cbcbef)
| Author | SHA1 | Message | Date |
|---|---|---|---|
|
|
9c231169d2
|
Complete DDD improvements: handlers, ACL injection, Rule decomposition
- Simplify HandleEvent to thin protocol adapter (~320 -> ~130 lines) - Create ingestion service for full event pipeline orchestration - Add specialkinds.go for special kind handler registration - Eliminate global ACL singleton with injectable Registry interface - Add ACLRegistry() accessor to Server for dependency injection - Decompose Rule value object into AccessControl, Constraints, TagValidationConfig sub-components for cleaner organization - Add LoggingSubscriber for domain event analytics - Update all policy tests for embedded struct initialization - Update DDD_ANALYSIS.md to 10/10 maturity score Files modified: - app/handle-event.go: Simplified to delegate to ingestion service - app/specialkinds.go: NEW - Special kind handler registration - app/server.go: Add aclRegistry field and ACLRegistry() accessor - pkg/interfaces/acl/acl.go: Add Registry interface - pkg/acl/acl.go: Add accessor methods for privatized fields - pkg/policy/policy.go: Decompose Rule into sub-value objects - pkg/policy/*_test.go: Update struct literals for embedded types - pkg/event/ingestion/service.go: Add ACLMode, special kinds support - pkg/event/processing/processing.go: Add domain event dispatcher - pkg/domain/events/subscribers/logging.go: NEW - Analytics subscriber - DDD_ANALYSIS.md: Update to 10/10 maturity score Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> |
4 months ago |
|
|
6523f0cd67
|
Implement DDD recommendations: domain errors, events, and services (v0.56.5)
- Add docs/GLOSSARY.md with 50+ ubiquitous language definitions - Add pkg/domain/errors/ with structured domain error types (validation, authorization, processing, policy, storage) and helper functions - Add pkg/domain/events/ with domain event dispatcher supporting sync/async publishing and 16 event types for system-wide notifications - Add pkg/event/specialkinds/ registry for handling special event kinds - Add pkg/event/ingestion/ service for orchestrating event processing pipeline - Strengthen aggregate boundaries with accessor methods and deprecation comments for ACL Registry, Server, and Listener - Update DDD_ANALYSIS.md to reflect current architecture (v0.56.4) Files modified: - docs/GLOSSARY.md: NEW - ubiquitous language glossary - pkg/domain/errors/errors.go: NEW - domain error types with 16 tests - pkg/domain/events/events.go: NEW - 16 domain event types - pkg/domain/events/dispatcher.go: NEW - event dispatcher with 10 tests - pkg/event/specialkinds/registry.go: NEW - special kind handler registry - pkg/event/ingestion/service.go: NEW - event processing orchestration - pkg/acl/acl.go: Add accessor methods (GetMode, GetACLByType, etc.) - pkg/acl/follows.go, managed.go, curating.go: Add Context() accessor - app/server.go: Add accessor methods (GetConfig, Database, IsAdmin, IsOwner) - app/listener.go: Add ServerContext, ServerConfig, ServerDatabase accessors - DDD_ANALYSIS.md: Update analysis for current architecture Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> |
4 months ago |
|
|
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> |
5 months ago |
|
|
c9a03db395
|
Fix Blossom CORS headers and add root-level upload routes (v0.36.12)
- Add proper CORS headers for Blossom endpoints including X-SHA-256, X-Content-Length, X-Content-Type headers required by blossom-client-sdk - Add root-level Blossom routes (/upload, /media, /mirror, /report, /list/) for clients like Jumble that expect Blossom at root - Export BaseURLKey from pkg/blossom for use by app handlers - Make blossomRootHandler return URLs with /blossom prefix so blob downloads work via the registered /blossom/ route - Remove Access-Control-Allow-Credentials header (not needed for * origin) - Add Access-Control-Expose-Headers for X-Reason and other response headers Files modified: - app/blossom.go: Add blossomRootHandler, use exported BaseURLKey - app/server.go: Add CORS handling for blossom paths, register root routes - pkg/blossom/server.go: Fix CORS headers, export BaseURLKey - pkg/blossom/utils.go: Minor formatting - pkg/version/version: Bump to v0.36.12 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> |
5 months ago |