Commit graph

295 commits

Author SHA1 Message Date
fefdd7c811 chore: bump version to 4.2.40 2026-01-29 10:41:22 -05:00
fbc998a750 chore: bump version to 4.2.39 2026-01-29 09:46:16 -05:00
4c2aec9862 fix(tests): retry on pattern mismatch (up to 3 times)
When API returns 200 but output doesn't match expected pattern,
retry up to 3 times. This handles cases where service operations
succeed but the service isn't fully ready yet.
2026-01-29 09:45:51 -05:00
GitLab CI
e3dbafb701 perf: Update aggregated performance analysis [ci skip] 2026-01-29 08:56:40 -05:00
GitLab CI
bd2461d4ef perf - Add performance report for 4.2.37 [ci skip] 2026-01-29 08:56:12 -05:00
c7d1fe14cd chore: bump version to 4.2.37 2026-01-29 08:21:04 -05:00
4e4ae3c911 fix: add shebangs to async SDK implementations
Add #!/usr/bin/env interpreter lines to async SDKs for portability:
- Python: #!/usr/bin/env python3
- JavaScript: #!/usr/bin/env node
- Ruby: #!/usr/bin/env ruby
- PHP: #!/usr/bin/env php
2026-01-29 06:09:44 -05:00
GitLab CI
6120f3585d perf: Update aggregated performance analysis [ci skip] 2026-01-28 21:04:35 -05:00
GitLab CI
859addd016 perf - Add performance report for 4.2.36 [ci skip] 2026-01-28 21:04:08 -05:00
092c88cab1 chore: bump version to 4.2.36 2026-01-28 18:40:21 -05:00
8da77c6dd1 feat(reports): add API health tracking to perf reports
- generate-perf-report.sh now collects api-health.json from test artifacts
- Aggregates retry counts by type (429, 5xx, timeout, connection)
- Calculates API health score (100 = perfect, decreases with retries)
- Adds API Health section to perf.md with interpretation guide
- aggregate-performance-reports.py now shows API health trends over time
- Tracks scientific integrity improvements starting from 4.2.34
2026-01-28 18:40:10 -05:00
ee43329a55 chore: bump version to 4.2.35 2026-01-28 18:33:17 -05:00
b651bf2b63 feat(tests): add transient error tracking for API health monitoring
Track retry counts by error type (429, 5xx, timeout, connection) and
output API Health Report at end of each test run. Writes api-health.json
for aggregation across all 42 SDKs.

This lets us monitor API reliability over time and identify patterns.
2026-01-28 18:33:04 -05:00
0db0c9be22 chore: bump version to 4.2.34 2026-01-28 18:26:23 -05:00
ab70e8b508 fix(tests): remove soft passes - tests must never lie
SCIENTIFIC INTEGRITY: Tests now retry transient errors (429, 5xx,
timeouts) with exponential backoff instead of falsely passing.

