Skip to content

Conversation

@char2cs
Copy link
Member

@char2cs char2cs commented Dec 24, 2025

Description

WIP: Event sourcing mechanism scaffolding for Sprint 5 tasks.

Type of Change

  • ✨ New feature (feature/*)

Related Issues

Part of Sprint 5 - Event Sourcing Implementation

Changes Made

  • Event sourcing core infrastructure (EventStore, EventBus, EventStream)
  • Arrow async/v1 events, commands, and handlers scaffolding
  • Comprehensive test coverage (91.9%)
  • Fixed event payload serialization

Breaking Changes

  • This PR introduces breaking changes

Checklist

  • Code follows Clean Architecture principles
  • Code follows project style guidelines
  • Self-review completed
  • Comments added for complex logic
  • All documentation updated in ./docs/ folder
  • Tests pass locally (make test)
  • Coverage requirements met (make test-coverage)
  • No linting errors (make lint)
  • Security scan passes (make security)
  • Branch name follows convention (enhancement/, feature/, fix/, hotfix/, release/*)

Screenshots/Logs (if applicable)

…entities

This commit introduces a new method, Where, to the RepositoryInterface, allowing for flexible querying of entities based on a provided query string and arguments. The implementation in the Repository struct utilizes GORM to execute the query and return the results, enhancing the database interaction capabilities.
…proved clarity and functionality

This commit refactors the Builder and EventSourcing structures to enhance their clarity and functionality. The Builder now supports SQLite and memory stores, and the EventSourcing structure has been simplified to remove generic type parameters. Additionally, the EventBus interface has been integrated into the contracts package, and several unused files related to event handling have been removed, streamlining the codebase. This change improves the overall architecture and maintainability of the eventsourcing module.
This commit introduces the `available_after` field to the arrow actions in the `arrow.yaml` template. The `update`, `uninstall`, `execute`, and `validate` methods now specify their prerequisites, enhancing the clarity of action dependencies and improving the overall functionality of the arrow management process.
This commit adjusts the indentation of comments in the `arrow.yaml` template to ensure consistent formatting and improve readability. The changes enhance the clarity of the schema definition for the arrow package.
This commit adds localized titles for various actions in the `arrow.yaml` template, improving the user experience by providing multilingual support. The changes include titles for install, update, uninstall, execute, and validate methods in English, Spanish, and Portuguese (Brazil), ensuring better accessibility for users across different languages.
This commit deletes several outdated documentation files, including architecture overview, branching model, contributing guide, development setup, domain models, git workflow, project structure, REST API documentation, testing workflow, and wiki home. The removal of these files helps streamline the documentation and ensures that only relevant and up-to-date information is available for contributors and developers.
…emove unused components

This commit refactors the event sourcing module by restructuring the Builder and EventSourcing components for improved clarity and functionality. It introduces a new event bus implementation, integrates idempotency handling, and removes several unused files and interfaces related to event handling. Additionally, the ArrowsRepository is updated to utilize the new event sourcing structure, enhancing the overall architecture and maintainability of the codebase.
This commit removes the unused `github.com/stretchr/objx` dependency from the `go.mod` and `go.sum` files, streamlining the project's dependency management and reducing potential security vulnerabilities associated with unused packages. Additionally, it updates the event handling methods in the API and middleware layers for improved error logging consistency.
This commit introduces the `github.com/go-playground/validator/v10` dependency to the `go.mod` file, enhancing the project's validation capabilities. Additionally, it removes an unused newline in the `errs.go` file and deletes several obsolete files related to event sourcing, streamlining the codebase and improving maintainability.
This commit modifies the error logging in the WatcherRecovery middleware to use formatted strings for better clarity. Additionally, it updates the AddRequest structure by adding a new `step` field, ensuring that it is initialized properly. The AddRequestedEvent interface is also streamlined by removing the unused `WithNamespace` method, enhancing the overall code maintainability and clarity.
@char2cs char2cs self-assigned this Dec 24, 2025
@char2cs char2cs added the showstopper An bug that is so big, that makes Quiver totally unstable; Highest priority to solve label Dec 24, 2025
@char2cs char2cs linked an issue Dec 24, 2025 that may be closed by this pull request
10 tasks
@char2cs char2cs added this to Quiver Dec 24, 2025
@char2cs char2cs moved this to PR review in Quiver Dec 24, 2025
This commit modifies the initialization of the `step` field in the AddRequest structure from 0 to 1. This change ensures that the AddRequest starts with the correct step value, improving the functionality of the arrow command handling.
@github-actions

This comment was marked as outdated.

This commit adds deferred calls to close event sourcing resources in multiple test cases, ensuring proper cleanup after tests are executed. This change enhances test reliability and prevents potential resource leaks during testing.
This commit cleans up the event sourcing test cases by removing unnecessary newlines, enhancing code readability without altering functionality. This minor adjustment contributes to maintaining a clean and consistent codebase.
@github-actions
Copy link

📊 Test Coverage Report

Total Coverage: 90.8%
Threshold: 90%
Status: PASSED

📋 View Detailed Report
github.com/rabbytesoftware/quiver/cmd/quiver/main.go:11:						main				0.0%
github.com/rabbytesoftware/quiver/internal/api/api.go:24:						NewAPI				90.9%
github.com/rabbytesoftware/quiver/internal/api/api.go:50:						Run				0.0%
github.com/rabbytesoftware/quiver/internal/api/api.go:67:						SetupMiddleware			100.0%
github.com/rabbytesoftware/quiver/internal/api/api.go:72:						SetupRoutes			100.0%
github.com/rabbytesoftware/quiver/internal/api/middleware/logger.go:12:					WatcherLogger			100.0%
github.com/rabbytesoftware/quiver/internal/api/middleware/logger.go:61:					WatcherRecovery			100.0%
github.com/rabbytesoftware/quiver/internal/api/v1/controllers/arrows/routes.go:8:			SetupRoutes			0.0%
github.com/rabbytesoftware/quiver/internal/api/v1/controllers/health/health.go:14:			NewHealthHandler		100.0%
github.com/rabbytesoftware/quiver/internal/api/v1/controllers/health/health.go:22:			SetupRoutes			100.0%
github.com/rabbytesoftware/quiver/internal/api/v1/controllers/health/health.go:26:			Handler				100.0%
github.com/rabbytesoftware/quiver/internal/api/v1/controllers/quivers/routes.go:8:			SetupRoutes			0.0%
github.com/rabbytesoftware/quiver/internal/api/v1/controllers/system/routes.go:8:			SetupRoutes			0.0%
github.com/rabbytesoftware/quiver/internal/api/v1/routes.go:12:						SetupRoutes			100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/commands/add_request.go:30:			NewAddRequest			100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/commands/add_request.go:43:			Validate			83.3%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/commands/add_request.go:58:			ToEvent				100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/events/add_failed.go:37:			NewAddFailedEvent		100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/events/add_failed.go:41:			WithArrowNamespace		100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/events/add_failed.go:48:			WithErrorCode			100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/events/add_failed.go:55:			WithErrorMessage		100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/events/add_failed.go:62:			WithStep			100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/events/add_failed.go:69:			Build				100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/events/add_requested.go:35:			NewAddRequestedEvent		100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/events/add_requested.go:39:			WithArrowNamespace		100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/events/add_requested.go:46:			WithPath			100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/events/add_requested.go:53:			WithForceAdd			100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/events/add_requested.go:60:			WithStep			100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/events/add_requested.go:67:			Build				100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/events/add_succeeded.go:32:			NewAddSucceededEvent		100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/events/add_succeeded.go:36:			WithArrowNamespace		100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/events/add_succeeded.go:43:			WithArrow			100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/events/add_succeeded.go:50:			WithStep			100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/events/add_succeeded.go:57:			Build				100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/handlers/cqrs.go:35:				NewArrowView			100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/handlers/cqrs.go:39:				Get				100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/handlers/cqrs.go:46:				List				100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/handlers/cqrs.go:52:				Add				100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/handlers/cqrs.go:60:				Update				100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/handlers/cqrs.go:67:				Remove				100.0%
github.com/rabbytesoftware/quiver/internal/core/config/config.go:63:					Get				63.6%
github.com/rabbytesoftware/quiver/internal/core/config/config.go:82:					GetNetbridge			100.0%
github.com/rabbytesoftware/quiver/internal/core/config/config.go:86:					GetArrows			100.0%
github.com/rabbytesoftware/quiver/internal/core/config/config.go:90:					GetAPI				100.0%
github.com/rabbytesoftware/quiver/internal/core/config/config.go:94:					GetDatabase			100.0%
github.com/rabbytesoftware/quiver/internal/core/config/config.go:98:					GetWatcher			100.0%
github.com/rabbytesoftware/quiver/internal/core/config/config.go:102:					GetConfigPath			100.0%
github.com/rabbytesoftware/quiver/internal/core/config/config.go:106:					ConfigExists			100.0%
github.com/rabbytesoftware/quiver/internal/core/config/config.go:112:					getDefaultConfig		80.0%
github.com/rabbytesoftware/quiver/internal/core/config/config.go:150:					resetForTesting			100.0%
github.com/rabbytesoftware/quiver/internal/core/core.go:22:						Init				100.0%
github.com/rabbytesoftware/quiver/internal/core/core.go:30:						GetMetadata			100.0%
github.com/rabbytesoftware/quiver/internal/core/core.go:34:						GetConfig			100.0%
github.com/rabbytesoftware/quiver/internal/core/core.go:38:						GetWatcher			100.0%
github.com/rabbytesoftware/quiver/internal/core/database/database.go:10:				NewDatabase			100.0%
github.com/rabbytesoftware/quiver/internal/core/database/repository/repository.go:23:			NewRepository			76.9%
github.com/rabbytesoftware/quiver/internal/core/database/repository/repository.go:56:			Get				100.0%
github.com/rabbytesoftware/quiver/internal/core/database/repository/repository.go:66:			GetByID				100.0%
github.com/rabbytesoftware/quiver/internal/core/database/repository/repository.go:80:			Create				100.0%
github.com/rabbytesoftware/quiver/internal/core/database/repository/repository.go:90:			Update				100.0%
github.com/rabbytesoftware/quiver/internal/core/database/repository/repository.go:100:			Delete				100.0%
github.com/rabbytesoftware/quiver/internal/core/database/repository/repository.go:110:			Exists				100.0%
github.com/rabbytesoftware/quiver/internal/core/database/repository/repository.go:121:			Count				100.0%
github.com/rabbytesoftware/quiver/internal/core/database/repository/repository.go:131:			Where				0.0%
github.com/rabbytesoftware/quiver/internal/core/database/repository/repository.go:143:			Close				66.7%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:11:					Throw				100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:23:					Error				100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:27:					Success				100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:31:					Created				100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:35:					Accepted			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:39:					NonAuthoritativeInformation	100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:43:					NoContent			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:47:					ResetContent			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:51:					PartialContent			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:55:					MultiStatus			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:59:					AlreadyReported			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:63:					IMUsed				100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:68:					InvalidRequest			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:72:					Unauthorized			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:76:					PaymentRequired			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:80:					Forbidden			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:84:					NotFound			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:88:					MethodNotAllowed		100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:92:					NotAcceptable			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:96:					ProxyAuthenticationRequired	100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:100:					RequestTimeout			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:104:					Conflict			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:108:					Gone				100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:112:					LengthRequired			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:116:					PreconditionFailed		100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:120:					PayloadTooLarge			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:124:					URITooLong			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:128:					UnsupportedMediaType		100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:132:					RangeNotSatisfiable		100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:136:					ExpectationFailed		100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:140:					ImATeapot			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:144:					MisdirectedRequest		100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:148:					UnprocessableEntity		100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:152:					Locked				100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:156:					FailedDependency		100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:160:					TooEarly			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:164:					UpgradeRequired			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:168:					PreconditionRequired		100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:172:					TooManyRequests			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:176:					RequestHeaderFieldsTooLarge	100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:180:					UnavailableForLegalReasons	100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:185:					InternalServerError		100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:189:					NotImplemented			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:193:					BadGateway			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:197:					ServiceUnavailable		100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:201:					GatewayTimeout			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:205:					HTTPVersionError		100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:209:					VariantAlsoNegotiates		100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:213:					InsufficientStorage		100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:217:					LoopDetected			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:221:					NotExtended			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:225:					NetworkAuthenticationRequired	100.0%
github.com/rabbytesoftware/quiver/internal/core/es/builder.go:16:					New				100.0%
github.com/rabbytesoftware/quiver/internal/core/es/builder.go:20:					WithSQLiteStore			80.0%
github.com/rabbytesoftware/quiver/internal/core/es/builder.go:32:					WithMemoryBus			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/builder.go:37:					Build				100.0%
github.com/rabbytesoftware/quiver/internal/core/es/bus/memory.go:23:					NewMemoryBus			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/bus/memory.go:29:					Publish				100.0%
github.com/rabbytesoftware/quiver/internal/core/es/bus/memory.go:53:					Subscribe			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/event/event.go:68:					NewEvent			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/event/event.go:76:					WithAggregateID			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/event/event.go:83:					WithAggregateType		100.0%
github.com/rabbytesoftware/quiver/internal/core/es/event/event.go:90:					WithAggregateVersion		100.0%
github.com/rabbytesoftware/quiver/internal/core/es/event/event.go:97:					WithEventType			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/event/event.go:104:					WithEventVersion		100.0%
github.com/rabbytesoftware/quiver/internal/core/es/event/event.go:111:					WithIdempotency			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/event/event.go:118:					WithParentID			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/event/event.go:125:					WithMetadata			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/event/event.go:132:					WithPayload			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/event/event.go:139:					Build				100.0%
github.com/rabbytesoftware/quiver/internal/core/es/eventsourcing.go:19:					Execute				72.7%
github.com/rabbytesoftware/quiver/internal/core/es/eventsourcing.go:46:					Publish				66.7%
github.com/rabbytesoftware/quiver/internal/core/es/eventsourcing.go:64:					AggregateExists			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/eventsourcing.go:71:					HasEventType			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/eventsourcing.go:79:					GetEvents			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/eventsourcing.go:87:					GetEventStream			75.0%
github.com/rabbytesoftware/quiver/internal/core/es/eventsourcing.go:100:				Subscribe			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/eventsourcing.go:107:				Close				100.0%
github.com/rabbytesoftware/quiver/internal/core/es/store/sqlite.go:31:					TableName			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/store/sqlite.go:39:					NewSQLiteStore			75.0%
github.com/rabbytesoftware/quiver/internal/core/es/store/sqlite.go:53:					Append				71.4%
github.com/rabbytesoftware/quiver/internal/core/es/store/sqlite.go:70:					GetByAggregate			80.0%
github.com/rabbytesoftware/quiver/internal/core/es/store/sqlite.go:91:					AggregateExists			75.0%
github.com/rabbytesoftware/quiver/internal/core/es/store/sqlite.go:103:					HasEventType			75.0%
github.com/rabbytesoftware/quiver/internal/core/es/store/sqlite.go:116:					eventToRow			80.0%
github.com/rabbytesoftware/quiver/internal/core/es/store/sqlite.go:145:					rowToEvent			75.0%
github.com/rabbytesoftware/quiver/internal/core/es/store/sqlite.go:172:					Close				100.0%
github.com/rabbytesoftware/quiver/internal/core/es/store/typed.go:11:					GetByAggregate			81.2%
github.com/rabbytesoftware/quiver/internal/core/es/stream/stream.go:11:					NewEventStream			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/stream/stream.go:19:					HasEventType			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/stream/stream.go:30:					GetEvents			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/stream/stream.go:34:					Len				100.0%
github.com/rabbytesoftware/quiver/internal/core/es/stream/stream.go:38:					GetLatestVersion		100.0%
github.com/rabbytesoftware/quiver/internal/core/es/utils.go:5:						toAnyEvent			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/config/config.go:20:				Default				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/config/config.go:37:				WithHTTPClient			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/config/config.go:45:				WithMaxMemorySize		100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/config/config.go:53:				WithBufferSize			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/errors/errors.go:11:				Error				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/errors/errors.go:18:				Unwrap				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/errors/errors.go:22:				Op				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/errors/errors.go:33:				NotFound			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/errors/errors.go:41:				Unsupported			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:14:					getStrategy			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:27:					GetInfo				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:35:					Exists				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:43:					IsDir				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:51:					IsFile				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:59:					Read				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:67:					ReadStream			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:75:					Write				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:84:					WriteStream			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:93:					Append				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:102:					List				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:110:					Mkdir				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:119:					MkdirAll			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:128:					Remove				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:136:					RemoveAll			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:144:					Copy				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:152:					Move				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:160:					Rename				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:168:					Chmod				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:177:					Chown				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:186:					Download			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:195:					DownloadStream			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:204:					Fetch				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:212:					Validate			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:20:				NewLocal			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:26:				GetInfo				90.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:44:				Exists				85.7%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:56:				IsDir				85.7%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:69:				IsFile				85.7%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:82:				Read				83.3%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:104:				ReadStream			78.6%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:128:				Write				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:152:				WriteStream			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:185:				Append				90.9%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:205:				List				88.2%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:237:				Mkdir				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:251:				MkdirAll			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:265:				Remove				80.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:292:				RemoveAll			77.8%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:308:				Copy				93.3%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:333:				Move				83.3%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:374:				Rename				80.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:391:				Chmod				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:405:				Chown				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:420:				Download			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:424:				DownloadStream			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:428:				Fetch				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:432:				Validate			87.5%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:22:				NewRemote			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:29:				doRequest			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:43:				GetInfo				66.7%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:99:				Exists				80.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:109:				IsDir				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:113:				IsFile				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:117:				Read				0.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:121:				ReadStream			85.7%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:135:				Write				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:139:				WriteStream			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:143:				Append				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:147:				List				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:151:				Mkdir				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:155:				MkdirAll			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:159:				Remove				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:163:				RemoveAll			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:167:				Copy				81.2%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:196:				Move				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:200:				Rename				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:204:				Chmod				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:208:				Chown				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:212:				Download			76.9%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:279:				DownloadStream			85.7%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:293:				Fetch				83.3%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:318:				Validate			75.0%
github.com/rabbytesoftware/quiver/internal/core/metadata/metadata.go:48:				Get				83.3%
github.com/rabbytesoftware/quiver/internal/core/metadata/metadata.go:60:				GetVersion			100.0%
github.com/rabbytesoftware/quiver/internal/core/metadata/metadata.go:64:				GetVersionCodename		100.0%
github.com/rabbytesoftware/quiver/internal/core/metadata/metadata.go:68:				GetName				100.0%
github.com/rabbytesoftware/quiver/internal/core/metadata/metadata.go:72:				GetDescription			100.0%
github.com/rabbytesoftware/quiver/internal/core/metadata/metadata.go:76:				GetAuthor			100.0%
github.com/rabbytesoftware/quiver/internal/core/metadata/metadata.go:80:				GetURL				100.0%
github.com/rabbytesoftware/quiver/internal/core/metadata/metadata.go:84:				GetLicense			100.0%
github.com/rabbytesoftware/quiver/internal/core/metadata/metadata.go:88:				GetCopyright			100.0%
github.com/rabbytesoftware/quiver/internal/core/metadata/metadata.go:92:				GetMaintainers			100.0%
github.com/rabbytesoftware/quiver/internal/core/metadata/metadata.go:96:				GetVariables			100.0%
github.com/rabbytesoftware/quiver/internal/core/metadata/metadata.go:100:				GetDefaultConfigPath		100.0%
github.com/rabbytesoftware/quiver/internal/core/metadata/metadata.go:104:				defaultMetadata			100.0%
github.com/rabbytesoftware/quiver/internal/core/watcher/messages.go:7:					Debug				100.0%
github.com/rabbytesoftware/quiver/internal/core/watcher/messages.go:11:					Info				100.0%
github.com/rabbytesoftware/quiver/internal/core/watcher/messages.go:15:					Warn				100.0%
github.com/rabbytesoftware/quiver/internal/core/watcher/messages.go:19:					Error				100.0%
github.com/rabbytesoftware/quiver/internal/core/watcher/messages.go:23:					Unforeseen			0.0%
github.com/rabbytesoftware/quiver/internal/core/watcher/service.go:28:					NewWatcherService		100.0%
github.com/rabbytesoftware/quiver/internal/core/watcher/service.go:40:					GetWatcher			100.0%
github.com/rabbytesoftware/quiver/internal/core/watcher/service.go:44:					SetLevel			100.0%
github.com/rabbytesoftware/quiver/internal/core/watcher/service.go:48:					GetLevel			100.0%
github.com/rabbytesoftware/quiver/internal/core/watcher/service.go:52:					WithFields			100.0%
github.com/rabbytesoftware/quiver/internal/core/watcher/service.go:56:					WithField			100.0%
github.com/rabbytesoftware/quiver/internal/core/watcher/service.go:60:					GetConfig			100.0%
github.com/rabbytesoftware/quiver/internal/core/watcher/service.go:64:					IsEnabled			100.0%
github.com/rabbytesoftware/quiver/internal/core/watcher/service.go:68:					initLogger			53.3%
github.com/rabbytesoftware/quiver/internal/core/watcher/service.go:103:					isTestEnvironment		75.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/infrastructure.go:19:				NewInfrastructure		87.5%
github.com/rabbytesoftware/quiver/internal/infrastructure/netbridge/netbridge.go:16:			NewNetbridge			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/netbridge/netbridge.go:20:			IsEnabled			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/netbridge/netbridge.go:24:			IsAvailable			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/netbridge/netbridge.go:28:			PublicIP			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/netbridge/netbridge.go:34:			LocalIP				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/netbridge/netbridge.go:40:			IsPortAvailable			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/netbridge/netbridge.go:47:			ArePortsAvailable		100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/netbridge/netbridge.go:54:			ForwardPort			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/netbridge/netbridge.go:66:			ForwardPorts			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/netbridge/netbridge.go:73:			ReversePort			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/netbridge/netbridge.go:85:			ReversePorts			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/netbridge/netbridge.go:92:			GetPortForwardingStatus		100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/netbridge/netbridge.go:99:			GetPortForwardingStatuses	100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/requirements/requirements.go:20:		NewRequirements			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/requirements/requirements.go:24:		Validate			84.6%
github.com/rabbytesoftware/quiver/internal/infrastructure/requirements/requirements.go:55:		ValidateOS			91.7%
github.com/rabbytesoftware/quiver/internal/infrastructure/requirements/requirements.go:82:		ValidateCPU			90.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/requirements/requirements.go:106:		ValidateMemory			91.7%
github.com/rabbytesoftware/quiver/internal/infrastructure/requirements/requirements.go:133:		ValidateDisk			91.7%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/builder/builder.go:23:		NewBuilder			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/builder/builder.go:32:		WithWorkDir			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/builder/builder.go:37:		WithEnv				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/builder/builder.go:44:		WithEnvVar			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/builder/builder.go:49:		WithTimeout			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/builder/builder.go:54:		WithBufferSize			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/builder/builder.go:59:		WithKillTimeout			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/builder/builder.go:64:		WithStopTimeout			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/builder/builder_linux.go:10:		Build				90.9%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/manager.go:18:			NewManager			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/manager.go:24:			Register			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/manager.go:30:			Unregister			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/manager.go:36:			Get				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/manager.go:47:			ListAll				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/manager.go:58:			Count				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/manager.go:64:			ListByStatus			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/manager.go:77:			StopAll				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/manager.go:100:			KillAll				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/manager.go:123:			CleanupFinished			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/manager.go:145:			ShutdownAll			94.1%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/manager.go:177:			Clear				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/models/models.go:15:			String				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/models/models.go:19:			IsValid				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/models/models.go:28:			IsFinished			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/models/models.go:32:			IsActive			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/models/models.go:46:			NewConfig			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/models/models.go:58:			Validate			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/output/output.go:22:			NewHandler			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/output/output.go:26:			NewHandlerWithBuffers		100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/output/output.go:36:			WriteOutput			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/output/output.go:56:			WriteError			88.9%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/output/output.go:76:			GetOutput			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/output/output.go:82:			GetError			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/output/output.go:88:			OutChan				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/output/output.go:92:			ErrChan				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/output/output.go:96:			Reset				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/output/output.go:103:			IsClosed			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/output/output.go:109:			Close				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/linux.go:20:			NewLinuxProcess			80.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/linux.go:36:			Start				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/linux.go:40:			Stop				72.7%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/linux.go:81:			Kill				56.5%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:45:		NewBaseProcess			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:77:		ID				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:81:		Status				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:87:		ExitCode			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:93:		Output				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:97:		Error				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:101:		StreamOutput			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:105:		StreamError			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:109:		GetConfig			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:113:		GetCmd				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:117:		GetOutputHandler		100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:121:		GetDoneChan			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:125:		SetStatus			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:131:		SetExitCode			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:137:		Wait				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:146:		Close				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:151:		StartCommon			82.6%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:239:		envMapToSlice			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/runtime.go:18:			New				75.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/runtime.go:31:			Get				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/runtime.go:35:			GetByID				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/runtime.go:39:			ListAll				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/runtime.go:43:			ListByStatus			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/runtime.go:47:			Count				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/runtime.go:51:			StopAll				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/runtime.go:55:			KillAll				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/runtime.go:59:			CleanupFinished			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/runtime.go:63:			Shutdown			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/runtime.go:67:			OS				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/runtime.go:71:			detectOS			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/runtime.go:75:			isSupportedOS			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/manifest.go:21:			parseManifestString		100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/manifest.go:44:			extractManifestFromYAML		100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/manifest.go:57:			extractSchemaField		100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/reader.go:18:			NewTranslator			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/reader.go:24:			Arrow				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/reader.go:30:			Quiver				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/reader.go:36:			ReadSchemaInfo			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/reader.go:52:			readManifest			84.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/schemas/arrow/v1/mapper.go:19:	NewMapper			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/schemas/arrow/v1/mapper.go:23:	Map				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/schemas/arrow/v1/mapper.go:72:	GetSchema			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/schemas/arrow/v1/mapper.go:76:	mapRequirements			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/schemas/arrow/v1/mapper.go:93:	mapNetbridge			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/schemas/arrow/v1/mapper.go:115:	mapVariables			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/schemas/arrow/v1/mapper.go:137:	mapWizards			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/schemas/arrow/v1/mapper.go:177:	mapActions			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/schemas/quiver/v1/mapper.go:14:	NewMapper			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/schemas/quiver/v1/mapper.go:18:	Map				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/schemas/quiver/v1/mapper.go:34:	GetSchema			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/schemas/register.go:8:		register			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/schemas/registry.go:16:		NewRegistry			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/schemas/registry.go:25:		GetArrowMapper			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/schemas/registry.go:33:		GetQuiverMapper			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/schemas/registry.go:41:		GetSchema			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/schemas/registry.go:57:		IsSupported			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/validation.go:12:			validateYAML			94.1%
github.com/rabbytesoftware/quiver/internal/infrastructure/wizard/wizard.go:6:				NewWizard			100.0%
github.com/rabbytesoftware/quiver/internal/internal.go:26:						NewInternal			100.0%
github.com/rabbytesoftware/quiver/internal/internal.go:42:						Run				0.0%
github.com/rabbytesoftware/quiver/internal/internal.go:46:						GetCore				100.0%
github.com/rabbytesoftware/quiver/internal/models/arrow/arrow.go:41:					Validate			100.0%
github.com/rabbytesoftware/quiver/internal/models/arrow/method.go:28:					Validate			100.0%
github.com/rabbytesoftware/quiver/internal/models/arrow/method.go:58:					Validate			100.0%
github.com/rabbytesoftware/quiver/internal/models/arrow/requirement.go:24:				IsValid				100.0%
github.com/rabbytesoftware/quiver/internal/models/arrow/requirement.go:28:				Validate			100.0%
github.com/rabbytesoftware/quiver/internal/models/arrow/variable.go:19:					Validate			100.0%
github.com/rabbytesoftware/quiver/internal/models/arrow/variable_type.go:11:				String				100.0%
github.com/rabbytesoftware/quiver/internal/models/arrow/variable_type.go:15:				IsValid				100.0%
github.com/rabbytesoftware/quiver/internal/models/arrow/variable_type.go:19:				IsString			100.0%
github.com/rabbytesoftware/quiver/internal/models/arrow/variable_type.go:23:				IsNumber			100.0%
github.com/rabbytesoftware/quiver/internal/models/arrow/variable_type.go:27:				IsBoolean			100.0%
github.com/rabbytesoftware/quiver/internal/models/netbridge/forwarding_status.go:11:			String				100.0%
github.com/rabbytesoftware/quiver/internal/models/netbridge/forwarding_status.go:15:			IsEnabled			100.0%
github.com/rabbytesoftware/quiver/internal/models/netbridge/forwarding_status.go:19:			IsDisabled			100.0%
github.com/rabbytesoftware/quiver/internal/models/netbridge/forwarding_status.go:23:			IsError				100.0%
github.com/rabbytesoftware/quiver/internal/models/netbridge/port.go:18:					IsStartPortValid		100.0%
github.com/rabbytesoftware/quiver/internal/models/netbridge/port.go:22:					IsEndPortValid			100.0%
github.com/rabbytesoftware/quiver/internal/models/netbridge/port.go:26:					Validate			100.0%
github.com/rabbytesoftware/quiver/internal/models/netbridge/protocol.go:11:				String				100.0%
github.com/rabbytesoftware/quiver/internal/models/netbridge/protocol.go:15:				IsValid				100.0%
github.com/rabbytesoftware/quiver/internal/models/netbridge/protocol.go:19:				IsTCP				100.0%
github.com/rabbytesoftware/quiver/internal/models/netbridge/protocol.go:23:				IsUDP				100.0%
github.com/rabbytesoftware/quiver/internal/models/netbridge/protocol.go:27:				IsTCPUDP			100.0%
github.com/rabbytesoftware/quiver/internal/models/shared/namespace.go:14:				Validate			100.0%
github.com/rabbytesoftware/quiver/internal/models/shared/namespace.go:37:				GetQUID				75.0%
github.com/rabbytesoftware/quiver/internal/models/shared/namespace.go:45:				GetAUID				100.0%
github.com/rabbytesoftware/quiver/internal/models/shared/namespace.go:53:				String				100.0%
github.com/rabbytesoftware/quiver/internal/models/shared/os.go:16:					String				100.0%
github.com/rabbytesoftware/quiver/internal/models/shared/os.go:20:					IsValid				100.0%
github.com/rabbytesoftware/quiver/internal/models/shared/os.go:29:					IsLinux				100.0%
github.com/rabbytesoftware/quiver/internal/models/shared/os.go:33:					IsWindows			100.0%
github.com/rabbytesoftware/quiver/internal/models/shared/os.go:37:					IsDarwin			100.0%
github.com/rabbytesoftware/quiver/internal/models/shared/os.go:41:					IsAMD64				100.0%
github.com/rabbytesoftware/quiver/internal/models/shared/os.go:45:					IsARM64				100.0%
github.com/rabbytesoftware/quiver/internal/models/shared/security.go:10:				String				100.0%
github.com/rabbytesoftware/quiver/internal/models/shared/security.go:14:				IsTrusted			100.0%
github.com/rabbytesoftware/quiver/internal/models/shared/security.go:18:				IsUntrusted			100.0%
github.com/rabbytesoftware/quiver/internal/models/shared/url.go:7:					String				100.0%
github.com/rabbytesoftware/quiver/internal/models/shared/url.go:11:					IsValid				100.0%
github.com/rabbytesoftware/quiver/internal/repositories/arrows/arrows.go:52:				NewArrowsRepository		100.0%
github.com/rabbytesoftware/quiver/internal/repositories/arrows/arrows.go:58:				Get				100.0%
github.com/rabbytesoftware/quiver/internal/repositories/arrows/arrows.go:65:				List				100.0%
github.com/rabbytesoftware/quiver/internal/repositories/arrows/arrows.go:71:				Add				100.0%
github.com/rabbytesoftware/quiver/internal/repositories/arrows/arrows.go:81:				Remove				100.0%
github.com/rabbytesoftware/quiver/internal/repositories/arrows/arrows.go:90:				ExecuteMethod			100.0%
github.com/rabbytesoftware/quiver/internal/repositories/arrows/arrows.go:100:				StopMethod			100.0%
github.com/rabbytesoftware/quiver/internal/repositories/quivers/quivers.go:12:				NewQuiversRepository		100.0%
github.com/rabbytesoftware/quiver/internal/repositories/quivers/quivers.go:20:				Get				100.0%
github.com/rabbytesoftware/quiver/internal/repositories/quivers/quivers.go:24:				GetById				100.0%
github.com/rabbytesoftware/quiver/internal/repositories/quivers/quivers.go:28:				Create				100.0%
github.com/rabbytesoftware/quiver/internal/repositories/quivers/quivers.go:32:				Update				100.0%
github.com/rabbytesoftware/quiver/internal/repositories/quivers/quivers.go:36:				DeleteById			100.0%
github.com/rabbytesoftware/quiver/internal/repositories/repositories.go:16:				NewRepositories			100.0%
github.com/rabbytesoftware/quiver/internal/repositories/repositories.go:26:				GetArrows			100.0%
github.com/rabbytesoftware/quiver/internal/repositories/repositories.go:30:				GetSystem			100.0%
github.com/rabbytesoftware/quiver/internal/repositories/repositories.go:34:				GetQuivers			100.0%
github.com/rabbytesoftware/quiver/internal/repositories/system/system.go:12:				NewSystemRepository		100.0%
github.com/rabbytesoftware/quiver/internal/repositories/system/system.go:20:				GetMetadata			100.0%
github.com/rabbytesoftware/quiver/internal/repositories/system/system.go:24:				UpdateQuiver			100.0%
github.com/rabbytesoftware/quiver/internal/repositories/system/system.go:28:				UninstallQuiver			100.0%
github.com/rabbytesoftware/quiver/internal/repositories/system/system.go:32:				GetLogs				100.0%
github.com/rabbytesoftware/quiver/internal/repositories/system/system.go:36:				RestartQuiver			100.0%
github.com/rabbytesoftware/quiver/internal/repositories/system/system.go:40:				Status				100.0%
github.com/rabbytesoftware/quiver/internal/repositories/system/system.go:44:				StopQuiver			100.0%
github.com/rabbytesoftware/quiver/internal/usecases/arrows/usecase.go:9:				NewArrowsUsecase		100.0%
github.com/rabbytesoftware/quiver/internal/usecases/quivers/usecase.go:9:				NewQuiversUsecase		100.0%
github.com/rabbytesoftware/quiver/internal/usecases/system/usecase.go:9:				NewSystemUsecase		100.0%
github.com/rabbytesoftware/quiver/internal/usecases/usecases.go:16:					NewUsecases			100.0%
github.com/rabbytesoftware/quiver/internal/utils/slices.go:3:						GetSliceField			100.0%
github.com/rabbytesoftware/quiver/internal/utils/slices.go:10:						GetStringField			100.0%
github.com/rabbytesoftware/quiver/internal/utils/slices.go:17:						GetIntField			100.0%
github.com/rabbytesoftware/quiver/internal/utils/slices.go:27:						GetBoolField			100.0%
github.com/rabbytesoftware/quiver/internal/utils/slices.go:34:						ToStringSlice			100.0%
total:													(statements)			90.8%

1 similar comment
@github-actions
Copy link

📊 Test Coverage Report

Total Coverage: 90.8%
Threshold: 90%
Status: PASSED

📋 View Detailed Report
github.com/rabbytesoftware/quiver/cmd/quiver/main.go:11:						main				0.0%
github.com/rabbytesoftware/quiver/internal/api/api.go:24:						NewAPI				90.9%
github.com/rabbytesoftware/quiver/internal/api/api.go:50:						Run				0.0%
github.com/rabbytesoftware/quiver/internal/api/api.go:67:						SetupMiddleware			100.0%
github.com/rabbytesoftware/quiver/internal/api/api.go:72:						SetupRoutes			100.0%
github.com/rabbytesoftware/quiver/internal/api/middleware/logger.go:12:					WatcherLogger			100.0%
github.com/rabbytesoftware/quiver/internal/api/middleware/logger.go:61:					WatcherRecovery			100.0%
github.com/rabbytesoftware/quiver/internal/api/v1/controllers/arrows/routes.go:8:			SetupRoutes			0.0%
github.com/rabbytesoftware/quiver/internal/api/v1/controllers/health/health.go:14:			NewHealthHandler		100.0%
github.com/rabbytesoftware/quiver/internal/api/v1/controllers/health/health.go:22:			SetupRoutes			100.0%
github.com/rabbytesoftware/quiver/internal/api/v1/controllers/health/health.go:26:			Handler				100.0%
github.com/rabbytesoftware/quiver/internal/api/v1/controllers/quivers/routes.go:8:			SetupRoutes			0.0%
github.com/rabbytesoftware/quiver/internal/api/v1/controllers/system/routes.go:8:			SetupRoutes			0.0%
github.com/rabbytesoftware/quiver/internal/api/v1/routes.go:12:						SetupRoutes			100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/commands/add_request.go:30:			NewAddRequest			100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/commands/add_request.go:43:			Validate			83.3%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/commands/add_request.go:58:			ToEvent				100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/events/add_failed.go:37:			NewAddFailedEvent		100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/events/add_failed.go:41:			WithArrowNamespace		100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/events/add_failed.go:48:			WithErrorCode			100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/events/add_failed.go:55:			WithErrorMessage		100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/events/add_failed.go:62:			WithStep			100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/events/add_failed.go:69:			Build				100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/events/add_requested.go:35:			NewAddRequestedEvent		100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/events/add_requested.go:39:			WithArrowNamespace		100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/events/add_requested.go:46:			WithPath			100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/events/add_requested.go:53:			WithForceAdd			100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/events/add_requested.go:60:			WithStep			100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/events/add_requested.go:67:			Build				100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/events/add_succeeded.go:32:			NewAddSucceededEvent		100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/events/add_succeeded.go:36:			WithArrowNamespace		100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/events/add_succeeded.go:43:			WithArrow			100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/events/add_succeeded.go:50:			WithStep			100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/events/add_succeeded.go:57:			Build				100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/handlers/cqrs.go:35:				NewArrowView			100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/handlers/cqrs.go:39:				Get				100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/handlers/cqrs.go:46:				List				100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/handlers/cqrs.go:52:				Add				100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/handlers/cqrs.go:60:				Update				100.0%
github.com/rabbytesoftware/quiver/internal/async/v1/arrow/handlers/cqrs.go:67:				Remove				100.0%
github.com/rabbytesoftware/quiver/internal/core/config/config.go:63:					Get				63.6%
github.com/rabbytesoftware/quiver/internal/core/config/config.go:82:					GetNetbridge			100.0%
github.com/rabbytesoftware/quiver/internal/core/config/config.go:86:					GetArrows			100.0%
github.com/rabbytesoftware/quiver/internal/core/config/config.go:90:					GetAPI				100.0%
github.com/rabbytesoftware/quiver/internal/core/config/config.go:94:					GetDatabase			100.0%
github.com/rabbytesoftware/quiver/internal/core/config/config.go:98:					GetWatcher			100.0%
github.com/rabbytesoftware/quiver/internal/core/config/config.go:102:					GetConfigPath			100.0%
github.com/rabbytesoftware/quiver/internal/core/config/config.go:106:					ConfigExists			100.0%
github.com/rabbytesoftware/quiver/internal/core/config/config.go:112:					getDefaultConfig		80.0%
github.com/rabbytesoftware/quiver/internal/core/config/config.go:150:					resetForTesting			100.0%
github.com/rabbytesoftware/quiver/internal/core/core.go:22:						Init				100.0%
github.com/rabbytesoftware/quiver/internal/core/core.go:30:						GetMetadata			100.0%
github.com/rabbytesoftware/quiver/internal/core/core.go:34:						GetConfig			100.0%
github.com/rabbytesoftware/quiver/internal/core/core.go:38:						GetWatcher			100.0%
github.com/rabbytesoftware/quiver/internal/core/database/database.go:10:				NewDatabase			100.0%
github.com/rabbytesoftware/quiver/internal/core/database/repository/repository.go:23:			NewRepository			76.9%
github.com/rabbytesoftware/quiver/internal/core/database/repository/repository.go:56:			Get				100.0%
github.com/rabbytesoftware/quiver/internal/core/database/repository/repository.go:66:			GetByID				100.0%
github.com/rabbytesoftware/quiver/internal/core/database/repository/repository.go:80:			Create				100.0%
github.com/rabbytesoftware/quiver/internal/core/database/repository/repository.go:90:			Update				100.0%
github.com/rabbytesoftware/quiver/internal/core/database/repository/repository.go:100:			Delete				100.0%
github.com/rabbytesoftware/quiver/internal/core/database/repository/repository.go:110:			Exists				100.0%
github.com/rabbytesoftware/quiver/internal/core/database/repository/repository.go:121:			Count				100.0%
github.com/rabbytesoftware/quiver/internal/core/database/repository/repository.go:131:			Where				0.0%
github.com/rabbytesoftware/quiver/internal/core/database/repository/repository.go:143:			Close				66.7%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:11:					Throw				100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:23:					Error				100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:27:					Success				100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:31:					Created				100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:35:					Accepted			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:39:					NonAuthoritativeInformation	100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:43:					NoContent			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:47:					ResetContent			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:51:					PartialContent			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:55:					MultiStatus			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:59:					AlreadyReported			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:63:					IMUsed				100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:68:					InvalidRequest			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:72:					Unauthorized			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:76:					PaymentRequired			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:80:					Forbidden			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:84:					NotFound			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:88:					MethodNotAllowed		100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:92:					NotAcceptable			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:96:					ProxyAuthenticationRequired	100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:100:					RequestTimeout			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:104:					Conflict			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:108:					Gone				100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:112:					LengthRequired			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:116:					PreconditionFailed		100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:120:					PayloadTooLarge			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:124:					URITooLong			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:128:					UnsupportedMediaType		100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:132:					RangeNotSatisfiable		100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:136:					ExpectationFailed		100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:140:					ImATeapot			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:144:					MisdirectedRequest		100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:148:					UnprocessableEntity		100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:152:					Locked				100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:156:					FailedDependency		100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:160:					TooEarly			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:164:					UpgradeRequired			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:168:					PreconditionRequired		100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:172:					TooManyRequests			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:176:					RequestHeaderFieldsTooLarge	100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:180:					UnavailableForLegalReasons	100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:185:					InternalServerError		100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:189:					NotImplemented			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:193:					BadGateway			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:197:					ServiceUnavailable		100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:201:					GatewayTimeout			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:205:					HTTPVersionError		100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:209:					VariantAlsoNegotiates		100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:213:					InsufficientStorage		100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:217:					LoopDetected			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:221:					NotExtended			100.0%
github.com/rabbytesoftware/quiver/internal/core/errs/errs.go:225:					NetworkAuthenticationRequired	100.0%
github.com/rabbytesoftware/quiver/internal/core/es/builder.go:16:					New				100.0%
github.com/rabbytesoftware/quiver/internal/core/es/builder.go:20:					WithSQLiteStore			80.0%
github.com/rabbytesoftware/quiver/internal/core/es/builder.go:32:					WithMemoryBus			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/builder.go:37:					Build				100.0%
github.com/rabbytesoftware/quiver/internal/core/es/bus/memory.go:23:					NewMemoryBus			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/bus/memory.go:29:					Publish				100.0%
github.com/rabbytesoftware/quiver/internal/core/es/bus/memory.go:53:					Subscribe			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/event/event.go:68:					NewEvent			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/event/event.go:76:					WithAggregateID			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/event/event.go:83:					WithAggregateType		100.0%
github.com/rabbytesoftware/quiver/internal/core/es/event/event.go:90:					WithAggregateVersion		100.0%
github.com/rabbytesoftware/quiver/internal/core/es/event/event.go:97:					WithEventType			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/event/event.go:104:					WithEventVersion		100.0%
github.com/rabbytesoftware/quiver/internal/core/es/event/event.go:111:					WithIdempotency			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/event/event.go:118:					WithParentID			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/event/event.go:125:					WithMetadata			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/event/event.go:132:					WithPayload			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/event/event.go:139:					Build				100.0%
github.com/rabbytesoftware/quiver/internal/core/es/eventsourcing.go:19:					Execute				72.7%
github.com/rabbytesoftware/quiver/internal/core/es/eventsourcing.go:46:					Publish				66.7%
github.com/rabbytesoftware/quiver/internal/core/es/eventsourcing.go:64:					AggregateExists			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/eventsourcing.go:71:					HasEventType			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/eventsourcing.go:79:					GetEvents			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/eventsourcing.go:87:					GetEventStream			75.0%
github.com/rabbytesoftware/quiver/internal/core/es/eventsourcing.go:100:				Subscribe			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/eventsourcing.go:107:				Close				100.0%
github.com/rabbytesoftware/quiver/internal/core/es/store/sqlite.go:31:					TableName			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/store/sqlite.go:39:					NewSQLiteStore			75.0%
github.com/rabbytesoftware/quiver/internal/core/es/store/sqlite.go:53:					Append				71.4%
github.com/rabbytesoftware/quiver/internal/core/es/store/sqlite.go:70:					GetByAggregate			80.0%
github.com/rabbytesoftware/quiver/internal/core/es/store/sqlite.go:91:					AggregateExists			75.0%
github.com/rabbytesoftware/quiver/internal/core/es/store/sqlite.go:103:					HasEventType			75.0%
github.com/rabbytesoftware/quiver/internal/core/es/store/sqlite.go:116:					eventToRow			80.0%
github.com/rabbytesoftware/quiver/internal/core/es/store/sqlite.go:145:					rowToEvent			75.0%
github.com/rabbytesoftware/quiver/internal/core/es/store/sqlite.go:172:					Close				100.0%
github.com/rabbytesoftware/quiver/internal/core/es/store/typed.go:11:					GetByAggregate			81.2%
github.com/rabbytesoftware/quiver/internal/core/es/stream/stream.go:11:					NewEventStream			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/stream/stream.go:19:					HasEventType			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/stream/stream.go:30:					GetEvents			100.0%
github.com/rabbytesoftware/quiver/internal/core/es/stream/stream.go:34:					Len				100.0%
github.com/rabbytesoftware/quiver/internal/core/es/stream/stream.go:38:					GetLatestVersion		100.0%
github.com/rabbytesoftware/quiver/internal/core/es/utils.go:5:						toAnyEvent			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/config/config.go:20:				Default				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/config/config.go:37:				WithHTTPClient			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/config/config.go:45:				WithMaxMemorySize		100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/config/config.go:53:				WithBufferSize			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/errors/errors.go:11:				Error				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/errors/errors.go:18:				Unwrap				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/errors/errors.go:22:				Op				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/errors/errors.go:33:				NotFound			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/errors/errors.go:41:				Unsupported			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:14:					getStrategy			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:27:					GetInfo				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:35:					Exists				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:43:					IsDir				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:51:					IsFile				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:59:					Read				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:67:					ReadStream			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:75:					Write				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:84:					WriteStream			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:93:					Append				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:102:					List				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:110:					Mkdir				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:119:					MkdirAll			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:128:					Remove				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:136:					RemoveAll			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:144:					Copy				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:152:					Move				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:160:					Rename				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:168:					Chmod				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:177:					Chown				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:186:					Download			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:195:					DownloadStream			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:204:					Fetch				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/global.go:212:					Validate			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:20:				NewLocal			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:26:				GetInfo				90.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:44:				Exists				85.7%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:56:				IsDir				85.7%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:69:				IsFile				85.7%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:82:				Read				83.3%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:104:				ReadStream			78.6%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:128:				Write				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:152:				WriteStream			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:185:				Append				90.9%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:205:				List				88.2%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:237:				Mkdir				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:251:				MkdirAll			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:265:				Remove				80.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:292:				RemoveAll			77.8%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:308:				Copy				93.3%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:333:				Move				83.3%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:374:				Rename				80.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:391:				Chmod				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:405:				Chown				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:420:				Download			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:424:				DownloadStream			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:428:				Fetch				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/local.go:432:				Validate			87.5%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:22:				NewRemote			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:29:				doRequest			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:43:				GetInfo				66.7%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:99:				Exists				80.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:109:				IsDir				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:113:				IsFile				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:117:				Read				0.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:121:				ReadStream			85.7%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:135:				Write				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:139:				WriteStream			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:143:				Append				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:147:				List				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:151:				Mkdir				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:155:				MkdirAll			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:159:				Remove				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:163:				RemoveAll			100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:167:				Copy				81.2%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:196:				Move				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:200:				Rename				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:204:				Chmod				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:208:				Chown				100.0%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:212:				Download			76.9%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:279:				DownloadStream			85.7%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:293:				Fetch				83.3%
github.com/rabbytesoftware/quiver/internal/core/fns/strategies/remote.go:318:				Validate			75.0%
github.com/rabbytesoftware/quiver/internal/core/metadata/metadata.go:48:				Get				83.3%
github.com/rabbytesoftware/quiver/internal/core/metadata/metadata.go:60:				GetVersion			100.0%
github.com/rabbytesoftware/quiver/internal/core/metadata/metadata.go:64:				GetVersionCodename		100.0%
github.com/rabbytesoftware/quiver/internal/core/metadata/metadata.go:68:				GetName				100.0%
github.com/rabbytesoftware/quiver/internal/core/metadata/metadata.go:72:				GetDescription			100.0%
github.com/rabbytesoftware/quiver/internal/core/metadata/metadata.go:76:				GetAuthor			100.0%
github.com/rabbytesoftware/quiver/internal/core/metadata/metadata.go:80:				GetURL				100.0%
github.com/rabbytesoftware/quiver/internal/core/metadata/metadata.go:84:				GetLicense			100.0%
github.com/rabbytesoftware/quiver/internal/core/metadata/metadata.go:88:				GetCopyright			100.0%
github.com/rabbytesoftware/quiver/internal/core/metadata/metadata.go:92:				GetMaintainers			100.0%
github.com/rabbytesoftware/quiver/internal/core/metadata/metadata.go:96:				GetVariables			100.0%
github.com/rabbytesoftware/quiver/internal/core/metadata/metadata.go:100:				GetDefaultConfigPath		100.0%
github.com/rabbytesoftware/quiver/internal/core/metadata/metadata.go:104:				defaultMetadata			100.0%
github.com/rabbytesoftware/quiver/internal/core/watcher/messages.go:7:					Debug				100.0%
github.com/rabbytesoftware/quiver/internal/core/watcher/messages.go:11:					Info				100.0%
github.com/rabbytesoftware/quiver/internal/core/watcher/messages.go:15:					Warn				100.0%
github.com/rabbytesoftware/quiver/internal/core/watcher/messages.go:19:					Error				100.0%
github.com/rabbytesoftware/quiver/internal/core/watcher/messages.go:23:					Unforeseen			0.0%
github.com/rabbytesoftware/quiver/internal/core/watcher/service.go:28:					NewWatcherService		100.0%
github.com/rabbytesoftware/quiver/internal/core/watcher/service.go:40:					GetWatcher			100.0%
github.com/rabbytesoftware/quiver/internal/core/watcher/service.go:44:					SetLevel			100.0%
github.com/rabbytesoftware/quiver/internal/core/watcher/service.go:48:					GetLevel			100.0%
github.com/rabbytesoftware/quiver/internal/core/watcher/service.go:52:					WithFields			100.0%
github.com/rabbytesoftware/quiver/internal/core/watcher/service.go:56:					WithField			100.0%
github.com/rabbytesoftware/quiver/internal/core/watcher/service.go:60:					GetConfig			100.0%
github.com/rabbytesoftware/quiver/internal/core/watcher/service.go:64:					IsEnabled			100.0%
github.com/rabbytesoftware/quiver/internal/core/watcher/service.go:68:					initLogger			53.3%
github.com/rabbytesoftware/quiver/internal/core/watcher/service.go:103:					isTestEnvironment		75.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/infrastructure.go:19:				NewInfrastructure		87.5%
github.com/rabbytesoftware/quiver/internal/infrastructure/netbridge/netbridge.go:16:			NewNetbridge			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/netbridge/netbridge.go:20:			IsEnabled			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/netbridge/netbridge.go:24:			IsAvailable			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/netbridge/netbridge.go:28:			PublicIP			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/netbridge/netbridge.go:34:			LocalIP				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/netbridge/netbridge.go:40:			IsPortAvailable			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/netbridge/netbridge.go:47:			ArePortsAvailable		100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/netbridge/netbridge.go:54:			ForwardPort			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/netbridge/netbridge.go:66:			ForwardPorts			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/netbridge/netbridge.go:73:			ReversePort			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/netbridge/netbridge.go:85:			ReversePorts			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/netbridge/netbridge.go:92:			GetPortForwardingStatus		100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/netbridge/netbridge.go:99:			GetPortForwardingStatuses	100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/requirements/requirements.go:20:		NewRequirements			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/requirements/requirements.go:24:		Validate			84.6%
github.com/rabbytesoftware/quiver/internal/infrastructure/requirements/requirements.go:55:		ValidateOS			91.7%
github.com/rabbytesoftware/quiver/internal/infrastructure/requirements/requirements.go:82:		ValidateCPU			90.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/requirements/requirements.go:106:		ValidateMemory			91.7%
github.com/rabbytesoftware/quiver/internal/infrastructure/requirements/requirements.go:133:		ValidateDisk			91.7%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/builder/builder.go:23:		NewBuilder			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/builder/builder.go:32:		WithWorkDir			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/builder/builder.go:37:		WithEnv				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/builder/builder.go:44:		WithEnvVar			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/builder/builder.go:49:		WithTimeout			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/builder/builder.go:54:		WithBufferSize			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/builder/builder.go:59:		WithKillTimeout			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/builder/builder.go:64:		WithStopTimeout			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/builder/builder_linux.go:10:		Build				90.9%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/manager.go:18:			NewManager			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/manager.go:24:			Register			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/manager.go:30:			Unregister			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/manager.go:36:			Get				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/manager.go:47:			ListAll				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/manager.go:58:			Count				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/manager.go:64:			ListByStatus			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/manager.go:77:			StopAll				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/manager.go:100:			KillAll				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/manager.go:123:			CleanupFinished			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/manager.go:145:			ShutdownAll			94.1%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/manager.go:177:			Clear				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/models/models.go:15:			String				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/models/models.go:19:			IsValid				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/models/models.go:28:			IsFinished			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/models/models.go:32:			IsActive			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/models/models.go:46:			NewConfig			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/models/models.go:58:			Validate			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/output/output.go:22:			NewHandler			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/output/output.go:26:			NewHandlerWithBuffers		100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/output/output.go:36:			WriteOutput			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/output/output.go:56:			WriteError			88.9%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/output/output.go:76:			GetOutput			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/output/output.go:82:			GetError			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/output/output.go:88:			OutChan				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/output/output.go:92:			ErrChan				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/output/output.go:96:			Reset				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/output/output.go:103:			IsClosed			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/output/output.go:109:			Close				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/linux.go:20:			NewLinuxProcess			80.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/linux.go:36:			Start				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/linux.go:40:			Stop				72.7%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/linux.go:81:			Kill				56.5%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:45:		NewBaseProcess			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:77:		ID				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:81:		Status				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:87:		ExitCode			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:93:		Output				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:97:		Error				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:101:		StreamOutput			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:105:		StreamError			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:109:		GetConfig			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:113:		GetCmd				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:117:		GetOutputHandler		100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:121:		GetDoneChan			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:125:		SetStatus			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:131:		SetExitCode			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:137:		Wait				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:146:		Close				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:151:		StartCommon			82.6%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/process/process.go:239:		envMapToSlice			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/runtime.go:18:			New				75.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/runtime.go:31:			Get				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/runtime.go:35:			GetByID				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/runtime.go:39:			ListAll				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/runtime.go:43:			ListByStatus			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/runtime.go:47:			Count				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/runtime.go:51:			StopAll				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/runtime.go:55:			KillAll				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/runtime.go:59:			CleanupFinished			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/runtime.go:63:			Shutdown			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/runtime.go:67:			OS				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/runtime.go:71:			detectOS			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/runtime/runtime.go:75:			isSupportedOS			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/manifest.go:21:			parseManifestString		100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/manifest.go:44:			extractManifestFromYAML		100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/manifest.go:57:			extractSchemaField		100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/reader.go:18:			NewTranslator			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/reader.go:24:			Arrow				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/reader.go:30:			Quiver				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/reader.go:36:			ReadSchemaInfo			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/reader.go:52:			readManifest			84.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/schemas/arrow/v1/mapper.go:19:	NewMapper			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/schemas/arrow/v1/mapper.go:23:	Map				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/schemas/arrow/v1/mapper.go:72:	GetSchema			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/schemas/arrow/v1/mapper.go:76:	mapRequirements			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/schemas/arrow/v1/mapper.go:93:	mapNetbridge			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/schemas/arrow/v1/mapper.go:115:	mapVariables			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/schemas/arrow/v1/mapper.go:137:	mapWizards			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/schemas/arrow/v1/mapper.go:177:	mapActions			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/schemas/quiver/v1/mapper.go:14:	NewMapper			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/schemas/quiver/v1/mapper.go:18:	Map				100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/schemas/quiver/v1/mapper.go:34:	GetSchema			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/schemas/register.go:8:		register			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/schemas/registry.go:16:		NewRegistry			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/schemas/registry.go:25:		GetArrowMapper			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/schemas/registry.go:33:		GetQuiverMapper			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/schemas/registry.go:41:		GetSchema			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/schemas/registry.go:57:		IsSupported			100.0%
github.com/rabbytesoftware/quiver/internal/infrastructure/translator/validation.go:12:			validateYAML			94.1%
github.com/rabbytesoftware/quiver/internal/infrastructure/wizard/wizard.go:6:				NewWizard			100.0%
github.com/rabbytesoftware/quiver/internal/internal.go:26:						NewInternal			100.0%
github.com/rabbytesoftware/quiver/internal/internal.go:42:						Run				0.0%
github.com/rabbytesoftware/quiver/internal/internal.go:46:						GetCore				100.0%
github.com/rabbytesoftware/quiver/internal/models/arrow/arrow.go:41:					Validate			100.0%
github.com/rabbytesoftware/quiver/internal/models/arrow/method.go:28:					Validate			100.0%
github.com/rabbytesoftware/quiver/internal/models/arrow/method.go:58:					Validate			100.0%
github.com/rabbytesoftware/quiver/internal/models/arrow/requirement.go:24:				IsValid				100.0%
github.com/rabbytesoftware/quiver/internal/models/arrow/requirement.go:28:				Validate			100.0%
github.com/rabbytesoftware/quiver/internal/models/arrow/variable.go:19:					Validate			100.0%
github.com/rabbytesoftware/quiver/internal/models/arrow/variable_type.go:11:				String				100.0%
github.com/rabbytesoftware/quiver/internal/models/arrow/variable_type.go:15:				IsValid				100.0%
github.com/rabbytesoftware/quiver/internal/models/arrow/variable_type.go:19:				IsString			100.0%
github.com/rabbytesoftware/quiver/internal/models/arrow/variable_type.go:23:				IsNumber			100.0%
github.com/rabbytesoftware/quiver/internal/models/arrow/variable_type.go:27:				IsBoolean			100.0%
github.com/rabbytesoftware/quiver/internal/models/netbridge/forwarding_status.go:11:			String				100.0%
github.com/rabbytesoftware/quiver/internal/models/netbridge/forwarding_status.go:15:			IsEnabled			100.0%
github.com/rabbytesoftware/quiver/internal/models/netbridge/forwarding_status.go:19:			IsDisabled			100.0%
github.com/rabbytesoftware/quiver/internal/models/netbridge/forwarding_status.go:23:			IsError				100.0%
github.com/rabbytesoftware/quiver/internal/models/netbridge/port.go:18:					IsStartPortValid		100.0%
github.com/rabbytesoftware/quiver/internal/models/netbridge/port.go:22:					IsEndPortValid			100.0%
github.com/rabbytesoftware/quiver/internal/models/netbridge/port.go:26:					Validate			100.0%
github.com/rabbytesoftware/quiver/internal/models/netbridge/protocol.go:11:				String				100.0%
github.com/rabbytesoftware/quiver/internal/models/netbridge/protocol.go:15:				IsValid				100.0%
github.com/rabbytesoftware/quiver/internal/models/netbridge/protocol.go:19:				IsTCP				100.0%
github.com/rabbytesoftware/quiver/internal/models/netbridge/protocol.go:23:				IsUDP				100.0%
github.com/rabbytesoftware/quiver/internal/models/netbridge/protocol.go:27:				IsTCPUDP			100.0%
github.com/rabbytesoftware/quiver/internal/models/shared/namespace.go:14:				Validate			100.0%
github.com/rabbytesoftware/quiver/internal/models/shared/namespace.go:37:				GetQUID				75.0%
github.com/rabbytesoftware/quiver/internal/models/shared/namespace.go:45:				GetAUID				100.0%
github.com/rabbytesoftware/quiver/internal/models/shared/namespace.go:53:				String				100.0%
github.com/rabbytesoftware/quiver/internal/models/shared/os.go:16:					String				100.0%
github.com/rabbytesoftware/quiver/internal/models/shared/os.go:20:					IsValid				100.0%
github.com/rabbytesoftware/quiver/internal/models/shared/os.go:29:					IsLinux				100.0%
github.com/rabbytesoftware/quiver/internal/models/shared/os.go:33:					IsWindows			100.0%
github.com/rabbytesoftware/quiver/internal/models/shared/os.go:37:					IsDarwin			100.0%
github.com/rabbytesoftware/quiver/internal/models/shared/os.go:41:					IsAMD64				100.0%
github.com/rabbytesoftware/quiver/internal/models/shared/os.go:45:					IsARM64				100.0%
github.com/rabbytesoftware/quiver/internal/models/shared/security.go:10:				String				100.0%
github.com/rabbytesoftware/quiver/internal/models/shared/security.go:14:				IsTrusted			100.0%
github.com/rabbytesoftware/quiver/internal/models/shared/security.go:18:				IsUntrusted			100.0%
github.com/rabbytesoftware/quiver/internal/models/shared/url.go:7:					String				100.0%
github.com/rabbytesoftware/quiver/internal/models/shared/url.go:11:					IsValid				100.0%
github.com/rabbytesoftware/quiver/internal/repositories/arrows/arrows.go:52:				NewArrowsRepository		100.0%
github.com/rabbytesoftware/quiver/internal/repositories/arrows/arrows.go:58:				Get				100.0%
github.com/rabbytesoftware/quiver/internal/repositories/arrows/arrows.go:65:				List				100.0%
github.com/rabbytesoftware/quiver/internal/repositories/arrows/arrows.go:71:				Add				100.0%
github.com/rabbytesoftware/quiver/internal/repositories/arrows/arrows.go:81:				Remove				100.0%
github.com/rabbytesoftware/quiver/internal/repositories/arrows/arrows.go:90:				ExecuteMethod			100.0%
github.com/rabbytesoftware/quiver/internal/repositories/arrows/arrows.go:100:				StopMethod			100.0%
github.com/rabbytesoftware/quiver/internal/repositories/quivers/quivers.go:12:				NewQuiversRepository		100.0%
github.com/rabbytesoftware/quiver/internal/repositories/quivers/quivers.go:20:				Get				100.0%
github.com/rabbytesoftware/quiver/internal/repositories/quivers/quivers.go:24:				GetById				100.0%
github.com/rabbytesoftware/quiver/internal/repositories/quivers/quivers.go:28:				Create				100.0%
github.com/rabbytesoftware/quiver/internal/repositories/quivers/quivers.go:32:				Update				100.0%
github.com/rabbytesoftware/quiver/internal/repositories/quivers/quivers.go:36:				DeleteById			100.0%
github.com/rabbytesoftware/quiver/internal/repositories/repositories.go:16:				NewRepositories			100.0%
github.com/rabbytesoftware/quiver/internal/repositories/repositories.go:26:				GetArrows			100.0%
github.com/rabbytesoftware/quiver/internal/repositories/repositories.go:30:				GetSystem			100.0%
github.com/rabbytesoftware/quiver/internal/repositories/repositories.go:34:				GetQuivers			100.0%
github.com/rabbytesoftware/quiver/internal/repositories/system/system.go:12:				NewSystemRepository		100.0%
github.com/rabbytesoftware/quiver/internal/repositories/system/system.go:20:				GetMetadata			100.0%
github.com/rabbytesoftware/quiver/internal/repositories/system/system.go:24:				UpdateQuiver			100.0%
github.com/rabbytesoftware/quiver/internal/repositories/system/system.go:28:				UninstallQuiver			100.0%
github.com/rabbytesoftware/quiver/internal/repositories/system/system.go:32:				GetLogs				100.0%
github.com/rabbytesoftware/quiver/internal/repositories/system/system.go:36:				RestartQuiver			100.0%
github.com/rabbytesoftware/quiver/internal/repositories/system/system.go:40:				Status				100.0%
github.com/rabbytesoftware/quiver/internal/repositories/system/system.go:44:				StopQuiver			100.0%
github.com/rabbytesoftware/quiver/internal/usecases/arrows/usecase.go:9:				NewArrowsUsecase		100.0%
github.com/rabbytesoftware/quiver/internal/usecases/quivers/usecase.go:9:				NewQuiversUsecase		100.0%
github.com/rabbytesoftware/quiver/internal/usecases/system/usecase.go:9:				NewSystemUsecase		100.0%
github.com/rabbytesoftware/quiver/internal/usecases/usecases.go:16:					NewUsecases			100.0%
github.com/rabbytesoftware/quiver/internal/utils/slices.go:3:						GetSliceField			100.0%
github.com/rabbytesoftware/quiver/internal/utils/slices.go:10:						GetStringField			100.0%
github.com/rabbytesoftware/quiver/internal/utils/slices.go:17:						GetIntField			100.0%
github.com/rabbytesoftware/quiver/internal/utils/slices.go:27:						GetBoolField			100.0%
github.com/rabbytesoftware/quiver/internal/utils/slices.go:34:						ToStringSlice			100.0%
total:													(statements)			90.8%

@JGGeist JGGeist self-requested a review December 27, 2025 16:16
@char2cs char2cs merged commit 973b4f6 into develop Dec 27, 2025
7 checks passed
@char2cs char2cs deleted the feature/event-sourcing-mechanism branch December 27, 2025 17:35
@github-project-automation github-project-automation bot moved this from PR review to Done in Quiver Dec 27, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

showstopper An bug that is so big, that makes Quiver totally unstable; Highest priority to solve

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

Core / Event Sourcing

4 participants