refactor: simplify package layout and harden runtime behavior #2

Merged
hayshin merged 17 commits from ci/setup into main 2026-07-11 20:19:46 +05:00
Owner
  • flatten package paths into one Go module and centralize integration suites for clearer imports and maintenance
  • harden idempotency, client lifecycle, retry cancellation, SMTP validation, metrics, and PostgreSQL outbox behavior
  • expand devenv tooling and Forgejo CI with formatting, vet, race, build, test, and documentation checks
  • remove unused ClickHouse support and align local S3 defaults with application naming
- flatten package paths into one Go module and centralize integration suites for clearer imports and maintenance - harden idempotency, client lifecycle, retry cancellation, SMTP validation, metrics, and PostgreSQL outbox behavior - expand devenv tooling and Forgejo CI with formatting, vet, race, build, test, and documentation checks - remove unused ClickHouse support and align local S3 defaults with application naming
- delete the unused core/clients/clickhouse helper package
- remove ClickHouse dependencies and tidy module metadata
- drop ClickHouse dev environment entries and README documentation
- add shared codegen tools, app env defaults, and inferred stream/schema names
- consolidate test, compose, build, run, migrate, and rename scripts in devenv.nix
- update shared check flow to include buf lint, tests, and service build
- move client integration tests from core packages into tests/integration
- update devenv test-integration to run the shared tests tree for go-pkg and services
- document tests/integration as the runnable suite location while keeping test helpers under test
- compress README and docs prose while preserving code examples and links
- translate Russian logging documentation and comments to English
- remove temporary original markdown backups from working tree
- run CI for main pushes and pull requests
- build and test all Go packages with Go 1.26
- move reusable helpers to testutil and runnable suites to integration
- place MinIO infrastructure assets under testdata
- update commands and documentation for renamed paths
- protect idempotency reservations with owner tokens in memory and Redis
- preserve HTTP response interfaces and bound SMTP sessions by context
- synchronize lifecycle holder access to prevent data races
- return context errors instead of stale retry state after canceled backoff
- close prior retryable responses before returning cancellation
- synchronize retry cancellation test for race-safe CI
- lease claimed events with recoverable claim IDs and expiry timestamps
- publish after atomic claim commits and condition result updates on ownership
- propagate bookkeeping failures and document at-least-once lease behavior
- return explicit errors for nil connectors and repeated Dial calls
- serialize connection setup to prevent concurrent client leaks
- verify holders can reconnect after Close
- replace raw-path fallback with a fixed unknown route label
- register collectors explicitly and return duplicate registration failures
- test bounded cardinality and conflicting registry setup
- fail CI when Go sources need formatting or vet reports defects
- run full test suite with race detector enabled
- return constructor errors for missing host and invalid connection settings
- reject conflicting implicit TLS and StartTLS modes
- preserve documented port and timeout defaults before validation
- flatten core, client, server, runtime, and transport package paths
- split clients, transports, runtime helpers, and integration tests into Go modules
- remove deprecated PostgreSQL APIs and extract shared routing metadata
- return to one Go module and normalize PostgreSQL, runtime, and transport packages
- consolidate metadata models and restore integration suites under root module
- add CI validation for local Markdown links
fix(dev): align S3 configuration with app name
Some checks failed
CI / test (pull_request) Failing after 0s
f1989ebb24
- default S3 bucket to normalized APP_NAME
- align MinIO credentials and bucket fallbacks with devenv
hayshin deleted branch ci/setup 2026-07-11 20:19:47 +05:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
platform/go-pkg!2
No description provided.