Prior to this fix, ~35% of 'passing' tests were masked failures.
Now tests will PASS (verified), FAIL (couldn't verify), or SKIP.
2026-01-28 18:26:23 -05:00
GitLab CI
2316595f6f perf: Update aggregated performance analysis [ci skip] 2026-01-28 17:24:35 -05:00
GitLab CI
eda673069f perf - Add performance report for 4.2.32 [ci skip] 2026-01-28 17:23:51 -05:00
GitLab CI
27725bc535 perf: Update aggregated performance analysis [ci skip] 2026-01-28 17:18:13 -05:00
GitLab CI
ccc9681982 perf - Add performance report for 4.2.31 [ci skip] 2026-01-28 17:17:45 -05:00
GitLab CI
be65c03eee perf: Update aggregated performance analysis [ci skip] 2026-01-28 17:16:59 -05:00
GitLab CI
ce03941151 perf - Add performance report for 4.2.30 [ci skip] 2026-01-28 17:16:33 -05:00
6997552307 chore: bump version to 4.2.31 2026-01-28 17:04:02 -05:00
23b47bfbf8 fix(qr): Groovy use qrencode CLI instead of ZXing 2026-01-28 17:03:58 -05:00
GitLab CI
50069440b4 perf: Update aggregated performance analysis [ci skip] 2026-01-28 15:40:40 -05:00
GitLab CI
257dc4cf6b perf - Add performance report for 4.2.29 [ci skip] 2026-01-28 15:40:14 -05:00
15f37c8acc chore: bump version to 4.2.29
Test QR code functional tests with updated container image.
2026-01-28 15:32:42 -05:00
bd91337584 fix(qr): Crystal use C FFI instead of qr-code shard
Crystal shards pre-cached during build aren't available for
single-file execution. Use @[Link("qrencode")] FFI instead.
2026-01-28 07:59:57 -05:00
edfe6dc865 fix(qr): Fortran dlopen FFI + Nim versioned library names
- Fortran: use dlopen/dlsym at runtime instead of direct linking
  (sandbox doesn't pass -lqrencode to gfortran)
- Both: try libqrencode.so.4, .so.3, .so in order
2026-01-28 07:41:29 -05:00
99ac93b2d5 fix(qr): update 4 failing language tests
- Perl: use Text::QRCode (pure Perl, pre-installed) instead of Imager::QRCode
- Elixir: try Erlang :qrcode module, fallback to CLI
- OCaml: use Unix.open_process_in (no ctypes in compiled mode)
- Fortran: direct C FFI binding (requires -lqrencode at link)
2026-01-28 07:04:21 -05:00
d517236663 fix(ci): match test/ directory in change detection (was tests/)
The QR test files live in test/ (singular) but detect-changes.sh
only matched tests/ (plural), causing the matrix to skip.
2026-01-28 06:43:41 -05:00
bec3f8c289 fix(qr): rewrite 7 failing language tests to use native C FFI
All use dlopen/dlsym to libqrencode.so (system-wide via gcc role):
- Haskell: System.Posix.DynamicLinker + foreign import ccall "dynamic"
- F#: Mono P/Invoke DllImport("libqrencode.so")
- COBOL: LINKAGE SECTION for proper struct pointer access
- Nim: dynlib module (loadLib/symAddr)
- Fortran: renamed dlclose binding to avoid symbol collision
- D: core.sys.posix.dlfcn (dlopen/dlsym)
- OCaml: Ctypes.foreign via ocamlfind #require
2026-01-27 19:53:21 -05:00
702b21f920 fix(qr): pass file path without -s flag for proper file execution
With -s, the un CLI treats the positional argument as inline code text.
Without -s, it reads the file from disk and auto-detects the language
from the extension. The QR test was failing across 18 languages because
test/qr.py was being interpreted as code (test divided by qr.py).
2026-01-27 19:15:56 -05:00
d7388d43ba feat: add QR code functional tests across 41 languages
Native QR generation for each language's ecosystem:
- 27 languages use package manager QR libraries (qrcode, rqrcode, ZXing, etc.)
- 10 languages use C FFI to libqrencode (dlopen, ISO_C_BINDING, @cImport, critcl)
- 2 shell languages use qrencode CLI (native shell paradigm)
- 1 language (Prolog) uses C FFI with CLI fallback

Section 9 added to test-sdk.sh with get_qr_file() mapping and
QR:unsandbox-qr-ok:ROWS pattern validation across the hydra matrix.
2026-01-27 18:24:54 -05:00
0f4755620f fix: make manual-burn-pool job visible with play button on pipelines 2026-01-25 09:35:44 -05:00
c59e69eb52 feat: add manual matrix trigger job for on-demand pool churn
- New 'manual-matrix-run' job with play button in GitLab UI
- Click to run full 42-language matrix without creating a tag
- Useful for load testing, pool churn, and QR lib testing
- Added --force-all flag to generate-matrix.sh
2026-01-25 08:14:17 -05:00
eeb1dcb3dc feat: add --show-freeze-page and --no-show-freeze-page CLI flags
Add CLI support for toggling the show_freeze_page service setting,
which controls whether frozen services display an HTML payment page
or return a JSON error response.

Updated 18 SDK implementations + CLI_SPEC.md documentation.
2026-01-25 04:28:24 -05:00
1b76be5277 fix: resolve merge conflicts in PERFORMANCE-HISTORY.md 2026-01-24 19:12:39 -05:00
8a8edbc65a perf: add aggregate report for 4.2.27 and 4.2.28 with new infrastructure context
- API and orchestrator now on dedicated infrastructure (separated from compute)
- Two pool types: Xeon (32 vCPU, 300GB RAM) and i9 (32 vCPU, 32GB RAM)
- 4.2.27: 119s avg, 4.2.28: 116s avg (-2.5%)
2026-01-24 19:07:11 -05:00
GitLab CI
54223ea9fe perf: Update aggregated performance analysis [ci skip] 2026-01-24 18:31:53 -05:00
GitLab CI
3b30c311ea perf - Add performance report for 4.2.28 [ci skip] 2026-01-24 18:31:29 -05:00
GitLab CI
128c19c878 perf: Update aggregated performance analysis [ci skip] 2026-01-24 18:28:02 -05:00
GitLab CI
484a9c78f3 perf - Add performance report for 4.2.27 [ci skip] 2026-01-24 18:27:37 -05:00
919890bbbd chore: bump version to 4.2.28 2026-01-24 18:17:07 -05:00
14c50efff6 chore: bump version to 4.2.27 2026-01-24 18:16:56 -05:00
08e7afc691 perf: add aggregate report for 4.2.25 and 4.2.26 [ci skip] 2026-01-24 18:14:26 -05:00
7dd432189d Delete AGGREGATED-PERFORMANCE.md 2026-01-24 23:13:03 +00:00
GitLab CI
ac59c105f9 perf: Update aggregated performance analysis [ci skip] 2026-01-24 16:08:30 -05:00
GitLab CI
35b2cd79fe perf - Add performance report for 4.2.26 [ci skip] 2026-01-24 16:08:09 -05:00
GitLab CI
b317065ea0 perf: Update aggregated performance analysis [ci skip] 2026-01-24 16:04:33 -05:00
GitLab CI
51cb91e915 perf - Add performance report for 4.2.25 [ci skip] 2026-01-24 16:04:07 -05:00