BregaldaConnect on LinkedIn

Independent software studio

Thoughtful tools.
Real technical
problems.

A collection of systems built to bring
clarity to complexity.

Explore the work
Bregalda

Four projects. One curious mind.

01 /ReconcileFlow

Logic you can inspect.

Two financial sources. One traceable decision. Deterministic reconciliation that keeps the rule, its version, and the evidence behind every match.

View project on GitHub
Matching
Exact, tolerance, and bounded split rules
Audit
Append-only decisions, human reviews, and XLSX exports
Repository snapshot
84 backend tests · 10 frontend tests · 2 browser scenarios · 86.42% backend coverage
reconcileflowDemo dataset
Matched 3Review 1Unmatched 1
Decision / RF-024SPLIT_MATCHED

$1,000.00

One source. Three matching records.

Target 01$500.00
Target 02$300.00
Target 03$200.00
Applied rule
bounded_split@1
Confidence
1.000000

amount delta 0.00 ≤ 0.50

currency equal

group size 3 ≤ 4

Synthetic demonstration data · not a live account

  • Python 3.12
  • FastAPI
  • PostgreSQL 17
  • Redis 8
  • Celery
  • React 19
  • TypeScript
  • Hypothesis

Quality figures are a repository snapshot, not live telemetry.

02 /Aeternis Log

Proof that outlives the data.

Keep records queryable. Make their integrity verifiable. MongoDB records become Merkle roots, anchored on Hyperledger Fabric for independent checks.

View project on GitHub
Integrity
Domain-separated SHA-256 Merkle proofs
Verification
Recompute off-chain data against the immutable anchor
Delivery
REST API, signed webhooks, Go and Python SDKs
aeternis logBAT-024

Four records. One verifiable root.

record 01record 02record 03record 04hash 01hash 02
Integrity verified8f41…d2c9

Recomputed root matches the Fabric anchor

Representative integrity proof · no live network connection

  • Go
  • Gin
  • MongoDB
  • Redis (optional)
  • Hyperledger Fabric
  • Raft
  • Go chaincode
  • Go and Python SDKs

Proof values are a representative demonstration, not a live blockchain connection.

03 /Workshop Management API

A business, modeled end to end.

From the first diagnosis to the final delivery. A service-order lifecycle built around explicit domain rules, with infrastructure kept at the edges.

View project on GitHub
Domain
Named state transitions and domain events
Reliability
Atomic service-order and inventory persistence
Delivery
Containers, autoscaling, infrastructure as code, and CI/CD
workshop / service orderWO-2048
From reception to deliveryExecuting
  1. Received
  2. Diagnosis
  3. Awaiting approval
  4. 04Executing
  5. 05Finished
  6. 06Delivered

A business process. Clear software boundaries.

PresentationHTTP / REST
ApplicationUse cases
DomainBusiness rules
InfrastructurePersistence / integrations

Independent from HTTP, PDO, and JWT

Representative service order · architecture grounded in the repository

  • PHP 8.2
  • DDD
  • Clean Architecture
  • MySQL 8
  • JWT HS256
  • PHPUnit 11
  • PHPStan level 8
  • OpenAPI 3
  • Docker
  • Nginx
  • Kubernetes
  • Terraform
  • GitHub Actions

04 /ChaosSQL

Turn chaos into a test.

Stress SQL workloads, check invariants, and shrink failing execution traces into focused reproductions. Concurrency bugs become evidence you can inspect.

View project on GitHub
Detection
Concurrent workloads, SQL invariants, and isolation anomalies
Reduction
Causal delta debugging narrows failing traces to focused reproductions
Delivery
Go testing SDK, standalone reproduction tests, HTML reports, and JUnit exports
chaossqlbanking_lost_update
Concurrent withdrawalsLost update / P4
StepTxOperationBalance
01T1Read balance1000
02T2Read balance1000
03T1Withdraw 50950
04T2Withdraw 100900

ledger_balance_consistency

Invariant violated

actual_balance == expected_balance
Actual balance
$900
Expected from ledger
$850

Two reads of 1000. One withdrawal overwritten.

TraceShrinkrepro_test.go

Synthetic illustration · no live database · balances are not measured output

  • Go 1.25
  • SQLite
  • PostgreSQL
  • MySQL
  • Seeded scheduling
  • Causal delta debugging
  • Go testing SDK
  • GitHub Actions

The lost-update illustration is synthetic, based on the repository’s banking scenario. No live database is connected.

Scenario outcomes depend on the database engine and isolation level.

The studio / the thinking behind the toolsConnect on LinkedIn

Small studio.
Deep technical curiosity.

Bregalda is an independent software studio founded by Ricardo Bregalda.

Bregalda — Build • Learn • Ship

Bregalda builds thoughtful tools for real technical problems.

Backend development, production troubleshooting, APIs, and distributed systems. Connected by a belief that good software should make complex things understandable.

A new problem. A new possibility.

Let’s build
something thoughtful.

Engineering roles, product work, or a freelance project.
A good conversation is where it starts.

Connect on LinkedIn