Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
316 commits
Select commit Hold shift + click to select a range
2844a28
feat(vault): wire reserve available liquidity and utilization (#1894)
jeremy-babylonlabs Jun 19, 2026
70ae9ba
fix(vault): recover from stale-deploy chunk 404s, not crash (#1882)
jrwbabylonlab Jun 19, 2026
b8447c4
feat(vault): redesign disconnected entry screen (#1900)
jeremy-babylonlabs Jun 19, 2026
737e40f
feat(vault): show projected post-borrow rate in borrow metrics card (…
jeremy-babylonlabs Jun 19, 2026
4a7c5ad
feat(ts-sdk): verify VP CWT bearer tokens, not just the wire envelope…
kirugan Jun 19, 2026
1542741
feat(vault): enable OKX wallet with deriveContextHash, consolidate wa…
jrwbabylonlab Jun 19, 2026
8e0e695
feat: entry page data (#1904)
jeremy-babylonlabs Jun 19, 2026
3313062
fix(wallet): wallet connect modal polish and fixes (#1901)
jonybur Jun 19, 2026
08e47f4
feat(vault): add subresource integrity hashes to built script assets …
jonybur Jun 19, 2026
dbf7027
fix(vault): validate ETH wallet addresses at the wallet boundary (#1860)
jonybur Jun 19, 2026
ef82274
fix(vault): persist confirmed settled refunds across reloads (#1902)
jrwbabylonlab Jun 22, 2026
fc0fe09
Revert "feat(vault): add subresource integrity hashes to built script…
jrwbabylonlab Jun 22, 2026
ca0959a
fix(vault): clear stale deposit warnings once the step succeeds (#1905)
jrwbabylonlab Jun 22, 2026
626f36f
feat(wallet-connector): remove border and background from wallet logo…
jonybur Jun 22, 2026
a2b007b
feat(packages): adds antialisign (#1928)
jonybur Jun 22, 2026
d19ce92
feat(vault): redesign connected dashboard Overview section (#1919)
jonybur Jun 22, 2026
58fc735
fix(refund): stop HTLC value mismatch crash (#1931)
gbarkhatov Jun 22, 2026
d2a92ec
feat(vault): render new pill design (#1923)
jonybur Jun 22, 2026
97a0445
fix(vault): restore footer horizontal padding to align with page chro…
jeremy-babylonlabs Jun 22, 2026
7291a9c
feat(vault): in-page disabled-deposit state and oversized-amount guar…
jeremy-babylonlabs Jun 22, 2026
dbe203f
feat(packages): improve wording of button (#1935)
jonybur Jun 22, 2026
91d8543
feat(vault): adds new activity page, UI cleanup (#1921)
jonybur Jun 22, 2026
b3bf87e
feat(vault): show compact deposit summary as initial signing screen (…
jeremy-babylonlabs Jun 22, 2026
a47c503
chore(core-ui): remove Telegram community link from footer (#1939)
jonybur Jun 22, 2026
6ddbc5c
feat(vault): show optimistic activating collateral (#1936)
gbarkhatov Jun 23, 2026
450bb95
ci(vault-publish): env scoping + correlation id for orchestrated rele…
toroviej0x0 Jun 23, 2026
b315443
chore(vault): add dev:testnet to run the app against testnet (#1934)
jrwbabylonlab Jun 24, 2026
5c78301
feat(wallet): always enable OKX and gate it on version >= 4.5.0 (#1929)
jrwbabylonlab Jun 24, 2026
6da3f74
feat(core-ui): add Notification severity primitive (#1956)
jeremy-babylonlabs Jun 24, 2026
90c5f37
fix(wallet-connector): route single-PSBT signPsbts through signPsbt f…
jrwbabylonlab Jun 24, 2026
6994d25
feat(vault): redesign deposit progress modal (#1944)
jeremy-babylonlabs Jun 24, 2026
6b160eb
feat(vault): critical near-liquidation top banner (#1960)
gbarkhatov Jun 24, 2026
1e43913
feat(vault): liquidation callout via the Notification primitive (#1961)
gbarkhatov Jun 24, 2026
dec1d68
feat(vault): make "protocol parameters don't compute" notification di…
gbarkhatov Jun 24, 2026
118ac27
feat(vault): sets new withdraw modal (#1941)
jonybur Jun 24, 2026
1f49f94
feat(vault): align reorder notification (#1965)
gbarkhatov Jun 25, 2026
87130f4
refactor(vault): rename suggested order to optimal (#1966)
gbarkhatov Jun 25, 2026
5e69bcb
feat(packages): improves display of data on split vault form (#1962)
jonybur Jun 25, 2026
b4c92d7
feat(vault): add operator-configurable notice banner (#1968)
kirugan Jun 25, 2026
986e06d
feat(vault): protocol soft/hard pause banners (#1969)
gbarkhatov Jun 26, 2026
825a526
feat(packages): pending withdrawal improvements (#1972)
jonybur Jun 26, 2026
f1d03ca
feat(packages): split vault copy revisions (#1967)
jonybur Jun 26, 2026
6f30dcb
feat(packages): changes copy of hardware wallets (#1963)
jonybur Jun 26, 2026
8c6069f
feat(vault): port reference liquidation calculator (#1970)
gbarkhatov Jun 26, 2026
091700d
feat(vault): max BTC Vaults per position notification + deposit guard…
gbarkhatov Jun 26, 2026
d362a7b
feat(vault): hide inscriptions toggle when wallet has none (#1942)
jrwbabylonlab Jun 29, 2026
281ab9a
feat/animation (#1978)
jeremy-babylonlabs Jun 29, 2026
b201b4c
feat(vault): align cliff liquidation notification to Figma and smooth…
gbarkhatov Jun 29, 2026
7f8fae0
fix(ts-sdk): drop client-side nbf/iat gating of VP bearer token (#1979)
jrwbabylonlab Jun 29, 2026
a5995e0
fix(wallet-connector): loop signPsbt when Utila omits batch signing (…
jrwbabylonlab Jun 29, 2026
4ef975c
feat(vault): surface position too small (#1981)
gbarkhatov Jun 29, 2026
33d016d
feat(packages): makes deposit card not clickable when finished (#1984)
jonybur Jun 30, 2026
407f945
feat(vault): freeze — disable reorder CTAs to complete entry-gating (…
gbarkhatov Jun 30, 2026
a735bd7
feat(packages): hides progress bar when progress is finished (#1985)
jonybur Jun 30, 2026
6802e43
feat(vault): updates repay, borrow and expired modals (#1982)
jonybur Jun 30, 2026
791f864
feat(vault): detect locked BTC wallet and prompt to unlock (#1973)
jonybur Jun 30, 2026
f566e7e
fix(vault): keep the deposit card inert while a refund is in flight (…
jrwbabylonlab Jun 30, 2026
e4ec5b6
feat(vault): pause per-scope on-chain detection and gate all exits (#…
gbarkhatov Jun 30, 2026
dc7aeb0
fix(vault): adds notifications for continuing signing (#1937)
jonybur Jun 30, 2026
ad2a9af
feat(vault): adds animation to sections (#1992)
jonybur Jul 1, 2026
a2a07f1
test(vault): cover failure branches on deposit and broadcast critical…
jonybur Jul 1, 2026
52093a5
feat(vault): add action CTA to pending deposit cards (#1993)
jonybur Jul 1, 2026
858eb9a
fix(vault): align user-facing copy with terminology style guide (#1996)
jrwbabylonlab Jul 1, 2026
8631a6b
feat(vault): drop the rebalance (#1997)
gbarkhatov Jul 1, 2026
92a093c
fix(vault): move payout-sent withdrawals to a Withdrawals section (#1…
jonybur Jul 1, 2026
b5b08d3
chore: cleanup entry screen (#1989)
jeremy-babylonlabs Jul 2, 2026
150d9da
chore: cleanup wallet connect modal (#1998)
jeremy-babylonlabs Jul 2, 2026
b024e6c
fix(vault): adds header to wallet connect modal (#2001)
jonybur Jul 2, 2026
9753482
feat(vault): add dev-only god-mode demo panel (#1995)
jonybur Jul 2, 2026
31e5d1f
test(wallet-connector): add real-extension E2E wallet importers (unis…
gbarkhatov Jul 2, 2026
355091f
test(vault): add interactive real-wallet E2E CLI for the connect flow…
gbarkhatov Jul 2, 2026
2a369ef
fix(vault): fix small icon bug (#2002)
jonybur Jul 2, 2026
05077ba
fix: borrow repay figma (#2003)
jeremy-babylonlabs Jul 6, 2026
1331157
chore(vault): make gRPC artifact auth always-on, remove feature flag …
kirugan Jul 6, 2026
8dce6d4
feat(vault): hide overview panel when position is empty (#1991)
jonybur Jul 6, 2026
c6c39e8
fix(vault): align the vault-activated success screen with the design …
jonybur Jul 7, 2026
e11d5fb
feat(vault): redesign artifact modal (#1775)
kirugan Jul 7, 2026
97a7da3
feat(packages): removes incorrect vault actiavted screen (#2009)
jonybur Jul 7, 2026
0e38f71
feat(vault): set correct download modal (#2010)
jonybur Jul 7, 2026
09dbbaf
fix(vault): validate large artifact responses by envelope prefix (#1943)
kirugan Jul 8, 2026
c4fbf86
fix(vault): pin prefix-truncation behavior in artifact envelope valid…
kirugan Jul 8, 2026
a0b33ae
test(vault): automate a real signet peg-in end-to-end in the real-wal…
gbarkhatov Jul 8, 2026
ac85de8
test(vault): add two-vault (split) peg-in to the real-wallet E2E CLI …
gbarkhatov Jul 9, 2026
b85c4ab
feat(vault): env var to disable BTC wallets (#2026)
gbarkhatov Jul 10, 2026
1911cc3
feat(vault): add security headers and extract process polyfill (#1859)
jonybur Jul 13, 2026
14c069b
feat(vault): gate the v3 UI behind an ENABLE_V3_UI feature flag (#2021)
jeremy-babylonlabs Jul 13, 2026
a059773
feat(vault): derive the deposit time estimate from on-chain depth (#2…
jrwbabylonlab Jul 14, 2026
2ed2526
test(vault): borrow E2E CLI (#2033)
gbarkhatov Jul 14, 2026
1acc433
feat(vault): expand god mode to walk the deposit flow and simulate ac…
jonybur Jul 14, 2026
96bcca0
chore(vault): remove dead code from services/vault (#2045)
jrwbabylonlab Jul 14, 2026
a55589f
fix(vault): surface deposit fee/wallet failures instead of spinning (…
jrwbabylonlab Jul 14, 2026
710d7be
fix(vault): allow Google Fonts stylesheets in the CSP style-src (#2047)
jonybur Jul 14, 2026
36c1565
fix(vault): enable Sentry in deployed builds, close binary redaction …
jonybur Jul 15, 2026
9aa7f1f
fix(vault): center the disconnected landing screen with margin auto (…
jonybur Jul 15, 2026
98423b6
chore(vault): remove the Deposit BTC button from the navbar (#2030)
jonybur Jul 15, 2026
e286e1a
test(vault): repay E2E CLI (#2049)
gbarkhatov Jul 15, 2026
99931e8
fix(vault): scrub vault-secret carrier keys by name in Sentry telemet…
jonybur Jul 15, 2026
7dab057
feat(vault): add depositor funnel event tracking (Phase 1) to Sentry …
jonybur Jul 15, 2026
06876b4
feat(vault): 2015 left sidebar navigation rail (#2023)
jeremy-babylonlabs Jul 16, 2026
7a712f4
feat(vault): 2017 restructure to flat v3 page routes behind ENABLE_V3…
jeremy-babylonlabs Jul 16, 2026
4097d91
chores(vault): 2019 light dark theme audit (#2046)
jeremy-babylonlabs Jul 16, 2026
371aed0
fix(vault): gate Activate when the activation deadline has passed (#1…
jrwbabylonlab Jul 16, 2026
38fa2b8
feat(vault): add v3 position summary overview (#2035) (#2050)
jeremy-babylonlabs Jul 16, 2026
36eb252
feat(wasm): swap to the vault-wasm multi-version facade, pinned to gr…
jrwbabylonlab Jul 16, 2026
6d15a92
feat: health factor and risk card (#2056)
jeremy-babylonlabs Jul 16, 2026
1219646
test(vault): withdraw E2E CLI (#2055)
gbarkhatov Jul 16, 2026
559067b
fix(vault): derive the mempool API path from the BTC network (#2060)
jrwbabylonlab Jul 16, 2026
ef404a8
fix(wallet-connector): disable Base Account SDK telemetry injection (…
jonybur Jul 16, 2026
a1c8f46
feat(vault): add depositor funnel failure tracking (Phase 2) to Sentr…
jonybur Jul 16, 2026
6023366
fix(vault): proxy sidecar API through the dev server (#2076)
jonybur Jul 16, 2026
6adaa64
feat(vault): source tx-graph versions from chain at every build site …
jrwbabylonlab Jul 17, 2026
f02f361
fix(vault): preserve small borrow percentages (#2084)
jeremy-babylonlabs Jul 17, 2026
dbc2588
feat(vault): v3 deposit entry surface behind ENABLE_V3_UI (#2085)
jeremy-babylonlabs Jul 17, 2026
67d6722
feat(sdk): route single-PSBT signing to signPsbt for all wallets (#2087)
jrwbabylonlab Jul 17, 2026
7458233
test(vault): e2e resume, self-provisioning setup, 24 words support (#…
gbarkhatov Jul 17, 2026
2221a1f
fix(vault): unwrap the sidecar response envelope in fetchLogos (#2089)
jonybur Jul 17, 2026
7fa1f0e
feat(vault): pass the Sentry tunnel URL through to CI builds (#2077)
jonybur Jul 17, 2026
1911824
feat(vault): add on-chain funnel terminals (Phase 3) to Sentry (#2069)
jonybur Jul 20, 2026
d68db49
feat(vault): seizure map & timeline charts components (#2093)
jeremy-babylonlabs Jul 20, 2026
92e4087
fix(vault): keep deposit slider interactive when max is below the min…
jonybur Jul 21, 2026
a14c46f
feat(vault): add base Banner (#2090)
jeremy-babylonlabs Jul 21, 2026
5efc552
feat(vault): make tx-graph v2 deposits correct and fail closed (#2086)
jrwbabylonlab Jul 21, 2026
05088e6
fix(vault): make the funnel failure captures reachable, quiet and sha…
jonybur Jul 21, 2026
2a2e18f
feat(vault): v3 loans page (#2100)
gbarkhatov Jul 22, 2026
0e7a804
feat(vault): wots poll 90 minutes (#2096)
gbarkhatov Jul 22, 2026
2d7977f
feat(vault): v3 notifications & protocol status (#2092)
jeremy-babylonlabs Jul 22, 2026
07faf3f
feat(vault): v3 Vaults page (#2095)
jonybur Jul 22, 2026
160345e
fix(vault): surface the pending wallet approval on resume WOTS submit…
jrwbabylonlab Jul 22, 2026
fda2941
feat(vault): v3 activity page (#2117)
gbarkhatov Jul 22, 2026
5388a53
feat(vault): add daemon and pegout terminal events (Phase 4) to Sentr…
jonybur Jul 22, 2026
7d77a83
feat(vault): liquidation analysis card on the v3 overview (#2118)
jeremy-babylonlabs Jul 22, 2026
57fe66c
fix(vault): v3 deposit flow polish and shared modal shell (#2121)
jeremy-babylonlabs Jul 23, 2026
1770d27
feat(vault): show god mode panel on v3 Activity and Loans pages (#2124)
gbarkhatov Jul 23, 2026
3b4cf1d
fix(vault): show the vaults empty state while a deposit is pending (#…
jeremy-babylonlabs Jul 23, 2026
e86059f
Fix aave repay stale rpc hardening (#2122)
jrwbabylonlab Jul 24, 2026
37f24ef
fix: empty state (#2123)
jeremy-babylonlabs Jul 24, 2026
675de90
chore(ci): drop the dead FF_SIMPLIFIED_TERMS pass-through (#2132)
jrwbabylonlab Jul 24, 2026
09fe50c
feat(vault): god-mode improvement for the v3 Loans and Activity (#2128)
jeremy-babylonlabs Jul 24, 2026
f429231
fix(vault): verify vBTC reserve ID on-chain to block indexer poisonin…
gbarkhatov Jul 24, 2026
5acbc9f
fix(vault): gate empty Liquidations and Explore tabs behind FF (#2133)
jeremy-babylonlabs Jul 24, 2026
c088194
fix(vault): stop two expected conditions from flooding Sentry (#2131)
jonybur Jul 24, 2026
26cc341
fix(vault): tighten index.html meta CSP (#2127)
jonybur Jul 24, 2026
8d33e1c
feat(vault): add artifact and provider-list telemetry (Phase 5) to Se…
jonybur Jul 24, 2026
2a44948
fix(vault): verify Aave proxy contract on-chain to block indexer pois…
gbarkhatov Jul 24, 2026
0b13fad
fix(vault): align v3 activity, loan and modal (#2130)
jeremy-babylonlabs Jul 24, 2026
46a58ee
feat(vault): promote funnel facets to Sentry tags (#2136)
jonybur Jul 27, 2026
8e5c8f5
feat(vault): unify operator banner message into a single flag (#2142)
gbarkhatov Jul 27, 2026
87cd412
fix(vault): share optimistic step completions across nested polling p…
jonybur Jul 27, 2026
20847f2
fix(vault): show friendly copy for insufficient-ETH-for-gas errors (#…
jrwbabylonlab Jul 28, 2026
47f0b62
fix(vault): report a repay shortfall as a balance problem (#2138)
jrwbabylonlab Jul 28, 2026
965337f
feat(vault): add v3 Explore page with partner app grid (#2144)
gbarkhatov Jul 28, 2026
11d83a0
test(vault): raise waitFor ceiling for cold async-gated renders (#2147)
jrwbabylonlab Jul 28, 2026
b4474f4
refactor(sdk): drop unused Aave exports (#2146)
jrwbabylonlab Jul 28, 2026
bb97844
fix(vault): anchor risk rail gradient on the liquidation price (#2149)
jeremy-babylonlabs Jul 29, 2026
2c604cc
feat(vault): add Market Info action and borrowing markets page shell …
jeremy-babylonlabs Jul 29, 2026
20b7a3c
fix(vault): resolve loan reserves by on-chain id, not indexer symbol …
gbarkhatov Jul 29, 2026
35d90ba
fix(vault): don't label RPC/node errors (#2155)
jrwbabylonlab Jul 29, 2026
7fbc82e
deposit terms seam hardening (#2154)
jrwbabylonlab Jul 29, 2026
a5e3bfa
docs(security): add SECURITY.md (#2152)
kirugan Jul 29, 2026
641daa3
fix(wallet-connector): render wallet marks per the design system (#2157)
jeremy-babylonlabs Jul 30, 2026
f5f3636
feat: borrow market data details (#2158)
jeremy-babylonlabs Jul 30, 2026
36ed853
feat(vault): hide the Explore page behind a feature flag (#2164)
gbarkhatov Jul 30, 2026
9c60d26
feat(vault): rename the per-loan 'Borrow' button to 'Borrow more' (#2…
jrwbabylonlab Jul 30, 2026
eb6cd37
fix(vault): read an EVM out-of-funds halt as insufficient ETH (#2167)
jrwbabylonlab Jul 31, 2026
396a85f
chore(vault): gate the market detail page behind a feature flag (#2166)
jeremy-babylonlabs Jul 31, 2026
e983ec6
fix(vault): validate, bind and durably save the recovery artifact bun…
gbarkhatov Jul 31, 2026
9a33221
feat(vault): address the market detail page by token symbol (#2171)
jeremy-babylonlabs Aug 3, 2026
593bacf
fix(vault): bound the WOTS submission suppression with a TTL (#2145)
jonybur Aug 3, 2026
dc45874
refactor(vault): render the liquidation charts with visx (#2160)
jonybur Aug 3, 2026
ed5227f
feat(ts-sdk): band the payout implicit fee between floor and ceiling …
jrwbabylonlab Aug 4, 2026
0574a45
feat(vault): liquidation dashboard page (#2151)
jeremy-babylonlabs Aug 4, 2026
10fb521
fix(vault): restore network requests on browsers without AbortSignal.…
jonybur Aug 4, 2026
f8aaaa7
feat(ts-sdk, vault): resolve participant BTC keys by epoch (RFC-006) …
gbarkhatov Aug 5, 2026
bc3d122
chore(vault): retire the ENABLE_V3_UI feature flag and delete the v2 …
jeremy-babylonlabs Aug 5, 2026
a66a268
fix(ts-sdk, vault): recover from rejected vault provider tokens witho…
gbarkhatov Aug 5, 2026
637fe86
fix(ts-sdk, vault): accept a rotated vault provider key on the refund…
gbarkhatov Aug 5, 2026
34dca70
fix(vault): stop reporting wallet cancellations and extension errors …
jonybur Aug 5, 2026
1e2ae10
fix(vault): align the light theme tokens to the v3 Figma palette (#2189)
jeremy-babylonlabs Aug 6, 2026
d453bb6
feat(core-ui): line-chart primitive on a shared chart foundation (#2194)
jeremy-babylonlabs Aug 6, 2026
13f089f
feat(vault): replace the entry screen with the v3 design (#2193)
jeremy-babylonlabs Aug 6, 2026
206a7c6
fix(vault): name the deposit action in the locked-wallet CTA (#2199)
jonybur Aug 6, 2026
b5f67f2
refactor(vault): read protocol params non-blockingly in the pegin pol…
jonybur Aug 6, 2026
a27a995
feat(ts-sdk): align deposit terms with btc-vault and pin payout tx li…
jrwbabylonlab Aug 7, 2026
ab3bf5b
chore(repo): remove environment variables and build config nothing re…
jonybur Aug 7, 2026
c424a93
fix(vault): line up the vault list rows and let their text fit (#2200)
jonybur Aug 7, 2026
7438b4d
fix(vault): correct Chainlink staleness and Aave borrow arithmetic (#…
jonybur Aug 7, 2026
8799fb7
test(ci): flag when a PR changes how the UI looks (#2180)
jonybur Aug 7, 2026
1caac99
fix(wallet-connector): stop gating the ETH AppKit wallet on window.et…
jonybur Aug 7, 2026
7e21eac
feat(vault): borrow rate history and interest rate model charts (#2204)
jeremy-babylonlabs Aug 7, 2026
3393175
feat(vault): add activate-and-redeem escape hatch for stuck verified …
jonybur Aug 10, 2026
6f9868a
fix(ts-sdk, vault): read the vault provider genesis key at epoch 0 (#…
gbarkhatov Aug 11, 2026
7c0a770
chore(vault): name the vault-provider key mocks for the getter they s…
gbarkhatov Aug 11, 2026
85732fe
fix(vault): check the application status before revealing the HTLC se…
gbarkhatov Aug 11, 2026
46a7290
fix(vault): disable borrow and repay while the protocol scope is paus…
jeremy-babylonlabs Aug 12, 2026
e1ebecf
fix(ts-sdk): assert operation-key multicall results are roster-aligne…
gbarkhatov Aug 12, 2026
90d1e6c
test(ts-sdk): rfc006 resume key guard (#2226)
gbarkhatov Aug 12, 2026
6267626
docs(ts-sdk): correct the assertPayoutOutputLayout JSDoc (#2225)
gbarkhatov Aug 12, 2026
d9131b9
fix(vault): stop blaming the vault provider for ack-timeout expiries …
jonybur Aug 12, 2026
33f2fee
feat(wallet-connector): add the Ledger vault provider over the DMK (#…
jrwbabylonlab Aug 12, 2026
9043d6e
feat(ci): show before and after screenshots in the pull request comme…
jonybur Aug 12, 2026
d51ff88
Extract ledger vault signer (#2236)
jrwbabylonlab Aug 13, 2026
1ae9efc
chore(ts-sdk): stop the generated API docs drifting (#2227)
gbarkhatov Aug 13, 2026
4c658f5
feat(ledger-vault-signer): vendor ledger-bitcoin byte primitives for …
jrwbabylonlab Aug 13, 2026
0ee57e2
feat(ts-sdk): thread the intent ceremony through the Pre-PegIn broadc…
jrwbabylonlab Aug 13, 2026
a22bf88
Add security model file (#2198)
kirugan Aug 13, 2026
d07097c
ci: publish frontend checksum manifest as immutable release asset (#2…
toroviej0x0 Aug 13, 2026
23d7888
chore(ledger-vault-signer): address #2238 review (#2247)
jrwbabylonlab Aug 14, 2026
65aba77
ci(release): retry manifest verify probe to absorb release CDN propag…
mpastecki Aug 14, 2026
1bbfc3d
test(vault): e2e v3 ui (#2250)
gbarkhatov Aug 14, 2026
2a8cc13
Feat/vault resume terms rebuild (#2253)
jrwbabylonlab Aug 14, 2026
cee428b
Merge pull request #2254 from babylonlabs-io/ci/manifest-verify-retry
mpastecki Aug 14, 2026
49c22f0
feat(ledger-vault-signer): vendor the PSBTv2 map layer with golden ga…
jrwbabylonlab Aug 14, 2026
808de92
fix(ci): publish the desktop before/after pictures at full size (#2249)
jonybur Aug 14, 2026
1723f7e
fix(ci): make the visual check photograph the vault app, not its erro…
jonybur Aug 14, 2026
334da53
fix(vault): left-align the entry footer logo (#2246)
jeremy-babylonlabs Aug 15, 2026
447fbe2
Feat/ledger sign psbt b1b (#2259)
jrwbabylonlab Aug 15, 2026
c9935f5
fix(vault): show a branded link preview card (#2261)
jonybur Aug 16, 2026
ed62bc4
Chore/fixture provenance rule (#2260)
jrwbabylonlab Aug 16, 2026
65b8c2a
refactor(vault): move god mode behind a production-owned override sea…
jeremy-babylonlabs Aug 17, 2026
1711e19
feat(vault): align tooltip copy with the Figma tooltips page (#2263)
jeremy-babylonlabs Aug 17, 2026
0dd433a
Feat/ledger sign psbt e2e (#2264)
jrwbabylonlab Aug 18, 2026
bb8a07f
feat(vault): wait 8 ETH confirmations before prepegin (#2266)
gbarkhatov Aug 18, 2026
4d71813
test(vault): make the visual check look at the real app, and at the d…
jonybur Aug 18, 2026
4fe4185
fix(vault): stop reading "vault not found" for a lagging RPC node (#2…
gbarkhatov Aug 18, 2026
49110ec
feat(wallet-connector): let an app offer a wallet without demanding i…
jonybur Aug 18, 2026
83991a9
fix(vault): move the split minimum notice into the split options pane…
jonybur Aug 18, 2026
7226993
fix(wallet-connector): set up Bitcoin curve support inside the connec…
jonybur Aug 18, 2026
4bf3677
fix(e2e): restore unisat (#2271)
gbarkhatov Aug 18, 2026
c9a1539
feat(ts-sdk, vault): gate Activate on the peg-in activation delay (#2…
jrwbabylonlab Aug 19, 2026
7b09fde
feat(ledger-vault-signer): wire provider signPsbt/signPsbts onto sign…
jrwbabylonlab Aug 19, 2026
81f6437
perf(vault): cache the IRM curve read and stop per-minute polling (#2…
jeremy-babylonlabs Aug 19, 2026
3349d42
fix(vault): let the risk price rail shrink with the card (#2275)
jeremy-babylonlabs Aug 19, 2026
795b4dc
ci(release): drive the integrity-manifest publish off the Releases AP…
filippos47 Aug 19, 2026
add68b2
feat(ts-sdk): reconstruct peg-in parameters from a stranded pre-pegin…
gbarkhatov Aug 20, 2026
e4372d4
feat(vault): rebuild DepositTerms on presign resume; map typed deposi…
jrwbabylonlab Aug 21, 2026
06cd4cf
feat(ts-sdk, vault): reach the refund from a reconstruction (#2291)
gbarkhatov Aug 21, 2026
183e322
fix(ci): show the before and after pictures even when the set is larg…
jonybur Aug 21, 2026
67d2de3
fix(release): publish the real version of each sibling package (#2273)
jonybur Aug 21, 2026
f3c5854
feat(wasm): add tx-graph v3 support (#2294)
gbarkhatov Aug 21, 2026
861c1e1
Feat/ledger pop wallet policy (#2281)
jrwbabylonlab Aug 21, 2026
c6e2a5d
chore(vault): retire the market detail page flag (#2287)
jeremy-babylonlabs Aug 21, 2026
b5b70ad
feat(vault): deposit cluster restyle (#2285)
jeremy-babylonlabs Aug 21, 2026
4e68fb7
fix(vault): move the max-vaults notice below the Position section (#2…
jeremy-babylonlabs Aug 21, 2026
5a987e0
fix(vault): stop the collateral stat column collapsing under its labe…
jeremy-babylonlabs Aug 23, 2026
83d6fc7
feat(vault): chart the live position on the embedded liquidation prev…
jeremy-babylonlabs Aug 23, 2026
d44a191
feat(vault): per-row USD value and live deposit status on the Activit…
jeremy-babylonlabs Aug 23, 2026
bc760c9
refactor(vault): reorganize the god-mode panel into surface tabs (#2297)
jeremy-babylonlabs Aug 23, 2026
0831b13
feat(ledger-vault, vault): typed device errors, signing cancel, no ve…
jrwbabylonlab Aug 23, 2026
6211eca
feat(ts-sdk): verify P2WPKH depositor signatures host-side (#2299)
jrwbabylonlab Aug 24, 2026
4ccda5a
fix(vault, ledger-vault): stop the payout loop on cancel; honest canc…
jrwbabylonlab Aug 24, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
127 changes: 127 additions & 0 deletions .agents/skills/link-workspace-packages/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,127 @@
---
name: link-workspace-packages
description: 'Link workspace packages in monorepos (npm, yarn, pnpm, bun). USE WHEN: (1) you just created or generated new packages and need to wire up their dependencies, (2) user imports from a sibling package and needs to add it as a dependency, (3) you get resolution errors for workspace packages (@org/*) like "cannot find module", "failed to resolve import", "TS2307", or "cannot resolve". DO NOT patch around with tsconfig paths or manual package.json edits - use the package manager''s workspace commands to fix actual linking.'
---

# Link Workspace Packages

Add dependencies between packages in a monorepo. All package managers support workspaces but with different syntax.

## Detect Package Manager

Check whether there's a `packageManager` field in the root-level `package.json`.

Alternatively check lockfile in repo root:

- `pnpm-lock.yaml` → pnpm
- `yarn.lock` → yarn
- `bun.lock` / `bun.lockb` → bun
- `package-lock.json` → npm

## Workflow

1. Identify consumer package (the one importing)
2. Identify provider package(s) (being imported)
3. Add dependency using package manager's workspace syntax
4. Verify symlinks created in consumer's `node_modules/`

---

## pnpm

Uses `workspace:` protocol - symlinks only created when explicitly declared.

```bash
# From consumer directory
pnpm add @org/ui --workspace

# Or with --filter from anywhere
pnpm add @org/ui --filter @org/app --workspace
```

Result in `package.json`:

```json
{ "dependencies": { "@org/ui": "workspace:*" } }
```

---

## yarn (v2+/berry)

Also uses `workspace:` protocol.

```bash
yarn workspace @org/app add @org/ui
```

Result in `package.json`:

```json
{ "dependencies": { "@org/ui": "workspace:^" } }
```

---

## npm

No `workspace:` protocol. npm auto-symlinks workspace packages.

```bash
npm install @org/ui --workspace @org/app
```

Result in `package.json`:

```json
{ "dependencies": { "@org/ui": "*" } }
```

npm resolves to local workspace automatically during install.

---

## bun

Supports `workspace:` protocol (pnpm-compatible).

```bash
cd packages/app && bun add @org/ui
```

Result in `package.json`:

```json
{ "dependencies": { "@org/ui": "workspace:*" } }
```

---

## Examples

**Example 1: pnpm - link ui lib to app**

```bash
pnpm add @org/ui --filter @org/app --workspace
```

**Example 2: npm - link multiple packages**

```bash
npm install @org/data-access @org/ui --workspace @org/dashboard
```

**Example 3: Debug "Cannot find module"**

1. Check if dependency is declared in consumer's `package.json`
2. If not, add it using appropriate command above
3. Run install (`pnpm install`, `npm install`, etc.)

## Notes

- Symlinks appear in `<consumer>/node_modules/@org/<package>`
- **Hoisting differs by manager:**
- npm/bun: hoist shared deps to root `node_modules`
- pnpm: no hoisting (strict isolation, prevents phantom deps)
- yarn berry: uses Plug'n'Play by default (no `node_modules`)
- Root `package.json` should have `"private": true` to prevent accidental publish
318 changes: 318 additions & 0 deletions .agents/skills/monitor-ci/SKILL.md

Large diffs are not rendered by default.

108 changes: 108 additions & 0 deletions .agents/skills/monitor-ci/references/fix-flows.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,108 @@
# Detailed Status Handling & Fix Flows

## Status Handling by Code

### fix_auto_apply_skipped

The script returns `autoApplySkipReason` in its output.

1. Report the skip reason to the user (e.g., "Auto-apply was skipped because the previous CI pipeline execution was triggered by Nx Cloud")
2. Offer to apply the fix manually — spawn UPDATE_FIX subagent with `APPLY` if user agrees
3. Record `last_cipe_url`, enter wait mode

### fix_apply_ready

- Spawn UPDATE_FIX subagent with `APPLY`
- Record `last_cipe_url`, enter wait mode

### fix_needs_local_verify

The script returns `verifiableTaskIds` in its output.

1. **Detect package manager:** `pnpm-lock.yaml` → `pnpm nx`, `yarn.lock` → `yarn nx`, otherwise `npx nx`
2. **Run verifiable tasks in parallel** — spawn `general` subagents for each task
3. **If all pass** → spawn UPDATE_FIX subagent with `APPLY`, enter wait mode
4. **If any fail** → Apply Locally + Enhance Flow (see below)

### fix_needs_review

Spawn FETCH_HEAVY subagent, then analyze fix content (`suggestedFixDescription`, `suggestedFixSummary`, `taskFailureSummaries`):

- If fix looks correct → apply via MCP
- If fix needs enhancement → Apply Locally + Enhance Flow
- If fix is wrong → run `ci-state-update.mjs gate --gate-type local-fix`. If not allowed, print message and exit. Otherwise → Reject + Fix From Scratch Flow

### fix_failed / no_fix

Spawn FETCH_HEAVY subagent for `taskFailureSummaries`. Run `ci-state-update.mjs gate --gate-type local-fix` — if not allowed, print message and exit. Otherwise attempt local fix (counter already incremented by gate). If successful → commit, push, enter wait mode. If not → exit with failure.

### environment_issue

1. Run `ci-state-update.mjs gate --gate-type env-rerun --env-rerun-count <env_rerun_count> --env-rerun-attempts <env_rerun_attempts>`. If not allowed, print message and exit.
2. Spawn UPDATE_FIX subagent with `RERUN_ENVIRONMENT_STATE`
3. Enter wait mode with `last_cipe_url` set

### self_healing_throttled

Spawn FETCH_HEAVY subagent for `selfHealingSkipMessage`.

1. **Parse throttle message** for CI Attempt URLs (regex: `/cipes/{id}`)
2. **Reject previous fixes** — for each URL: spawn FETCH_THROTTLE_INFO to get `shortLink`, then UPDATE_FIX with `REJECT`
3. **Attempt local fix**: Run `ci-state-update.mjs gate --gate-type local-fix`. If not allowed → skip to step 4. Otherwise use `failedTaskIds` and `taskFailureSummaries` for context.
4. **Fallback if local fix not possible or budget exhausted**: push empty commit (`git commit --allow-empty -m "ci: rerun after rejecting throttled fixes"`), enter wait mode

### no_new_cipe

1. Report to user: no CI attempt found, suggest checking CI provider
2. If `--auto-fix-workflow`: detect package manager, run install, commit lockfile if changed, enter wait mode
3. Otherwise: exit with guidance

### cipe_no_tasks

1. Report to user: CI failed with no tasks recorded
2. Retry: `git commit --allow-empty -m "chore: retry ci [monitor-ci]"` + push, enter wait mode
3. If retry also returns `cipe_no_tasks`: exit with failure

## Fix Action Flows

### Apply via MCP

Spawn UPDATE_FIX subagent with `APPLY`. New CI Attempt spawns automatically. No local git ops.

### Apply Locally + Enhance Flow

1. `nx-cloud apply-locally <shortLink>` (sets state to `APPLIED_LOCALLY`)
2. Enhance code to fix failing tasks
3. Run failing tasks to verify
4. If still failing → run `ci-state-update.mjs gate --gate-type local-fix`. If not allowed, commit current state and push (let CI be final judge). Otherwise loop back to enhance.
5. If passing → commit and push, enter wait mode

### Reject + Fix From Scratch Flow

1. Run `ci-state-update.mjs gate --gate-type local-fix`. If not allowed, print message and exit.
2. Spawn UPDATE_FIX subagent with `REJECT`
3. Fix from scratch locally
4. Commit and push, enter wait mode

## Environment vs Code Failure Recognition

When any local fix path runs a task and it fails, assess whether the failure is a **code issue** or an **environment/tooling issue** before running the gate script.

**Indicators of environment/tooling failures** (non-exhaustive): command not found / binary missing, OOM / heap allocation failures, permission denied, network timeouts / DNS failures, missing system libraries, Docker/container issues, disk space exhaustion.

When detected → bail immediately without running gate (no budget consumed). Report that the failure is an environment/tooling issue, not a code bug.

**Code failures** (compilation errors, test assertion failures, lint violations, type errors) are genuine candidates for local fix attempts and proceed normally through the gate.

## Git Safety

- Stage specific files by name — `git add -A` or `git add .` risks committing the user's unrelated work-in-progress or secrets

## Commit Message Format

```bash
git commit -m "fix(<projects>): <brief description>

Failed tasks: <taskId1>, <taskId2>
Local verification: passed|enhanced|failed-pushing-to-ci"
```
Loading
Loading