Files
hatchet/hack/dev/compression-test/QUICKSTART.md
Sid Premkumar 709dd89a18 Add gzip compression (#2539)
* Add gzip compression init

* revert

* Feat: Initial cross-domain identify setup (#2533)

* feat: initial setup

* fix: factor out

* chore: lint

* fix: xss vuln

* feat: set up properly

* fix: lint

* fix: key

* fix: keys, cleanup

* Fix: use sessionStorage instead of localStorage (#2541)

* chore(deps): bump golang.org/x/crypto from 0.44.0 to 0.45.0 (#2545)

Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.44.0 to 0.45.0.
- [Commits](https://github.com/golang/crypto/compare/v0.44.0...v0.45.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-version: 0.45.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump google/osv-scanner-action/.github/workflows/osv-scanner-reusable-pr.yml (#2547)

Bumps [google/osv-scanner-action/.github/workflows/osv-scanner-reusable-pr.yml](https://github.com/google/osv-scanner-action) from 2.2.4 to 2.3.0.
- [Release notes](https://github.com/google/osv-scanner-action/releases)
- [Commits](https://github.com/google/osv-scanner-action/compare/v2.2.4...v2.3.0)

---
updated-dependencies:
- dependency-name: google/osv-scanner-action/.github/workflows/osv-scanner-reusable-pr.yml
  dependency-version: 2.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* [Go SDK] Resubscribe and get a new listener stream when gRPC connections fail (#2544)

* fix listener cache issue to resubscribe when erroring out

* worker retry message clarification (#2543)

* add another retry layer and add comments

* fix loop logic

* make listener channel retry

* Compression test utils, and add log to indicate its enabled

* clean + fix

* more fallbacks

* common pgxpool afterconnect method (#2553)

* remove

* lint

* lint

* add cpu monitor during test

* fix background monitor and lint

* Make envvar to disable compression

* cleanup monitoring

* PR Feedback

* Update paths in compression tests + bump package versions

* path issue on test script

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: matt <mrkaye97@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Mohammed Nafees <hello@mnafees.me>
2025-11-26 17:14:38 -05:00

1.3 KiB

Quick Start Guide

Build and Test (Current Branch)

  1. Set your environment variables:

    export HATCHET_CLIENT_TOKEN="your-token-here"
    export HATCHET_CLIENT_HOST_PORT="localhost:7070"  # Where your engine is running
    
  2. Build all images (from repo root):

    cd /path/to/hatchet
    ./hack/dev/compression-test/scripts/build_all.sh enabled
    
  3. Run all tests:

    cd hack/dev/compression-test
    ./scripts/run_all_tests.sh enabled
    
  4. Generate report:

    ./scripts/generate_report.sh
    

What You Need

  • HATCHET_CLIENT_TOKEN: Required - Your Hatchet API token
  • HATCHET_CLIENT_HOST_PORT: Required - Where your engine gRPC is running (e.g., localhost:7070)
  • Engine running: You need to have your Hatchet engine running separately (not managed by these scripts)

What Gets Tested

Each SDK (Go, TypeScript, Python) will:

  • Connect to your engine
  • Emit 600 events over 60 seconds (10 events/second)
  • Each event has a 100KB payload
  • Network traffic is measured and compared

Results

Results are saved in results/ directory:

  • results/enabled/ - Test results with compression
  • results/disabled/ - Test results without compression (run on main branch)

The final report shows bandwidth savings from compression.