johba
1e5ac0de80
Merge pull request 'fix: Backtesting #6 : Baseline strategies (HODL, full-range, fixed-width) + reporting ( #320 )' ( #322 ) from fix/issue-320 into master
2026-02-26 18:02:54 +01:00
openhands
9061f8e8f6
fix: Address AI review findings for backtesting baseline strategies ( #320 )
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-26 16:39:47 +00:00
openhands
5205ea6f4a
fix: Backtesting #6 : Baseline strategies (HODL, full-range, fixed-width) + reporting ( #320 )
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-26 16:11:15 +00:00
johba
6526928b67
Merge pull request 'fix: Landing copy: fix immutable overclaim + sync Mixed variant floor copy ( #310 )' ( #311 ) from fix/issue-310 into master
2026-02-26 15:02:46 +01:00
openhands
143d6b202a
fix: Landing copy: fix immutable overclaim + sync Mixed variant floor copy ( #310 )
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-26 13:40:34 +00:00
johba
ed24a166ab
Merge pull request 'fix: Test coverage: Kraiken + VWAPTracker to 100% ( #283 )' ( #303 ) from fix/issue-283 into master
2026-02-26 06:34:08 +01:00
openhands
e9370c143e
fix: Test coverage: Kraiken + VWAPTracker to 100% ( #283 )
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-26 05:12:48 +00:00
johba
2baa913435
Merge pull request 'fix: Test coverage: Stake.sol to 100% ( #284 )' ( #298 ) from fix/issue-284 into master
2026-02-26 05:54:53 +01:00
openhands
cff95a3670
fix: Test coverage: Stake.sol to 100% ( #284 )
2026-02-26 04:28:47 +00:00
openhands
93ddd28978
fix: Test coverage: Stake.sol to 100% ( #284 )
...
Add 11 new targeted tests in Stake.t.sol to cover all reachable
uncovered branches and the untested permitAndSnatch() function:
- testRevert_TaxRateOutOfBounds_InSnatch: taxRate >= TAX_RATES.length in snatch()
- testRevert_PositionNotFound_NonLastInLoop: PositionNotFound inside the multi-position loop
- testRevert_TaxTooLow_NonLastInLoop: TaxTooLow inside the multi-position loop
- testSnatch_ExitLastPosition: _exitPosition() path for last snatched position
- testRevert_ExceededAvailableStake: no available stake, no positions provided
- testRevert_TooMuchSnatch_AvailableExceedsNeed: post-exit excess stake check
- testRevert_PositionNotFound_InChangeTax: changeTax() on non-existent position
- testRevert_TaxTooLow_InChangeTax: changeTax() with same/lower tax rate
- testRevert_NoPermission_InExitPosition: exitPosition() by non-owner
- testRevert_PositionNotFound_InPayTax: payTax() on non-existent position
- testPermitAndSnatch: EIP-712 permit + snatch in one transaction
Coverage achieved:
Lines: 99.33% (148/149)
Statements: 99.40% (167/168)
Branches: 93.55% (29/31) — 2 unreachable dead-code branches remain
Functions: 100.00% (15/15)
The 2 uncovered branches are dead code: the require() failure in
_shrinkPosition (caller always guards sharesToTake < pos.share) and
the PositionNotFound guard in exitPosition() (unreachable because
owner and creationTime are always set/cleared together, so
pos.owner==msg.sender implies pos.creationTime!=0 for any live caller).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-26 03:59:20 +00:00
johba
a7947c64c8
Merge pull request 'fix: Test coverage: LiquidityManager + Optimizer + OptimizerV3 to 100% ( #285 )' ( #296 ) from fix/issue-285 into master
2026-02-26 04:07:11 +01:00
openhands
9cce524b8a
fix: Test coverage: LiquidityManager + Optimizer + OptimizerV3 to 100% ( #285 )
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-26 02:41:02 +00:00
johba
b161b4ecfb
Merge pull request 'fix: kraiken-lib: fix broken tests + raise coverage to 95% ( #286 )' ( #293 ) from fix/issue-286 into master
2026-02-26 02:32:27 +01:00
openhands
dc95b2d22e
fix: kraiken-lib: fix broken tests + raise coverage to 95% ( #286 )
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-26 01:09:55 +00:00
openhands
2aa85f5a03
fix: CI failure in run-e2e-tests ( #286 )
2026-02-26 00:42:32 +00:00
openhands
e5bd4f29f7
fix: kraiken-lib: fix broken tests + raise coverage to 95% ( #286 )
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-26 00:42:21 +00:00
openhands
baa4ee2404
fix: CI failure in bootstrap ( #286 )
2026-02-26 00:27:23 +00:00
openhands
f23f6b81a6
fix: kraiken-lib: fix broken tests + raise coverage to 95% ( #286 )
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-26 00:27:12 +00:00
openhands
15b0c0e97b
fix: kraiken-lib: fix broken tests + raise coverage to 95% ( #286 )
2026-02-26 00:11:20 +00:00
openhands
26a9645b1f
fix: kraiken-lib: fix broken tests + raise coverage to 95% ( #286 )
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-26 00:10:45 +00:00
johba
cc064faa29
Merge pull request 'fix: Ponder: add test infrastructure + coverage for helpers (target 95%) ( #287 )' ( #288 ) from fix/issue-287 into master
2026-02-26 00:55:20 +01:00
openhands
16dc1827c9
fix: Ponder: add test infrastructure + coverage for helpers (target 95%) ( #287 )
...
- vitest.config.ts: add statements/functions/branches thresholds alongside
lines so the coverage gate catches regressions in all four dimensions
- tests/stats.test.ts: replace weak "> 0n" / "toBeDefined()" assertions with
exact expected values derived from the ring buffer algebra:
- hour-advanced path: mintedLastWeek=480n, mintedLastDay=220n,
burnedLastWeek=240n, burnedLastDay=110n, mintNextHourProjected=68n,
burnNextHourProjected=34n, netSupplyChangeDay=110n,
netSupplyChangeWeek=240n
- same-hour projection path: mintNextHourProjected=140n (elapsed-seconds
scaling verified), burnNextHourProjected=0n (medium=0 fallback path)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-25 23:28:25 +00:00
openhands
76560fd26b
fix: Ponder: add test infrastructure + coverage for helpers (target 95%) ( #287 )
...
- Add vitest ^2 + @vitest/coverage-v8 ^2 as devDependencies
- Add `test` and `test:coverage` scripts to package.json
- Create vitest.config.ts with resolve.alias to mock ponder virtual modules
(ponder:schema, ponder:registry) and point kraiken-lib/version to source
- Add coverage/ to .gitignore
- Add tests/**/* and vitest.config.ts to tsconfig.json include
- Create tests/__mocks__/ponder-schema.ts and ponder-registry.ts stubs
- Create tests/stats.test.ts — 48 tests covering ring buffer logic,
segment updates, hourly advancement, projections, ETH reserve snapshots,
all exported async helpers with mock Ponder contexts
- Create tests/version.test.ts — 14 tests covering isCompatibleVersion,
getVersionMismatchError, and validateContractVersion (compatible / mismatch /
error paths, existing-meta upsert path)
- Create tests/abi.test.ts — 6 tests covering validateAbi and validateContractAbi
Tests placed at tests/ (not src/tests/) so Ponder's Vite build does not
attempt to execute test files as event handlers on startup.
Result: 68 tests pass, 100% line/statement/function coverage on all helpers
(stats.ts, version.ts, abi.ts, logger.ts) — exceeds 95% target.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-25 22:53:01 +00:00
openhands
ad0670f8ae
fix: Ponder: add test infrastructure + coverage for helpers (target 95%) ( #287 )
2026-02-25 22:30:24 +00:00
openhands
e49938bd0a
fix: Ponder: add test infrastructure + coverage for helpers (target 95%) ( #287 )
...
- Add vitest ^2 + @vitest/coverage-v8 ^2 as devDependencies
- Add `test` and `test:coverage` scripts to package.json
- Create vitest.config.ts with resolve.alias to mock ponder virtual modules
(ponder:schema, ponder:registry) and point kraiken-lib/version to source
- Add coverage/ to .gitignore
- Add vitest.config.ts to tsconfig.json include so eslint project-aware rules apply
- Create src/tests/__mocks__/ponder-schema.ts and ponder-registry.ts stubs
- Create src/tests/stats.test.ts — 48 tests covering ring buffer logic,
segment updates, hourly advancement, projections, ETH reserve snapshots,
all exported async helpers with mock Ponder contexts
- Create src/tests/version.test.ts — 14 tests covering isCompatibleVersion,
getVersionMismatchError, and validateContractVersion (compatible / mismatch /
error paths, existing-meta upsert path)
- Create src/tests/abi.test.ts — 6 tests covering validateAbi and
validateContractAbi
Result: 68 tests pass, 100% line/statement/function coverage on all helpers
(stats.ts, version.ts, abi.ts, logger.ts) — exceeds 95% target.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-25 22:29:57 +00:00
johba
24b3cf2836
Merge pull request 'fix: Consolidate redundant/broken gitignore node_modules entries ( #204 )' ( #279 ) from fix/issue-204 into master
2026-02-25 22:42:30 +01:00
openhands
dd2e2ec25c
fix: Consolidate redundant/broken gitignore node_modules entries ( #204 )
...
Remove redundant `node_modules/` entries from sub-directory .gitignore
files. The root `.gitignore` already has `**/node_modules/` which covers
all nested directories, making these per-package entries unnecessary.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-25 21:13:16 +00:00
johba
352b31e10a
Merge pull request 'fix: Fix false claims on landing: "cant go to zero" + "open source" ( #269 )' ( #275 ) from fix/issue-269 into master
2026-02-25 22:01:43 +01:00
openhands
56d15a40f6
fix: Fix false claims on landing: "cant go to zero" + "open source" ( #269 )
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-25 20:33:01 +00:00
openhands
04e9d04df5
fix: Fix false claims on landing: "cant go to zero" + "open source" ( #269 )
2026-02-25 20:02:15 +00:00
openhands
ede53a9dd3
fix: Fix false claims on landing: "cant go to zero" + "open source" ( #269 )
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-25 20:02:02 +00:00
johba
d540e23ee1
Merge pull request 'fix: Landing: switch from hash routing to history routing (clean URLs) ( #270 )' ( #271 ) from fix/issue-270 into master
2026-02-25 20:56:00 +01:00
openhands
afaf675f2a
fix: Landing: switch from hash routing to history routing (clean URLs) ( #270 )
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-25 19:21:53 +00:00
johba
798382e9bf
Merge pull request 'fix: Fix collapse component formatting: taxPaid display, string coercion, BigInt precision ( #260 )' ( #266 ) from fix/issue-260 into master
2026-02-25 09:33:21 +01:00
openhands
91de4d9751
fix: Fix collapse component formatting: taxPaid display, string coercion, BigInt precision ( #260 )
2026-02-25 08:07:30 +00:00
openhands
ca8e4737fe
fix: Fix collapse component formatting: taxPaid display, string coercion, BigInt precision ( #260 )
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-25 08:06:49 +00:00
johba
f3383dce01
Merge pull request 'fix: Micro-fixes: dead comment, timer null, AbortController, address guard, catch reset ( #261 )' ( #263 ) from fix/issue-261 into master
2026-02-25 08:52:06 +01:00
openhands
d1d943e5fd
fix: Micro-fixes: dead comment, timer null, AbortController, address guard, catch reset ( #261 )
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-25 07:24:48 +00:00
johba
95955f23a3
Merge pull request 'fix: Dead comment in NavbarLayout.vue ( #258 )' ( #262 ) from fix/issue-258 into master
2026-02-25 08:11:05 +01:00
openhands
bef804ca80
fix: Dead comment in NavbarLayout.vue ( #258 )
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-25 06:42:34 +00:00
johba
9203b5c17a
Merge pull request 'fix: Remove unused components from web-app ( #242 )' ( #257 ) from fix/issue-242 into master
2026-02-25 07:36:21 +01:00
openhands
e394d68772
fix: Remove unused components from web-app ( #242 )
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-25 00:24:29 +00:00
johba
cbdc9a09da
Merge pull request 'fix: CollapseHistory: format profit display + fix package.json name for stable lock file ( #245 )' ( #253 ) from fix/issue-245 into master
2026-02-25 01:14:29 +01:00
openhands
ca68c339ed
fix: CollapseHistory: format profit display + fix package.json name for stable lock file ( #245 )
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-24 23:43:15 +00:00
johba
4b10dc91c3
Merge pull request 'fix: Move BigInt formatting functions from helper.ts to kraiken-lib/format ( #246 )' ( #250 ) from fix/issue-246 into master
2026-02-25 00:34:32 +01:00
openhands
1ee29c7ba7
ci: retrigger after infra failure
2026-02-24 23:12:46 +00:00
openhands
a96cdc8161
fix: Move BigInt formatting functions from helper.ts to kraiken-lib/format ( #246 )
2026-02-24 23:01:26 +00:00
openhands
8c43d3890c
fix: Move BigInt formatting functions from helper.ts to kraiken-lib/format ( #246 )
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-24 23:00:58 +00:00
johba
0f74cc8276
Merge pull request 'fix: Add aria-label attributes to landing buttons ( #243 )' ( #244 ) from fix/issue-243 into master
2026-02-24 23:42:33 +01:00
openhands
0a59ea5356
fix: Add aria-label attributes to landing buttons ( #243 )
2026-02-24 22:15:40 +00:00