Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

testing merging dev-upgrade-18 #10766

Draft
wants to merge 749 commits into
base: dev-upgrade-18
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
749 commits
Select commit Hold shift + click to select a range
3154854
feat!: `chainHub.getAsset` requires `srcChainName` parameter (#10588)
mergify[bot] Dec 3, 2024
9df7f9b
chore: rm spurious option
turadg Dec 2, 2024
9872ca5
build: use .ts for compat with ts-blank-space
turadg Dec 2, 2024
51cb26f
build: run with ts-blank-space/register
turadg Dec 2, 2024
1805d38
chore(deps): remove tsx
turadg Dec 2, 2024
13b3268
build: run scripts with shebang
turadg Dec 2, 2024
df36ae6
build: Linux compatible shebang
turadg Dec 2, 2024
ecd8939
chore(deps): bump typescript deps
turadg Dec 3, 2024
e37a322
replace tsx with ts-blank-space (#10605)
mergify[bot] Dec 3, 2024
c6ae873
refactor: Cleanup #10348
gibson042 Dec 2, 2024
50fda75
refactor: Cleanup #10348
gibson042 Dec 2, 2024
a0798d2
refactor: Cleanup #10348
gibson042 Dec 2, 2024
13796d6
refactor: Cleanup #10348 (#10603)
mergify[bot] Dec 3, 2024
50b1717
feat: `ForwardOptsShape`
0xpatrickdev Nov 27, 2024
c35fac7
feat(local-orchestration-account): support multi-hop pfm transfers
0xpatrickdev Nov 28, 2024
05aa139
test: `chainHub` test support
0xpatrickdev Nov 28, 2024
e8b37a8
timestamp durable
iomekam Nov 1, 2024
5e048af
refactor: cosmos-orchestration-account-kit.test.ts
0xpatrickdev Nov 26, 2024
20cf6d4
chore: send-anywhere includes IST and BLD brands
0xpatrickdev Nov 26, 2024
09a3a92
chore: update send-anywhere baggage snapshot
0xpatrickdev Nov 26, 2024
b39a332
chore: auto-stake-it provides its own chain, connection, asset info
0xpatrickdev Nov 26, 2024
cf51484
chore: swap.contract.js allows `chainInfo` and `assetInfo`
0xpatrickdev Nov 29, 2024
68c568a
test(boot): restart send-anywhere includes asset info
0xpatrickdev Nov 29, 2024
56164bd
chore: auto-stake-it.contract.js inits `chainHub`
0xpatrickdev Nov 26, 2024
2195ace
chore(fusdc): remove write-chain-info.js
0xpatrickdev Nov 26, 2024
f5b8b22
test: send-anywhere contract null upgrade
iomekam Nov 14, 2024
a93b624
test(send-anywhere): explicitly check result key is undefined
0xpatrickdev Nov 26, 2024
cb22e57
refactor: explicit test ordering
0xpatrickdev Nov 29, 2024
df1af7a
chore: basic-flows.contract.js seeds `chainHub`
0xpatrickdev Nov 29, 2024
fa9b36d
test(fast-usdc): support pfm transfers
0xpatrickdev Nov 28, 2024
fe39f0a
test: deposit-withdraw requires asset info
0xpatrickdev Nov 29, 2024
a2d491f
chore: `startContract` stringifies `builderOpts`
0xpatrickdev Dec 3, 2024
9b8cad2
feat: `local-orch-account` `.transfer()` supports pfm routes (#10571)
mergify[bot] Dec 4, 2024
0d2d4aa
feat: export cli lib
turadg Dec 3, 2024
d71f366
build: yarn link relative agoric-sdk
turadg Dec 3, 2024
3ce6d56
refactor: use agoric cli lib
turadg Dec 3, 2024
3314b25
agoric-cli lib export (#10611)
mergify[bot] Dec 4, 2024
ce195ab
test(fast-usdc): bootstrap test for advancement (#10606)
samsiegart Dec 4, 2024
0e20707
feat: register interchain bank assets proposal
0xpatrickdev Nov 30, 2024
5cafda6
chore: pfm timeout is Go time duration string
0xpatrickdev Nov 30, 2024
57cc060
test: `faucetTools.fundFaucet`
0xpatrickdev Nov 30, 2024
748883d
test: send-anywhere pfm scenarios
0xpatrickdev Nov 30, 2024
cf1d435
test: `send-anywhere` pfm scenarios (#10591)
mergify[bot] Dec 4, 2024
5d4f84c
refactor(fast-usdc): inject io to addOperatorCommands
dckc Dec 3, 2024
448aa3a
feat(fast-usdc): operator attest cli command
dckc Dec 3, 2024
c6a2123
chore(fast-usdc): use an arg for each evidence property
dckc Dec 3, 2024
f1df99f
chore: don't kludge fromCapData
dckc Dec 3, 2024
11df834
chore: avoid magic strings in attest test
dckc Dec 3, 2024
843ad24
refactor: mockStream, concise flags
dckc Dec 3, 2024
ccb969e
refactor: move mockStream(...) to fast-usdc/tools/
dckc Dec 3, 2024
8674c75
refactor: move flags() to fast-usdc/tools/
dckc Dec 3, 2024
13e68a9
chore: use AGORIC_NET for agoric RPC endpoint in transfer cmd
dckc Dec 3, 2024
4c92dbb
docs(fast-usdc): add cli help text re AGORIC_NET
dckc Dec 3, 2024
918eabe
chore(fast-usdc): regen snapshots with AGORIC_NET docs
dckc Dec 4, 2024
d6a7ffb
feat(fast-usdc): operator attest cli command (#10610)
mergify[bot] Dec 4, 2024
f0447c5
test(fast-usdc): count computrons for advancement
samsiegart Dec 4, 2024
db7d1e3
chore: remove unused type imports
samsiegart Dec 4, 2024
39d3796
ci: fast-usdc bootstrap tests in xs
samsiegart Dec 4, 2024
8b9c8db
test(fast-usdc): count computrons for advancement (#10621)
mergify[bot] Dec 4, 2024
e596a01
don't reschedule auction's price notifier if we already have one (#10…
Chris-Hibbert Dec 4, 2024
eb975f1
feat: `ForwardOpts` accepts `intermediateRecipient`
0xpatrickdev Dec 4, 2024
24bd0cf
chore: improve trace logs
0xpatrickdev Dec 4, 2024
80d279e
chore: remove `blockTimestamp` from `CctpTxEvidence`
0xpatrickdev Dec 4, 2024
9664aaa
chore: cosmos-orch-account does not require staking denom
0xpatrickdev Dec 4, 2024
4bb39bd
chore: `bridgeUtils.setAckBehavior`
0xpatrickdev Dec 5, 2024
944df0b
chore: provide noble ica for `intermediateRecipient`
0xpatrickdev Dec 4, 2024
64a6dce
chore: `bridgeUtils.setBech32Prefix`
0xpatrickdev Dec 5, 2024
1847618
chore: bridge supports unique address per ICA
0xpatrickdev Dec 5, 2024
ef9088c
chore: fusdc multichain support (#10626)
mergify[bot] Dec 6, 2024
a1856f3
chore: add dATOM brand name to DEVNET config
Dec 6, 2024
3653dc7
chore: add dATOM brand name to DEVNET config (#10634)
mergify[bot] Dec 6, 2024
ad4e83e
fix(telemetry): Empty context persisted when remaining beans are nega…
usmanmani1122 Dec 6, 2024
1b25d99
chore(deps): yarn dedupe
turadg Dec 5, 2024
f2061de
chore(deps): remove obsolete patch for acorn
turadg Dec 5, 2024
3636200
chore(deps): dev version of cosmic-proto
turadg Dec 5, 2024
4c91d52
chore(deps): bump typescript-eslint to 8.17.0
turadg Dec 5, 2024
f41d7c6
chore(deps): bump prettier to 3.4.2
turadg Dec 5, 2024
679a153
chore(deps): bump ts-blank-space to 0.4.4
turadg Dec 5, 2024
8aa9c48
chore(deps): npx yarn-deduplicate
turadg Dec 5, 2024
27b60cf
chore(deps): bump eslint-plugin-github to 5.1.4
turadg Dec 5, 2024
881a2f2
chore(deps): npx yarn-deduplicate
turadg Dec 5, 2024
9fe92db
lint: update config for typescript-eslint v8
turadg Dec 5, 2024
57574e2
chore(deps): bump eslint to 8.57.1
turadg Dec 5, 2024
28af099
chore(deps): bump eslint-plugin-import to 2.31.0
turadg Dec 5, 2024
e250d8c
chore(deps): npx yarn-deduplicate
turadg Dec 5, 2024
01c61d6
chore: rm broken/obsolete test
turadg Dec 5, 2024
11179de
lint: disable type-aware linting for .dts
turadg Dec 5, 2024
5908077
lint: align tsconfig with eslint config
turadg Dec 5, 2024
c14cb78
chore(types): update coverage
turadg Dec 6, 2024
a66f6a1
misc dep bumps (#10630)
mergify[bot] Dec 6, 2024
8e6dd19
refactor(fast-usdc): move FastUSDCConfig to types.ts
dckc Dec 3, 2024
db283e1
feat(fast-usdc): core-eval to update feed policy
dckc Dec 3, 2024
27462fc
chore(fast-usdc): add deploy config from builder
dckc Dec 3, 2024
c13594f
refactor(boot): organize fast-usdc imports
dckc Dec 3, 2024
e82135f
test(boot): core-eval to change fastUsdc.feedPolicy
dckc Dec 3, 2024
da831d9
chore(deps): boot depends on fast-usdc
dckc Dec 3, 2024
58fb1bc
chore(builders): sync fast-usdc options config, usage to code
dckc Dec 3, 2024
8ded3d8
feat(builders): fast-usdc policy update builder
dckc Dec 3, 2024
1645d7e
feat(fast-usdc): core-eval to change fastUsdc.feedPolicy (#10609)
mergify[bot] Dec 8, 2024
fcc7b1c
chore(SwingSet): Improve anachrophobia messages
gibson042 Nov 13, 2024
1b6eb14
chore(SwingSet): Use consistent prefixes for delivery/syscall numbers…
gibson042 Nov 13, 2024
56d1c14
chore(SwingSet): Improve anachrophobia messages (#10469)
mergify[bot] Dec 9, 2024
82447f3
fix(z:acceptance): fix flakey `z:acceptance/vaults.test.js`
anilhelvaci Dec 8, 2024
74ab972
fix(z:acceptance): fix flakey `z:acceptance/vaults.test.js` (#10643)
mergify[bot] Dec 9, 2024
56330f4
chore(vat-upgrade): upgrade agoricNames, test old values are preserved
anilhelvaci Dec 4, 2024
e35d9d6
chore(vat-upgrade): enhance test coverage of agoricNames functionalit…
anilhelvaci Dec 4, 2024
cd35800
chore(vat-upgrade): simulate what init-chain-info.js is doing
anilhelvaci Dec 7, 2024
86e3b2d
chore(vat-upgrade): upgrade agoricNames, test old values are preserve…
mergify[bot] Dec 9, 2024
046779f
chore(a3p-integration): exit on error in fast-usdc a3p test
dckc Dec 6, 2024
eb82ae3
feat(fast-usdc): limited operation before connecting to noble
dckc Dec 9, 2024
508a3e0
feat(builders): --noNoble option for init-fast-usdc
dckc Dec 9, 2024
c9ba09e
chore(a3p-integration): use --noNoble for fast-usdc
dckc Dec 9, 2024
340ef0d
chore(fast-usdc): limited operation before connecting to noble (#10641)
mergify[bot] Dec 10, 2024
1f47164
fix: vstorage fastUsdc path
turadg Dec 6, 2024
fe99b81
refactor: makeStatusNode to statusNode eref
turadg Dec 6, 2024
057977f
docs: composite keys
turadg Dec 6, 2024
6ddc959
test: replace lookupPending with vstorage test
turadg Dec 6, 2024
b04cb98
refactor: recordStatus -> publishStatus
turadg Dec 6, 2024
a4dc42f
docs: advance() skips OBSERVED
turadg Dec 7, 2024
b424550
refactor: initPendingTx and setPendingTxStatus
turadg Dec 7, 2024
c7a3167
refactor(types): don't export internal keys
turadg Dec 7, 2024
5751bf5
refactor: simplify db keys
turadg Dec 7, 2024
f77b0ec
lint: cleanup unused eslint-disable
turadg Dec 10, 2024
1231911
misc fastUsdc vstorage cleanup (#10661)
mergify[bot] Dec 10, 2024
4c0c372
feat(fast-usdc): cli for lp deposit and withdraw
samsiegart Dec 6, 2024
c1ae023
feat(fast-usdc): cli for lp deposit and withdraw (#10636)
mergify[bot] Dec 10, 2024
a74161c
refactor: Don't reschedule vault's priceNotifier if one exists
Chris-Hibbert Dec 10, 2024
34f026b
Don't reschedule vault's priceNotifier if one exists (#10668)
mergify[bot] Dec 11, 2024
4d17a3f
chore: publish account addresses to storage
0xpatrickdev Dec 10, 2024
092ad4a
chore: publish `PoolMetrics` to child node
0xpatrickdev Dec 10, 2024
bd2a960
test: `fastUsdc` vstorage coverage
0xpatrickdev Dec 10, 2024
475e720
chore: fusdc `getStaticInfo` PF method
0xpatrickdev Dec 10, 2024
5affa34
chore: fusdc vstorage (#10639)
mergify[bot] Dec 11, 2024
dbad30b
feat(vats): first cut of Address Hooks in JS
michaelfig Dec 3, 2024
5014cf9
build(deps): regenerate `yarn.lock`s
michaelfig Dec 6, 2024
159098b
feat(vtransfer): port some `address-hooks.js` functions to Go
michaelfig Dec 8, 2024
c8ad417
docs(cosmic-proto): generate initial typedoc
michaelfig Dec 10, 2024
945fef1
feat: `bech32` Address Hooks (#10613)
mergify[bot] Dec 11, 2024
3b478fb
fix(telemetry): timer-poll run.id (#10672)
mhofman Dec 11, 2024
fbae24c
fix(client-utils): only call `fetch` as a function, not a method (#10…
erights Dec 11, 2024
a3872d0
chore(types): stdout optional
turadg Dec 11, 2024
e115474
chore(types): add typescript
turadg Dec 11, 2024
10302ad
test: vstorageKit.agoricNames
turadg Dec 11, 2024
1c69d39
chore!: remove agoricNames from VstorageKit
turadg Dec 11, 2024
15976b5
refactor: s/makeWalletUtils/makeSmartWalletKit
turadg Dec 11, 2024
b7180b0
refactor: fu cmds with SmartWalletKit
turadg Dec 11, 2024
fdcf70c
refactor: backwards-compat for wallet-utils
turadg Dec 11, 2024
97e431f
test: replace rpc.js with client-utils
turadg Dec 11, 2024
36a986b
test: DRYer z:acceptance test-lib
turadg Dec 11, 2024
501be3a
test: base makeAgdWalletUtils on SmartWalletKit
turadg Dec 11, 2024
8f9f075
synchronous makeVstorageKit (#10670)
mergify[bot] Dec 11, 2024
8955990
chore: `ChainPolicy` schema
0xpatrickdev Dec 12, 2024
bdf5c17
chore: fusdc `ChainPolicy` schema (#10679)
mergify[bot] Dec 12, 2024
01a15d0
test(a3p): add mintHolder upgrade test and helpers
Jorge-Lopes Dec 10, 2024
02fde3c
chore(a3p): add submission and update client-utils version
Jorge-Lopes Dec 10, 2024
6ef9705
chore(mintHolder): add mintHolder null upgrade core-eval
Jorge-Lopes Dec 11, 2024
aa864ce
fix(a3p): remove usage of duplicated code
Jorge-Lopes Dec 12, 2024
059601c
test(a3p): test mintHolder functionalities after contract null upgrad…
mergify[bot] Dec 12, 2024
12510e9
chore: resolve `withdrawToSeat` TODO with comment
0xpatrickdev Dec 9, 2024
d04c5ea
fix: do not stringify logs
0xpatrickdev Dec 12, 2024
b7065e7
chore: return advance payment to LP if `zoeTools.localTransfer` fails
0xpatrickdev Dec 12, 2024
81517e2
chore: do not call `shutdownWithFailure()` if `atomicRearrange()` fails
0xpatrickdev Dec 12, 2024
50c1bd1
refactor: `LP.borrowerFacet` expects `Amount`, not `AmountKWR`
0xpatrickdev Dec 12, 2024
4feddb0
chore: fusdc recovery paths (#10659)
mergify[bot] Dec 12, 2024
e3c2665
fix(address-hooks): throw if the version is unsupported
michaelfig Dec 11, 2024
d17e55b
fix(cosmos): return an error if version is unsupported
michaelfig Dec 11, 2024
80fee60
fix(address-hooks): use `harden` (or `freeze`)
michaelfig Dec 11, 2024
ddff762
fix(address-hooks): version robustness and hardening (#10683)
mergify[bot] Dec 13, 2024
e86a5e1
chore: `decodeAddressHook` `throws` annotation
0xpatrickdev Dec 11, 2024
6091992
chore: use address-hook encoding
0xpatrickdev Dec 11, 2024
254e849
chore: fusdc uses bech32 address hook encoding (#10682)
mergify[bot] Dec 13, 2024
14fa39b
chore: `setupTestKeys` optionally takes mnemonics
0xpatrickdev Dec 4, 2024
6cb025a
chore: export denom tools
0xpatrickdev Dec 4, 2024
1f4b4c6
chore: `WalletDriver` type
0xpatrickdev Dec 4, 2024
46f94d5
refactor: `commonBuilderOpts`
0xpatrickdev Dec 5, 2024
e124d85
chore: `flags` supports mutli option
0xpatrickdev Dec 5, 2024
e60589f
chore: ensure latest view on vbank entries
0xpatrickdev Dec 10, 2024
46f5743
test: fast-usdc advance happy path
0xpatrickdev Dec 4, 2024
2c4d7cd
chore: `await` `deleteTestKeys`
0xpatrickdev Dec 11, 2024
a56f407
chore: ava `failFast: true`
0xpatrickdev Dec 11, 2024
c7a005e
test: fusdc multichain (#10618)
mergify[bot] Dec 13, 2024
adbd7d3
chore(provisionPool): add governedParamOverrides to privateArgs
Jorge-Lopes Dec 6, 2024
e4fc720
chore(provisionPool): simplify defining of governedParamOverrides
Jorge-Lopes Dec 9, 2024
be7c97f
chore(governance): add overrides argument to handleParamGovernance
Jorge-Lopes Dec 10, 2024
6c5ccde
chore(provisionPool): allow the overriding of governed param
Jorge-Lopes Dec 10, 2024
6e25d9f
chore(provisionPool): allow overriding PerAccountInitialAmount during…
mergify[bot] Dec 13, 2024
c883c39
feat: record instances that will be replaced so we can manage them
Chris-Hibbert Dec 11, 2024
1581127
refactor: provideRetiredInstances
turadg Dec 12, 2024
d35659b
Record instances that will be replaced so we can manage them (#10680)
mergify[bot] Dec 13, 2024
6b6a241
test: add retry logic to `provisionSmartWallet`
0xpatrickdev Dec 13, 2024
0cdb981
chore: restore skipped test
0xpatrickdev Dec 13, 2024
4823e85
chore: `provisionSmartWallet` flake (#10691)
mergify[bot] Dec 13, 2024
140c1be
Save the contractKit for the auctioneer before overwriting it (#10694)
Chris-Hibbert Dec 14, 2024
3e27c74
test: add proposal w/300 E(chainTimerService).getTimerBrand() calls (…
Chris-Hibbert Dec 16, 2024
ab3fcb5
build(deps): use backport of cosmos-sdk v0.46.15
michaelfig Dec 16, 2024
c025cb7
fix(cosmic-swingset): expect chain --halt-height exit status > 1
michaelfig Dec 16, 2024
5939b2a
build(deps): use backport of cosmos-sdk v0.46.15 (#10704)
mergify[bot] Dec 16, 2024
092056b
test: advance and settle as a macro
0xpatrickdev Dec 13, 2024
1eb9eb1
chore: "oracles accept" handles already accepted invs
0xpatrickdev Dec 13, 2024
4ce1540
test(acceptance): skip make proposal and vote; seems flaky
dckc Dec 16, 2024
9e124c3
test(multichain): fusdc "advance and settle" as a macro (#10692)
mergify[bot] Dec 17, 2024
1eb858d
chore(vaultFactory): add core-eval for null upgrade vaultFactory
Jorge-Lopes Dec 2, 2024
662fa2c
chore(a3p): add new submissions from governance acceptance tests
Jorge-Lopes Dec 2, 2024
75c8a12
chore(governance):Refactor makeGovernanceDriver methods to be contrac…
Jorge-Lopes Dec 9, 2024
c9bd9a4
fix(a3p): change test execution order
Jorge-Lopes Dec 11, 2024
4b660fd
test(a3p): extend governance testing coverage
Jorge-Lopes Dec 11, 2024
938d615
chore(a3p): refactor makeVStorage to be aligned with batchQuery.js
Jorge-Lopes Dec 11, 2024
dccf7bc
test(a3p): extend governance test with proposals history
Jorge-Lopes Dec 13, 2024
dc7388c
chore(vaultFactory): include insightful comments
Jorge-Lopes Dec 16, 2024
ecddebd
fix(a3p): minor fixes to governance test and helpers
Jorge-Lopes Dec 16, 2024
bc1f87a
fix(vaultFactory): fix proposal description
Jorge-Lopes Dec 16, 2024
cc4c1a2
fix(a3p): remove duplicated await
Jorge-Lopes Dec 17, 2024
28b4884
chore: switch using waitForElectionResult, eliminate flakiness
anilhelvaci Dec 17, 2024
9835fb0
test(a3p): extend governance test coverage for acceptance proposal (#…
mergify[bot] Dec 17, 2024
293ac50
lint: tsc checkJs
turadg Dec 16, 2024
3c63de2
chore(deps): link agoric-sdk
turadg Dec 16, 2024
b5698ce
feat: getValues for sequence nodes
turadg Dec 13, 2024
fd09c05
refactor: distinguish NFA address
turadg Dec 14, 2024
71b1859
test: trace logger
turadg Dec 17, 2024
fd05a7e
feat: simplify seenTxs key
turadg Dec 14, 2024
6df7f1f
feat: pureDataMarshaller
turadg Dec 16, 2024
01315f1
test: getPureData helper
turadg Dec 16, 2024
ebdb5e9
test: provide smartWalletKit
turadg Dec 16, 2024
f99e7b8
feat: include 'sender' in CctpTxEvidence
turadg Dec 13, 2024
aebb4d7
feat: vstorage status --> txns
turadg Dec 6, 2024
fc8bb1e
refactor: txnsNode
turadg Dec 17, 2024
1637c1d
test: shorten node path
turadg Dec 13, 2024
2916c8f
feat: publish CctpTxEvidence
turadg Dec 7, 2024
d82f7e7
test: observe node sequence
turadg Dec 13, 2024
f0078ee
feat: deleteCompletedTxs
turadg Dec 13, 2024
dbf3934
feat: consistent publishTxnRecord (record)
turadg Dec 14, 2024
00e7a8d
chore(types): import CctpTxEvidence
turadg Dec 17, 2024
19d5e03
feat: defaultSerializer util
turadg Dec 16, 2024
c20866d
test: use defaultSerializer
turadg Dec 16, 2024
7e62d8f
feat: publish OBSERVED with first evidence
turadg Dec 16, 2024
ccb9e28
feat(types): TransactionRecord
turadg Dec 16, 2024
a2813f6
transaction vstorage (#10633)
mergify[bot] Dec 17, 2024
bfca51a
Add AssetReserve to Upgrade 19 with A3P test coverage (#10541)
iomekam Dec 17, 2024
32f1398
feat: add an accessor for the vaultDirector's parameters
Chris-Hibbert Dec 16, 2024
adb17dd
feat: add an accessor for the vaultDirector's parameters (#10707)
mergify[bot] Dec 17, 2024
52b517c
merge dev-upgrade-18 into mk/test-u18-merge (branched from master)
mujahidkay Dec 23, 2024
c59dc23
fixup! merge dev-upgrade-18 into mk/test-u18-merge (branched from mas…
mujahidkay Dec 23, 2024
1bd17cc
more merge conflicts resolution
mujahidkay Dec 23, 2024
f312ae9
fix duplicate entries in vat-data
mujahidkay Dec 23, 2024
c05b741
fix versions
mujahidkay Dec 23, 2024
06cef26
update yarn.lock
mujahidkay Dec 23, 2024
a9fa41d
fix swingset-liveslots version:
mujahidkay Dec 23, 2024
b5d3862
fix discrepancies
mujahidkay Dec 23, 2024
f148729
update lockfile + revert fast usdc versions
mujahidkay Dec 23, 2024
698b0c8
update lockfile in s:stake-bld
mujahidkay Dec 23, 2024
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
  •  
  •  
  •  
5 changes: 4 additions & 1 deletion .eslintignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
# also ignored in packages/cosmic-proto/.eslintignore, but IDE's pick up the root config
packages/cosmic-proto/dist
packages/cosmic-proto/node_modules/
packages/cosmic-proto/coverage/
packages/cosmic-proto/dist/
packages/cosmic-proto/proto/
packages/cosmic-proto/src/codegen/
43 changes: 29 additions & 14 deletions .eslintrc.cjs
Original file line number Diff line number Diff line change
Expand Up @@ -62,15 +62,12 @@ module.exports = {
root: true,
parser: '@typescript-eslint/parser',
parserOptions: {
// Works for us!
EXPERIMENTAL_useProjectService: true,
useProjectService: true,
sourceType: 'module',
project: [
'./packages/*/tsconfig.json',
'./packages/*/tsconfig.json',
'./packages/wallet/*/tsconfig.json',
'./tsconfig.json',
],
projectService: {
allowDefaultProject: ['*.js'],
defaultProject: 'tsconfig.json',
},
tsconfigRootDir: __dirname,
extraFileExtensions: ['.cjs'],
},
Expand Down Expand Up @@ -141,6 +138,9 @@ module.exports = {
// CI has a separate format check but keep this warn to maintain that "eslint --fix" prettifies
// UNTIL https://github.com/Agoric/agoric-sdk/issues/4339
'prettier/prettier': 'warn',

// Not a risk with our coding style
'no-use-before-define': 'off',
},
settings: {
jsdoc: {
Expand Down Expand Up @@ -174,8 +174,8 @@ module.exports = {
{
files: [
'packages/**/demo/**/*.js',
'packages/*/test/**/*.js',
'packages/*/test/**/*.test.js',
'packages/*/test/**/*.*s',
'packages/*/test/**/*.test.*s',
'packages/wallet/api/test/**/*.js',
],
rules: {
Expand All @@ -185,12 +185,23 @@ module.exports = {
// NOTE: This rule is enabled for the repository in general. We turn it
// off for test code for now.
'@jessie.js/safe-await-separator': 'off',

// Like `'ava/no-only-test`, but works with @endo/ses-ava
'no-restricted-properties': [
'error',
{
object: 'test',
property: 'only',
message:
'Do not commit .only tests - they prevent other tests from running',
},
],
},
},
{
// These tests use EV() instead of E(), which are easy to confuse.
// Help by erroring when E() packages are imported.
files: ['packages/boot/test/**/*.test.*'],
files: ['packages/boot/test/**/*.test.*s'],
rules: {
'no-restricted-imports': [
'error',
Expand Down Expand Up @@ -226,12 +237,16 @@ module.exports = {
{
files: ['*.d.ts'],
rules: {
// Irrelevant in a typedef
'no-use-before-define': 'off',
// Linter confuses the type declaration with value declaration
'no-redeclare': 'off',
},
},
{
// disable type-aware linting for these files that have can have a .d.ts twin
// because it can't go into tsconfig (because that would cause tsc build to overwrite the .d.ts twin)
files: ['exported.*', 'types-index.*', 'types-ambient.*', 'types.*'],
extends: ['plugin:@typescript-eslint/disable-type-checked'],
},
{
// disable type-aware linting in HTML
files: ['*.html'],
Expand All @@ -243,7 +258,7 @@ module.exports = {
files: ['a3p-integration/**'],
extends: ['plugin:@typescript-eslint/disable-type-checked'],
parserOptions: {
EXPERIMENTAL_useProjectService: false,
useProjectService: false,
project: false,
},
rules: {
Expand Down
12 changes: 6 additions & 6 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,6 @@
v ✰ Thanks for creating a PR! ✰
☺ > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -->

<!-- Most PRs should close a specific issue. All PRs should at least reference one or more issues. Edit and/or delete the following lines as appropriate (note: you don't need both `refs` and `closes` for the same one): -->

closes: #XXXX
refs: #XXXX

<!-- Integration testing generally doesn't run until a PR is labeled for merge, but can be opted into for every push by adding label 'force:integration', and can be customized to use non-default external targets by including lines here that **start** with leading-`#` directives:
* (https://github.com/Agoric/documentation) #documentation-branch: $BRANCH_NAME
* (https://github.com/endojs/endo) #endo-branch: $BRANCH_NAME
Expand All @@ -16,6 +11,11 @@ refs: #XXXX
These directives should be removed before adding a merge label, so final integration tests run against default targets.
-->

<!-- Most PRs should close a specific issue. All PRs should at least reference one or more issues. Edit and/or delete the following lines as appropriate (note: you don't need both `refs` and `closes` for the same one): -->

closes: #XXXX
refs: #XXXX

## Description
<!-- Add a description of the changes that this PR introduces and the files that are the most critical to review. -->

Expand All @@ -32,4 +32,4 @@ These directives should be removed before adding a merge label, so final integra
<!-- Every PR should of course come with tests of its own functionality. What additional tests are still needed beyond those unit tests? How does this affect CI, other test automation, or the testnet? -->

### Upgrade Considerations
<!-- What aspects of this PR are relevant to upgrading live production systems, and how should they be addressed? -->
<!-- What aspects of this PR are relevant to upgrading live production systems, and how should they be addressed? What steps should be followed to verify that its changes have been included in a release (ollinet/emerynet/mainnet/etc.) and work successfully there? If the process is elaborate, consider adding a script to scripts/verification/. -->
65 changes: 65 additions & 0 deletions .github/actions/ci-test-result.cjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
#! /usr/bin/env node
const fs = require('node:fs');
const process = require('node:process');
const { sendMetricsToGCP, makeTimeSeries } = require('./gcp-monitoring.cjs');

const resultFiles = process.argv.slice(2);

const tapResultRegex = new RegExp(
`(^(?<status>not )?ok (?<num>[0-9]+) - (?<name>.+?)(?: %ava-dur=(?<duration>[0-9]+)ms)?(?:# (?<comments>.+?))?$(?<output>(\n^#.+?$)*)(?<failure>(\n^(?:(?!(?:not|ok) ))[^\n\r]+?$)*))`,
'gms',
);
let timeSeriesData = [];

function processTAP(packageName, tapbody) {
let m;
const returnValue = [];
// eslint-disable-next-line no-cond-assign
while ((m = tapResultRegex.exec(tapbody))) {
if (m.groups.name) {
const testCaseName = `${m.groups.name}`.replace(/["<>]/g, '').trim();

let skipped = false;
let succeeded = true;
let todo = false;
if (m.groups.status) {
succeeded = false;
}
if (m.groups.comments) {
if (m.groups.comments.match(/SKIP/gi)) {
skipped = true;
}
if (m.groups.comments.match(/TODO/gi)) {
todo = true;
skipped = true;
succeeded = true;
}
}
returnValue.push({
labels: {
test_name: testCaseName,
package: packageName,
test_status:
succeeded && !(todo || skipped)
? 'succeeded'
: !succeeded
? 'failed'
: 'skipped',
},
value: Number(succeeded && !(todo || skipped)),
});
}
}
return returnValue;
}

for (const file of resultFiles) {
const resultsBody = fs.readFileSync(file, 'utf-8');
const packageName = file.split('/').at(-2);

const response = processTAP(packageName, resultsBody);
timeSeriesData.push(...response);
}

const timeSeries = makeTimeSeries(timeSeriesData);
sendMetricsToGCP(timeSeries);
169 changes: 169 additions & 0 deletions .github/actions/dump-ci-stats-to-gcp-metrics.cjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,169 @@
const Monitoring = require('@google-cloud/monitoring');

const gcpCredentials = JSON.parse(process.env.GCP_CREDENTIALS);
const monitoring = new Monitoring.MetricServiceClient({
projectId: gcpCredentials.project_id,
credentials: {
client_email: gcpCredentials.client_email,
private_key: gcpCredentials.private_key,
},
});

async function sendMetricsToGCP(metricType, metricValue, labels) {
const projectId = gcpCredentials.project_id;

const request = {
name: monitoring.projectPath(projectId),
timeSeries: [
{
metric: {
type: `custom.googleapis.com/github/${metricType}`,
labels: labels,
},
resource: {
type: 'global',
labels: {
project_id: projectId,
},
},
points: [
{
interval: {
endTime: {
seconds: Math.floor(Date.now() / 1000),
},
},
value: {
doubleValue: metricValue,
},
},
],
},
],
};
try {
await monitoring.createTimeSeries(request);
console.log(`Metric ${metricType} sent successfully.`);
} catch (error) {
console.error('Error sending metric:', error);
}
}

// Function to fetch workflow and job details via GitHub API
async function fetchWorkflowDetails() {
const runId = process.argv[2];
const repo = process.env.GITHUB_REPOSITORY;
const apiUrl = `https://api.github.com/repos/${repo}/actions/runs/${runId}`;

try {
const response = await fetch(apiUrl, {
headers: {
Authorization: `Bearer ${process.env.GITHUB_TOKEN}`,
Accept: 'application/vnd.github.v3+json',
},
});

if (!response.ok) throw new Error(`HTTP error! status: ${response.status}`);
const data = await response.json();

return {
workflowId: data.id,
workflowName: data.name,
status: data.status, // "completed", "in_progress", etc.
conclusion: data.conclusion, // "success", "failure"
startTime: data.created_at,
endTime: data.updated_at,
trigger: data.event, // "push", "pull_request", etc.
jobs: await fetchJobDetails(repo, data.id), // Fetch individual job details
};
} catch (error) {
console.error('Error fetching workflow details:', error);
process.exit(1);
}
}

async function fetchJobDetails(repo, runId) {
const apiUrl = `https://api.github.com/repos/${repo}/actions/runs/${runId}/jobs`;

try {
const response = await fetch(apiUrl, {
headers: {
Authorization: `Bearer ${process.env.GITHUB_TOKEN}`,
Accept: 'application/vnd.github.v3+json',
},
});

if (!response.ok) throw new Error(`HTTP error! status: ${response.status}`);
const data = await response.json();
return data.jobs;
} catch (error) {
console.error('Error fetching job details:', error);
return [];
}
}

// Main function to send metrics
(async () => {
try {
const workflowStats = await fetchWorkflowDetails();

const workflowLabels = {
workflow_name: workflowStats.workflowName,
workflow_id: workflowStats.workflowId,
trigger: workflowStats.trigger,
};

const workflowDuration =
(new Date(workflowStats.endTime) - new Date(workflowStats.startTime)) /
1000;
await sendMetricsToGCP(
'ci_workflow_duration',
workflowDuration,
workflowLabels,
);

for (const job of workflowStats.jobs) {
const jobLabels = {
workflow_name: workflowStats.workflowName,
job_name: job.name,
runner_name: job.runner_name,
conclusion: job.conclusion,
};

const jobExecutionTime =
(new Date(job.completed_at) - new Date(job.started_at)) / 1000;
await sendMetricsToGCP(
'ci_job_execution_time',
jobExecutionTime,
jobLabels,
);

// Send job status (1 for success, 0 for failure)
const jobStatus = job.conclusion === 'success' ? 1 : 0;
await sendMetricsToGCP('ci_job_status', jobStatus, jobLabels);

// Capture step-level metrics for step details per job
for (const step of job.steps) {
const stepExecutionTime =
(new Date(step.completed_at) - new Date(step.started_at)) / 1000;
const stepLabels = {
workflow_name: workflowStats.workflowName,
job_name: job.name,
step_name: step.name,
runner_name: job.runner_name,
};

await sendMetricsToGCP(
'ci_step_execution_time',
stepExecutionTime,
stepLabels,
);
}
}
} catch (error) {
console.error('Error in main function:', error);
process.exit(1);
}

process.exit(0);
})();
Loading
Loading