Giter VIP home page Giter VIP logo

kurtosis-cdk's People

Contributors

cffls avatar dependabot[bot] avatar janbajecdev avatar jhkimqd avatar kmurphypolygon avatar leovct avatar minhd-vu avatar mt-polygon-technology avatar omahs avatar praetoriansentry avatar rebelartists avatar xavier-romero avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

kurtosis-cdk's Issues

Issue in Kurtosis Based CDK Deployment on Ubuntu 22.04

Dear All,

I am facing the following issue with the Polygon CDK setup using Kurtosis CLI. Request your guidance on this error.

kurtosis run --enclave cdk-v1 --args-file params.yml --image-download always .
Error: An error occurred running command 'run'
Caused by: An error occurred calling the run function for command 'run'
Caused by: An error occurred getting the enclave context for enclave 'cdk-v1'
Caused by: Unable to create new enclave with name 'cdk-v1'
Caused by: An error occurred creating an enclave with name 'cdk-v1'
Caused by: rpc error: code = Unknown desc = An error occurred creating new enclave with name 'cdk-v1'
Caused by: An error occurred creating new enclave with name 'cdk-v1' using api container image version '' and api container log level 'debug'
Caused by: An error occurred creating the logs collector with TCP port number '9713' and HTTP port number '9712'
Caused by: An error occurred creating the logs collector with TCP port number '9712' and HTTP port number '9713'
Caused by: An error occurred creating the logs collector using the '9713' TCP port number, the '9712' HTTP port number and the los collector container '&{}'
Caused by: An error occurred while waiting for the log container to become available

jq: error: Could not open file /data/network-configs/genesis.json: No such file or directory

Reading prague time from genesis
Command returned with exit code '0' and the following output:
--------------------
jq: error: Could not open file /data/network-configs/genesis.json: No such file or directory

--------------------

Adding service with name 'el-1-geth-lighthouse' and image 'ethereum/client-go:latest'
There was an error executing Starlark code 
An error occurred executing instruction (number 23) at github.com/kurtosis-tech/ethereum-package/src/el/geth/geth_launcher.star[151:31]:
  add_service(name="el-1-geth-lighthouse", config=ServiceConfig(image="ethereum/client-go:latest", ports={"engine-rpc": PortSpec(number=8551, transport_protocol="TCP", application_protocol=""), "metrics": PortSpec(number=9001, transport_protocol="TCP", application_protocol=""), "rpc": PortSpec(number=8545, transport_protocol="TCP", application_protocol="http"), "tcp-discovery": PortSpec(number=30303, transport_protocol="TCP", application_protocol=""), "udp-discovery": PortSpec(number=30303, transport_protocol="UDP", application_protocol=""), "ws": PortSpec(number=8546, transport_protocol="TCP", application_protocol="")}, files={"/jwt": "jwt_file", "/network-configs": "el_cl_genesis_data"}, entrypoint=["sh", "-c"], cmd=["geth init --state.scheme=path --datadir=/data/geth/execution-data /network-configs/network-configs/genesis.json && geth --state.scheme=path     --networkid=271828 --verbosity=3 --datadir=/data/geth/execution-data --http --http.addr=0.0.0.0 --http.vhosts=* --http.corsdomain=* --http.api=admin,engine,net,eth,web3,debug --ws --ws.addr=0.0.0.0 --ws.port=8546 --ws.api=admin,engine,net,eth,web3,debug --ws.origins=* --allow-insecure-unlock --nat=extip:KURTOSIS_IP_ADDR_PLACEHOLDER --verbosity=3 --authrpc.port=8551 --authrpc.addr=0.0.0.0 --authrpc.vhosts=* --authrpc.jwtsecret=/jwt/jwtsecret --syncmode=full --rpc.allow-unprotected-txs --metrics --metrics.addr=0.0.0.0 --metrics.port=9001"], env_vars={}, private_ip_address_placeholder="KURTOSIS_IP_ADDR_PLACEHOLDER", max_cpu=1000, min_cpu=300, max_memory=1024, min_memory=512, labels={"ethereum-package.client": "geth", "ethereum-package.client-image": "ethereum-client-go-latest", "ethereum-package.client-type": "execution", "ethereum-package.connected-client": "lighthouse"}, tolerations=[], node_selectors={}))
  Caused by: Unexpected error occurred starting service 'el-1-geth-lighthouse'
  Caused by: An error occurred waiting for all TCP and UDP ports to be open for service 'el-1-geth-lighthouse' with private IP '172.16.0.11'; this is usually due to a misconfiguration in the service itself, so here are the logs:
  == SERVICE 'el-1-geth-lighthouse' LOGS ===================================
  Fatal: Failed to read genesis file: open /network-configs/network-configs/genesis.json: no such file or directory
  Fatal: Failed to read genesis file: open /network-configs/network-configs/genesis.json: no such file or directory
  
  == FINISHED SERVICE 'el-1-geth-lighthouse' LOGS ===================================
  Caused by: An error occurred while waiting for all TCP and UDP ports to be open
  Caused by: Unsuccessful ports check for IP '172.16.0.11' and port spec '{privatePortSpec:0xc000dc4a20}', even after '240' retries with '500' milliseconds in between retries. Timeout '2m0s' has been reached
  Caused by: An error occurred while calling network address '172.16.0.11:30303' with port protocol 'TCP' and using time out '200ms'
  Caused by: dial tcp 172.16.0.11:30303: i/o timeout

Error encountered running Starlark code.

How many types does zkevm_rollup_consensus support?

Where did you see the issue in our documentation?

https://github.com/0xPolygon/kurtosis-cdk/blob/main/params.yml

Issue description

Hello,the default param zkevm_rollup_consensus is PolygonValidiumEtrog at param.yml . Is there support any other zkevm_rollup_consensus type ?

For example,set zkevm_rollup_consensus “PolygonZkEVMEtrog”,but meet the error:
“== FINISHED SERVICE 'zkevm-node-synchronizer-001' LOGS ===================================
Caused by: An error occurred while waiting for all TCP and UDP ports to be open
Caused by: Unsuccessful ports check for IP '172.16.0.26' and port spec '{privatePortSpec:0xc00074ca80}', even after '240' retries with '500' milliseconds in between retries. Timeout '2m0s' has been reached
Caused by: An error occurred while calling network address '172.16.0.26:6060' with port protocol 'TCP' and using time out '200ms'
Caused by: dial tcp 172.16.0.26:6060: i/o timeout”

Can not bridge from L1 to L2, status Processing

Screenshot from 2024-03-28 17-12-45
I have the cdk up and runing but can not bridge from L1 to L2, the status is Processing forever.

cast rpc zkevm_batchNumber
cast rpc zkevm_virtualBatchNumber
cast rpc zkevm_verifiedBatchNumber
"0x65"
"0x63"
"0x5a"

zkevm_verifiedBatchNumber is not increasing.

Please help me how to debug this issue and where to look for error log?

Deploy cdk stack on a private l1 chain.

System information

Ubuntu 20.04, amd64

Commit id

6e1650c

Tools versions

Checking that you have the necessary tools to deploy the Kurtosis CDK package...
✅ kurtosis 0.89.10 is installed, meets the requirement (=0.89).
✅ docker 26.1.3 is installed, meets the requirement (>=24.7).

You might as well need the following tools to interact with the environment...
⚠️ jq is not installed. You can install jq at: https://jqlang.github.io/jq/download/
⚠️ yq is not installed. You can install yq at: https://pypi.org/project/yq/
✅ cast 0.2.0 is installed.
⚠️ polycli is not installed. You can install polycli at: https://github.com/maticnetwork/polygon-cli/releases

Description & steps to reproduce

I want to deploy on a testnet(which is maintained by our school), which support compiler of v0.8.18.

  1. I first modified some l1 config based on https://github.com/0xPolygon/kurtosis-cdk/blob/main/doc-drafts/deploy-sepolia-l1.md.
  2. And since I found my chain is not support EIP-1559, I also add --lagcy flag to all the cast send cmd, like that
fund_account_on_l1() {
    name="$1"
    address="$2"
    echo_ts "Funding $name account"
    cast send \
        --legacy \
        --rpc-url "{{.l1_rpc_url}}" \
        --mnemonic "{{.l1_preallocated_mnemonic}}" \
        --value "{{.l1_funding_amount}}" \
        "$address"
}
  1. Then I get an error in Step 1: Preparing tesnet
[2024-06-13 11:38:30] Deploying zkevm contracts to L1
[2024-06-13 11:38:30] Step 1: Preparing tesnet

> @0xpolygonhermez/[email protected] npx
> hardhat run deployment/testnet/prepareTestnet.ts --network localhost

ProviderError: invalid opcode: PUSH0
    at HttpProvider.request (/opt/zkevm-contracts/node_modules/hardhat/src/internal/core/providers/http.ts:88:21)
    at processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async HardhatEthersProvider.estimateGas (/opt/zkevm-contracts/node_modules/@nomicfoundation/hardhat-ethers/src/internal/hardhat-ethers-provider.ts:237:27)
    at async Wallet.populateTransaction (/opt/zkevm-contracts/node_modules/ethers/src.ts/providers/abstract-signer.ts:105:28)
    at async Wallet.sendTransaction (/opt/zkevm-contracts/node_modules/ethers/src.ts/providers/abstract-signer.ts:232:21)
    at async ContractFactory.deploy (/opt/zkevm-contracts/node_modules/ethers/src.ts/contract/factory.ts:111:24)
    at async main (/opt/zkevm-contracts/deployment/testnet/prepareTestnet.ts:100:30)
[2024-06-13 11:38:32] Step 2: Creating genesis

> @0xpolygonhermez/[email protected] npx
> ts-node deployment/v2/1_createGenesis.ts

Warning: Potentially unsafe deployment of contracts/PolygonZkEVMGlobalExitRootL2.sol:PolygonZkEVMGlobalExitRootL2

    You are using the `unsafeAllow.state-variable-immutable` flag.

Warning: Potentially unsafe deployment of contracts/PolygonZkEVMGlobalExitRootL2.sol:PolygonZkEVMGlobalExitRootL2

    You are using the `unsafeAllow.constructor` flag.

[2024-06-13 11:38:38] Step 3: Deploying PolygonZKEVMDeployer

> @0xpolygonhermez/[email protected] npx
> hardhat run deployment/v2/2_deployPolygonZKEVMDeployer.ts --network localhost

ProviderError: err: insufficient funds for gas * price + value: address 0xE34aaF64b29273B7D567FCFc40544c014EEe9970 have 10000000000000000 want 100000000000000000 (supplied gas 15010499)
    at HttpProvider.request (/opt/zkevm-contracts/node_modules/hardhat/src/internal/core/providers/http.ts:88:21)
    at processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async HardhatEthersProvider.estimateGas (/opt/zkevm-contracts/node_modules/@nomicfoundation/hardhat-ethers/src/internal/hardhat-ethers-provider.ts:237:27)
    at async Wallet.populateTransaction (/opt/zkevm-contracts/node_modules/ethers/src.ts/providers/abstract-signer.ts:105:28)
    at async Wallet.sendTransaction (/opt/zkevm-contracts/node_modules/ethers/src.ts/providers/abstract-signer.ts:232:21)
    at async deployPolygonZkEVMDeployer (/opt/zkevm-contracts/deployment/helpers/deployment-helpers.ts:67:12)
    at async main (/opt/zkevm-contracts/deployment/v2/2_deployPolygonZKEVMDeployer.ts:73:54)
[2024-06-13 11:38:40] Step 4: Deploying contracts

> @0xpolygonhermez/[email protected] npx
> hardhat run deployment/v2/3_deployContracts.ts --network localhost

Error: Missing parameter: zkEVMDeployerAddress
    at main (/opt/zkevm-contracts/deployment/v2/3_deployContracts.ts:86:19)
    at Object.<anonymous> (/opt/zkevm-contracts/deployment/v2/3_deployContracts.ts:552:1)
    at Module._compile (node:internal/modules/cjs/loader:1358:14)
    at Module.m._compile (/opt/zkevm-contracts/node_modules/ts-node/src/index.ts:1618:23)
    at Module._extensions..js (node:internal/modules/cjs/loader:1416:10)
    at Object.require.extensions.<computed> [as .ts] (/opt/zkevm-contracts/node_modules/ts-node/src/index.ts:1621:12)
    at Module.load (node:internal/modules/cjs/loader:1208:32)
    at Function.Module._load (node:internal/modules/cjs/loader:1024:12)
    at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:174:12)
    at node:internal/main/run_main_module:28:49
[2024-06-13 11:38:41] Step 5: Creating rollup

> @0xpolygonhermez/[email protected] npx
> hardhat run deployment/v2/4_createRollup.ts --network localhost

Error: Cannot find module './deploy_output.json'
Require stack:
- /opt/zkevm-contracts/deployment/v2/4_createRollup.ts
    at Function.Module._resolveFilename (node:internal/modules/cjs/loader:1145:15)
    at Function.Module._resolveFilename.sharedData.moduleResolveFilenameHook.installedValue [as _resolveFilename] (/opt/zkevm-contracts/node_modules/@cspotcode/source-map-support/source-map-support.js:811:30)
    at Function.Module._load (node:internal/modules/cjs/loader:986:27)
    at Module.require (node:internal/modules/cjs/loader:1233:19)
    at require (node:internal/modules/helpers:179:18)
    at Object.<anonymous> (/opt/zkevm-contracts/deployment/v2/4_createRollup.ts:17:22)
    at Module._compile (node:internal/modules/cjs/loader:1358:14)
    at Module.m._compile (/opt/zkevm-contracts/node_modules/ts-node/src/index.ts:1618:23)
    at Module._extensions..js (node:internal/modules/cjs/loader:1416:10)
    at Object.require.extensions.<computed> [as .ts] (/opt/zkevm-contracts/node_modules/ts-node/src/index.ts:1621:12) {
  code: 'MODULE_NOT_FOUND',
  requireStack: [ '/opt/zkevm-contracts/deployment/v2/4_createRollup.ts' ]
}
[2024-06-13 11:38:43] Combining contract deploy files
cp: cannot stat '/opt/zkevm-contracts/deployment/v2/create_rollup_output.json': No such file or directory
/opt
/opt/zkevm /opt
[2024-06-13 11:38:43] Creating combined.json
jq: Bad JSON in --slurpfile rollup create_rollup_output.json: Could not open create_rollup_output.json: No such file or directory
[2024-06-13 11:38:43] Approving the rollup address to transfer POL tokens on behalf of the sequencer
Error:
Failed to resolve ENS name: ens name not found:
[2024-06-13 11:38:43] Setting the data availability committee
Error:
Failed to resolve ENS name: ens name not found:
[2024-06-13 11:38:43] Setting the data availability protocol
Error:
Failed to resolve ENS name: ens name not found:
[2024-06-13 11:38:43] Granting the aggregator role to the agglayer so that it can also verify batches
Error:
Failed to resolve ENS name: ens name not found:

--------------------

Creating keystores for zkevm-node/cdk-validium components
Command returned with exit code '0' with no output

Printing a message
Skipping the deployment of helper service to retrieve rollup data

Printing a message
Deploying zkevm node and cdk peripheral databases

Rendering a template to a files artifact with name 'init.sql-001'
Templates artifact name 'init.sql-001' rendered with artifact UUID 'bc1c4060fddc41ee8ef9733b1862e2ce'

Starting Postgres Service
Service 'postgres-001' added with service UUID '3625a2b16b2949bc85a102b6fe528e51'

Printing a message
Getting genesis file...

Storing files from service 'contracts-001' at path '/opt/zkevm/genesis.json' to files artifact with name 'genesis'
Files with artifact name 'genesis' uploaded with artifact UUID '705813c7ae8743e58c4e799153530e89'

Printing a message
Deploying cdk central/trusted environment

Rendering a template to a files artifact with name 'prover-config-artifact'
Templates artifact name 'prover-config-artifact' rendered with artifact UUID '85d0edb2865f41d994cd40bdbe081a21'

Determining CPU system architecture
Command returned with exit code '0' and the following output: x86_64

Adding service with name 'zkevm-prover-001' and image 'hermeznetwork/zkevm-prover:v6.0.0'
Service 'zkevm-prover-001' added with service UUID '4886acf543f64597a2a9c99a7e4e5750'

Rendering a template to a files artifact with name 'trusted-node-config'
Templates artifact name 'trusted-node-config' rendered with artifact UUID '142f3ca17a87476badf02d51fb694ef0'

Adding service with name 'zkevm-node-synchronizer-001' and image '0xpolygon/cdk-validium-node:0.6.5-cdk'
There was an error executing Starlark code
An error occurred executing instruction (number 23) at github.com/0xPolygon/kurtosis-cdk/lib/zkevm_node.star[52:21]:
  add_service(name="zkevm-node-synchronizer-001", config=ServiceConfig(image="0xpolygon/cdk-validium-node:0.6.5-cdk", ports={"pprof": PortSpec(number=6060, application_protocol="http"), "prometheus": PortSpec(number=9091, application_protocol="http")}, files={"/etc/zkevm": Directory(artifact_names=["trusted-node-config", "genesis"])}, entrypoint=["/app/zkevm-node"], cmd=["run", "--cfg=/etc/zkevm/node-config.toml", "--network=custom", "--custom-network-file=/etc/zkevm/genesis.json", "--components=synchronizer"]))
  Caused by: Unexpected error occurred starting service 'zkevm-node-synchronizer-001'
  Caused by: An error occurred waiting for all TCP and UDP ports to be open for service 'zkevm-node-synchronizer-001' with private IP '172.16.0.8'; this is usually due to a misconfiguration in the service itself, so here are the logs:
  == SERVICE 'zkevm-node-synchronizer-001' LOGS ===================================
  panic: failed to load genesis configuration from file. Error: json: cannot unmarshal non-string into Go struct field L1Config.L1Config.polygonZkEVMGlobalExitRootAddress of type common.Address

  goroutine 1 [running]:
  github.com/0xPolygonHermez/zkevm-node/config.(*Config).loadNetworkConfig(0xc000635b00, 0x15ecc40?)
        /home/runner/work/cdk-validium-node/cdk-validium-node/config/network.go:74 +0x1d3
  github.com/0xPolygonHermez/zkevm-node/config.Load(0x0?, 0x1)
        /home/runner/work/cdk-validium-node/cdk-validium-node/config/config.go:186 +0x432
  main.start(0xc000148d80)
        /home/runner/work/cdk-validium-node/cdk-validium-node/cmd/run.go:52 +0x37
  github.com/urfave/cli/v2.(*Command).Run(0xc0001b0dc0, 0xc000148d80, {0xc000444230, 0x5, 0x5})
        /home/runner/go/pkg/mod/github.com/urfave/cli/[email protected]/command.go:277 +0x9d8
  github.com/urfave/cli/v2.(*Command).Run(0xc000156000, 0xc000148840, {0xc00003e1e0, 0x6, 0x6})
        /home/runner/go/pkg/mod/github.com/urfave/cli/[email protected]/command.go:270 +0xc25
  github.com/urfave/cli/v2.(*App).RunContext(0xc0004b65a0, {0x1d5c320?, 0x2b2b440}, {0xc00003e1e0, 0x6, 0x6})
        /home/runner/go/pkg/mod/github.com/urfave/cli/[email protected]/app.go:335 +0x5db
  github.com/urfave/cli/v2.(*App).Run(...)
        /home/runner/go/pkg/mod/github.com/urfave/cli/[email protected]/app.go:309
  main.main()
        /home/runner/work/cdk-validium-node/cdk-validium-node/cmd/main.go:198 +0xd3b

  == FINISHED SERVICE 'zkevm-node-synchronizer-001' LOGS ===================================
  Caused by: An error occurred while waiting for all TCP and UDP ports to be open
  Caused by: Unsuccessful ports check for IP '172.16.0.8' and port spec '{privatePortSpec:0xc001cf77a0}', even after '240' retries with '500' milliseconds in between retries. Timeout '2m0s' has been reached
  Caused by: An error occurred while calling network address '172.16.0.8:6060' with port protocol 'TCP' and using time out '200ms'
  Caused by: dial tcp 172.16.0.8:6060: i/o timeout

Error encountered running Starlark code.

Desired behavior

I asked ChatGPT, it said we need to modify the compiler version since PUSH0 is unsupported in my chain, but how?

What is the severity of this bug?

Critical; I am blocked and Kurtosis CDK is unusable for me because of this bug.

Zk UI Bridge network error

System information

Ubuntu

Commit id

d2ac8f9

Tools versions

✅ kurtosis 0.89.10 is installed, meets the requirement (=0.89).
✅ docker 26.1.3 is installed, meets the requirement (>=24.7).

You might as well need the following tools to interact with the environment...
✅ jq 1.6 is installed.
⚠️ yq is not installed. You can install yq at: https://pypi.org/project/yq/
✅ cast 0.2.0 is installed.
⚠️ polycli is not installed. You can install polycli at: https://github.com/maticnetwork/polygon-cli/releases

Description & steps to reproduce

I have deployed a roll-up on sepolia testnet. On the zk Bridge Interface port - bridge-interface: 80/tcp -> http://127.0.0.1:32805 I keep seeing this error, of cannot connect to ethereum node.

image

Desired behavior

Should connect to sepolia rpc provided and display the bridge interface

What is the severity of this bug?

Critical; I am blocked and Kurtosis CDK is unusable for me because of this bug.

Kurtosis CDK Deployment failure

System information

Ubuntu 22.04

Commit id

kurtosis run --enclave cdk-v1 --args-file params.yml --image-download always .

Tools versions

Checking that you have the necessary tools to deploy the Kurtosis CDK package...
✅ kurtosis 0.89.12 is installed, meets the requirement (=0.89).
✅ docker 26.1.3 is installed, meets the requirement (>=24.7).

You might as well need the following tools to interact with the environment...
✅ jq 1.6 is installed.
✅ yq 3.4.3 is installed, meets the requirement (>=3.2).
✅ cast 0.2.0 is installed.
✅ polycli v0.1.43 is installed.

🎉 You are ready to go!

Description & steps to reproduce

After many times of cleaning and starting the deployment process again, I'm getting incomplete deployment with errors in output.

Adding service with name 'zkevm-prover-001' and image 'hermeznetwork/zkevm-prover:v6.0.0'
There was an error executing Starlark code
An error occurred executing instruction (number 62) at github.com/0xPolygon/kurtosis-cdk/lib/zkevm_prover.star[22:28]:
add_service(name="zkevm-prover-001", config=ServiceConfig(image="hermeznetwork/zkevm-prover:v6.0.0", ports={"executor-server": PortSpec(number=50071, application_protocol="grpc"), "hash-db-server": PortSpec(number=50061, application_protocol="grpc")}, files={"/etc/zkevm": "prover-config-artifact"}, entrypoint=["/bin/bash", "-c"], cmd=["[[ "{{kurtosis:0cae89edc8d14d058d76602193534819:output.runtime_value}}" == "aarch64" || "{{kurtosis:0cae89edc8d14d058d76602193534819:output.runtime_value}}" == "arm64" ]] && export EXPERIMENTAL_DOCKER_DESKTOP_FORCE_QEMU=1; /usr/local/bin/zkProver -c /etc/zkevm/prover-config.json"]))
Caused by: Unexpected error occurred starting service 'zkevm-prover-001'
Caused by: An error occurred waiting for all TCP and UDP ports to be open for service 'zkevm-prover-001' with private IP '172.16.0.26'; this is usually due to a misconfiguration in the service itself, so here are the logs:
== SERVICE 'zkevm-prover-001' LOGS ===================================

== FINISHED SERVICE 'zkevm-prover-001' LOGS ===================================
Caused by: An error occurred while waiting for all TCP and UDP ports to be open
Caused by: Unsuccessful ports check for IP '172.16.0.26' and port spec '{privatePortSpec:0xc00073c3c0}', even after '240' retries with '500' milliseconds in between retries. Timeout '2m0s' has been reached
Caused by: An error occurred while calling network address '172.16.0.26:50071' with port protocol 'TCP' and using time out '200ms'
Caused by: dial tcp 172.16.0.26:50071: i/o timeout

Error encountered running Starlark code.

Desired behavior

I am expecting successful deployment of all necessary services.

What is the severity of this bug?

Critical; I am blocked and Kurtosis CDK is unusable for me because of this bug.

Permissionless requires genesis artifact

System information

Debian

Commit id

894c89c

Tools versions

Checking that you have the necessary tools to deploy the Kurtosis CDK package...
✅ kurtosis 0.89.10 is installed, meets the requirement (>=0.88.9).
✅ docker 26.1.3 is installed, meets the requirement (>=24.7).

You might as well need the following tools to interact with the environment...
✅ jq 1.7 is installed.
✅ yq 0.0.0 is installed, meets the requirement (<=3.x).
✅ cast 0.2.0 is installed.
✅ polycli v0.1.43-32-gb921b11 is installed.

🎉 You are ready to go!

Description & steps to reproduce

The docs show how to run the permissionless node, but this seems like it's no longer supported because:

  1. The refactored args in params.yml makes it so we can't directly load zkevm_permissionless
  2. The genesis artifact is retrieved even if we have everything but permissionless disabled. In that case, it should be rendered from the template.
    image

Desired behavior

The documented approach for running a permissionless node should work. The easiest fix I think is to avoid referencing the genesis artifact if it wasn't created / doesn't exist.

What is the severity of this bug?

Papercut; This bug is frustrating, but I have a workaround.

Can not deploy contract on Sepolia Testnet

I change the config and try to deploy contract on Sepolia testnet and encouter this error:
Executing command on service 'contracts-001'
There was an error executing Starlark code
It's show that the contract code size is exceed the limit.
Can you help with this error:

Contract code size is 28094 bytes and exceeds 24576 bytes (a limit introduced in Spurious Dragon). This contract may not be deployable on Mainnet. Consider enabling the optimizer (with a low \"runs\" value!), turning off revert strings, or using libraries.\n --> contracts/v2/mocks/PolygonRollupManagerMockInternalTest.sol:8:1:\n  |\n8 | contract PolygonRollupManagerMockInternalTest is PolygonRollupManager {\n  | ^ (Relevant source part starts here and spans across multiple lines).\n\n\nGenerating typings for: 123 artifacts in dir: typechain-types for target: ethers-v6\nSuccessfully generated 332 typings!\nCompiled 124 Solidity files successfully (evm targets: istanbul, petersburg, shanghai).\nRunning full l1 contract deployment process\n"

Full log:

Executing command on service 'contracts-001'
There was an error executing Starlark code 
An error occurred executing instruction (number 14) at github.com/0xPolygon/kurtosis-cdk/deploy_zkevm_contracts.star[87:14]:
  exec(service_name="contracts-001", recipe=ExecRecipe(command=["/opt/contract-deploy/run-contract-setup.sh"]))
  Caused by: Exec returned exit code '1' that is not part of the acceptable status codes '[0]', with output:
    "Installing dependencies\n\nWARNING: apt does not have a stable CLI interface. Use with caution in scripts.\n\nGet:1 http://deb.debian.org/debian bookworm InRelease [151 kB]\nGet:2 http://deb.debian.org/debian bookworm-updates InRelease [55.4 kB]\nGet:3 http://deb.debian.org/debian-security bookworm-security InRelease [48.0 kB]\nGet:4 http://deb.debian.org/debian bookworm/main amd64 Packages [8786 kB]\nGet:5 http://deb.debian.org/debian bookworm-updates/main amd64 Packages [12.7 kB]\nGet:6 http://deb.debian.org/debian-security bookworm-security/main amd64 Packages [150 kB]\nFetched 9203 kB in 2s (4738 kB/s)\nReading package lists...\nBuilding dependency tree...\nReading state information...\n11 packages can be upgraded. Run 'apt list --upgradable' to see them.\nReading package lists...\nBuilding dependency tree...\nReading state information...\nThe following additional packages will be installed:\n  libjq1 libonig5 python3-argcomplete python3-toml python3-xmltodict\n  python3-yaml\nThe following NEW packages will be installed:\n  jq libjq1 libonig5 python3-argcomplete python3-toml python3-xmltodict\n  python3-yaml yq\n0 upgraded, 8 newly installed, 0 to remove and 11 not upgraded.\nNeed to get 594 kB of archives.\nAfter this operation, 2019 kB of additional disk space will be used.\nGet:1 http://deb.debian.org/debian bookworm/main amd64 libonig5 amd64 6.9.8-1 [188 kB]\nGet:2 http://deb.debian.org/debian bookworm/main amd64 libjq1 amd64 1.6-2.1 [135 kB]\nGet:3 http://deb.debian.org/debian bookworm/main amd64 jq amd64 1.6-2.1 [64.9 kB]\nGet:4 http://deb.debian.org/debian bookworm/main amd64 python3-argcomplete all 2.0.0-1 [34.7 kB]\nGet:5 http://deb.debian.org/debian bookworm/main amd64 python3-toml all 0.10.2-1 [16.2 kB]\nGet:6 http://deb.debian.org/debian bookworm/main amd64 python3-xmltodict all 0.13.0-1 [16.7 kB]\nGet:7 http://deb.debian.org/debian bookworm/main amd64 python3-yaml amd64 6.0-3+b2 [119 kB]\nGet:8 http://deb.debian.org/debian bookworm/main amd64 yq all 3.1.0-3 [19.2 kB]\ndebconf: delaying package configuration, since apt-utils is not installed\nFetched 594 kB in 0s (1450 kB/s)\nSelecting previously unselected package libonig5:amd64.\r\n(Reading database ... \r(Reading database ... 5%!\(MISSING)r(Reading database ... 10%!\(MISSING)r(Reading database ... 15%!\(MISSING)r(Reading database ... 20%!\(MISSING)r(Reading database ... 25%!\(MISSING)r(Reading database ... 30%!\(MISSING)r(Reading database ... 35%!\(MISSING)r(Reading database ... 40%!\(MISSING)r(Reading database ... 45%!\(MISSING)r(Reading database ... 50%!\(MISSING)r(Reading database ... 55%!\(MISSING)r(Reading database ... 60%!\(MISSING)r(Reading database ... 65%!\(MISSING)r(Reading database ... 70%!\(MISSING)r(Reading database ... 75%!\(MISSING)r(Reading database ... 80%!\(MISSING)r(Reading database ... 85%!\(MISSING)r(Reading database ... 90%!\(MISSING)r(Reading database ... 95%!\(MISSING)r(Reading database ... 100%!\(MISSING)r(Reading database ... 23259 files and directories currently installed.)\r\nPreparing to unpack .../0-libonig5_6.9.8-1_amd64.deb ...\r\nUnpacking libonig5:amd64 (6.9.8-1) ...\r\nSelecting previously unselected package libjq1:amd64.\r\nPreparing to unpack .../1-libjq1_1.6-2.1_amd64.deb ...\r\nUnpacking libjq1:amd64 (1.6-2.1) ...\r\nSelecting previously unselected package jq.\r\nPreparing to unpack .../2-jq_1.6-2.1_amd64.deb ...\r\nUnpacking jq (1.6-2.1) ...\r\nSelecting previously unselected package python3-argcomplete.\r\nPreparing to unpack .../3-python3-argcomplete_2.0.0-1_all.deb ...\r\nUnpacking python3-argcomplete (2.0.0-1) ...\r\nSelecting previously unselected package python3-toml.\r\nPreparing to unpack .../4-python3-toml_0.10.2-1_all.deb ...\r\nUnpacking python3-toml (0.10.2-1) ...\r\nSelecting previously unselected package python3-xmltodict.\r\nPreparing to unpack .../5-python3-xmltodict_0.13.0-1_all.deb ...\r\nUnpacking python3-xmltodict (0.13.0-1) ...\r\nSelecting previously unselected package python3-yaml.\r\nPreparing to unpack .../6-python3-yaml_6.0-3+b2_amd64.deb ...\r\nUnpacking python3-yaml (6.0-3+b2) ...\r\nSelecting previously unselected package yq.\r\nPreparing to unpack .../7-yq_3.1.0-3_all.deb ...\r\nUnpacking yq (3.1.0-3) ...\r\nSetting up python3-yaml (6.0-3+b2) ...\r\nSetting up python3-xmltodict (0.13.0-1) ...\r\nSetting up python3-toml (0.10.2-1) ...\r\nSetting up python3-argcomplete (2.0.0-1) ...\r\nSetting up libonig5:amd64 (6.9.8-1) ...\r\nSetting up libjq1:amd64 (1.6-2.1) ...\r\nSetting up jq (1.6-2.1) ...\r\nSetting up yq (3.1.0-3) ...\r\nProcessing triggers for libc-bin (2.36-9+deb12u4) ...\r\nInstalling foundryup...\n\nDetected your preferred shell is bash and added foundryup to PATH.\nRun 'source /root/.bashrc' or start a new terminal session to use foundryup.\nThen, simply run 'foundryup' to install Foundry.\n/opt /\n--2024-04-02 09:01:26--  https://github.com/maticnetwork/polygon-cli/releases/download/v0.1.42/polycli_v0.1.42_linux_amd64.tar.gz\nResolving github.com (github.com)... 20.205.243.166\nConnecting to github.com (github.com)|20.205.243.166|:443... connected.\nHTTP request sent, awaiting response... 302 Found\nLocation: https://objects.githubusercontent.com/github-production-release-asset-2e65be/511928256/db1181cc-0d13-4ed3-b28b-13ad2c820542?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAVCODYLSA53PQK4ZA%!F(MISSING)20240402%!F(MISSING)us-east-1%!F(MISSING)s3%!F(MISSING)aws4_request&X-Amz-Date=20240402T090127Z&X-Amz-Expires=300&X-Amz-Signature=5bc08ff32b505e43889bce4cb77f6d05943a6d8671811eebf60d720dee616202&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=511928256&response-content-disposition=attachment%!B(MISSING)%!f(MISSING)ilename%!D(MISSING)polycli_v0.1.42_linux_amd64.tar.gz&response-content-type=application%!F(MISSING)octet-stream [following]\n--2024-04-02 09:01:27--  https://objects.githubusercontent.com/github-production-release-asset-2e65be/511928256/db1181cc-0d13-4ed3-b28b-13ad2c820542?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAVCODYLSA53PQK4ZA%!F(MISSING)20240402%!F(MISSING)us-east-1%!F(MISSING)s3%!F(MISSING)aws4_request&X-Amz-Date=20240402T090127Z&X-Amz-Expires=300&X-Amz-Signature=5bc08ff32b505e43889bce4cb77f6d05943a6d8671811eebf60d720dee616202&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=511928256&response-content-disposition=attachment%!B(MISSING)%!f(MISSING)ilename%!D(MISSING)polycli_v0.1.42_linux_amd64.tar.gz&response-content-type=application%!F(MISSING)octet-stream\nResolving objects.githubusercontent.com (objects.githubusercontent.com)... 185.199.108.133, 185.199.110.133, 185.199.111.133, ...\nConnecting to objects.githubusercontent.com (objects.githubusercontent.com)|185.199.108.133|:443... connected.\nHTTP request sent, awaiting response... 200 OK\nLength: 13818503 (13M) [application/octet-stream]\nSaving to: 'polycli_v0.1.42_linux_amd64.tar.gz'\n\n     0K .......... .......... .......... .......... ..........  0%!K(MISSING) 19s\n    50K .......... .......... .......... .......... ..........  0%!K(MISSING) 17s\n   100K .......... .......... .......... .......... ..........  1%!M(MISSING) 12s\n   150K .......... .......... .......... .......... ..........  1%!M(MISSING) 10s\n   200K .......... .......... .......... .......... ..........  1%!M(MISSING) 10s\n   250K .......... .......... .......... .......... ..........  2%!M(MISSING) 9s\n   300K .......... .......... .......... .......... ..........  2%!M(MISSING) 8s\n   350K .......... .......... .......... .......... ..........  2%!M(MISSING) 7s\n   400K .......... .......... .......... .......... ..........  3%!M(MISSING) 6s\n   450K .......... .......... .......... .......... ..........  3%!M(MISSING) 6s\n   500K .......... .......... .......... .......... ..........  4%!M(MISSING) 6s\n   550K .......... .......... .......... .......... ..........  4%!M(MISSING) 5s\n   600K .......... .......... .......... .......... ..........  4%!M(MISSING) 5s\n   650K .......... .......... .......... .......... ..........  5%!M(MISSING) 5s\n   700K .......... .......... .......... .......... ..........  5%!M(MISSING) 4s\n   750K .......... .......... .......... .......... ..........  5%!M(MISSING) 4s\n   800K .......... .......... .......... .......... ..........  6%!M(MISSING) 4s\n   850K .......... .......... .......... .......... ..........  6%!M(MISSING) 4s\n   900K .......... .......... .......... .......... ..........  7%!M(MISSING) 4s\n   950K .......... .......... .......... .......... ..........  7%!M(MISSING) 4s\n  1000K .......... .......... .......... .......... ..........  7%!M(MISSING) 4s\n  1050K .......... .......... .......... .......... ..........  8%!M(MISSING) 3s\n  1100K .......... .......... .......... .......... ..........  8%!M(MISSING) 3s\n  1150K .......... .......... .......... .......... ..........  8%!M(MISSING) 3s\n  1200K .......... .......... .......... .......... ..........  9%!M(MISSING) 3s\n  1250K .......... .......... .......... .......... ..........  9%!M(MISSING) 3s\n  1300K .......... .......... .......... .......... .......... 10%!M(MISSING) 3s\n  1350K .......... .......... .......... .......... .......... 10%!M(MISSING) 3s\n  1400K .......... .......... .......... .......... .......... 10%!M(MISSING) 3s\n  1450K .......... .......... .......... .......... .......... 11%!M(MISSING) 3s\n  1500K .......... .......... .......... .......... .......... 11%!M(MISSING) 3s\n  1550K .......... .......... .......... .......... .......... 11%!M(MISSING) 2s\n  1600K .......... .......... .......... .......... .......... 12%!M(MISSING) 2s\n  1650K .......... .......... .......... .......... .......... 12%!M(MISSING) 2s\n  1700K .......... .......... .......... .......... .......... 12%!M(MISSING) 2s\n  1750K .......... .......... .......... .......... .......... 13%!M(MISSING) 2s\n  1800K .......... .......... .......... .......... .......... 13%!M(MISSING) 2s\n  1850K .......... .......... .......... .......... .......... 14%!M(MISSING) 2s\n  1900K .......... .......... .......... .......... .......... 14%!M(MISSING) 2s\n  1950K .......... .......... .......... .......... .......... 14%!M(MISSING) 2s\n  2000K .......... .......... .......... .......... .......... 15%!M(MISSING) 2s\n  2050K .......... .......... .......... .......... .......... 15%!M(MISSING) 2s\n  2100K .......... .......... .......... .......... .......... 15%!M(MISSING) 2s\n  2150K .......... .......... .......... .......... .......... 16%!M(MISSING) 2s\n  2200K .......... .......... .......... .......... .......... 16%!M(MISSING) 2s\n  2250K .......... .......... .......... .......... .......... 17%!M(MISSING) 2s\n  2300K .......... .......... .......... .......... .......... 17%!M(MISSING) 2s\n  2350K .......... .......... .......... .......... .......... 17%!M(MISSING) 2s\n  2400K .......... .......... .......... .......... .......... 18%!M(MISSING) 2s\n  2450K .......... .......... .......... .......... .......... 18%!M(MISSING) 2s\n  2500K .......... .......... .......... .......... .......... 18%!M(MISSING) 2s\n  2550K .......... .......... .......... .......... .......... 19%!M(MISSING) 2s\n  2600K .......... .......... .......... .......... .......... 19%!M(MISSING) 2s\n  2650K .......... .......... .......... .......... .......... 20%!M(MISSING) 2s\n  2700K .......... .......... .......... .......... .......... 20%!M(MISSING) 1s\n  2750K .......... .......... .......... .......... .......... 20%!M(MISSING) 1s\n  2800K .......... .......... .......... .......... .......... 21%!M(MISSING) 1s\n  2850K .......... .......... .......... .......... .......... 21%!M(MISSING) 1s\n  2900K .......... .......... .......... .......... .......... 21%!M(MISSING) 1s\n  2950K .......... .......... .......... .......... .......... 22%!M(MISSING) 1s\n  3000K .......... .......... .......... .......... .......... 22%!M(MISSING) 1s\n  3050K .......... .......... .......... .......... .......... 22%!M(MISSING) 1s\n  3100K .......... .......... .......... .......... .......... 23%!M(MISSING) 1s\n  3150K .......... .......... .......... .......... .......... 23%!M(MISSING) 1s\n  3200K .......... .......... .......... .......... .......... 24%!M(MISSING) 1s\n  3250K .......... .......... .......... .......... .......... 24%!M(MISSING) 1s\n  3300K .......... .......... .......... .......... .......... 24%!M(MISSING) 1s\n  3350K .......... .......... .......... .......... .......... 25%!M(MISSING) 1s\n  3400K .......... .......... .......... .......... .......... 25%!M(MISSING) 1s\n  3450K .......... .......... .......... .......... .......... 25%!M(MISSING) 1s\n  3500K .......... .......... .......... .......... .......... 26%!M(MISSING) 1s\n  3550K .......... .......... .......... .......... .......... 26%!M(MISSING) 1s\n  3600K .......... .......... .......... .......... .......... 27%!M(MISSING) 1s\n  3650K .......... .......... .......... .......... .......... 27%!M(MISSING) 1s\n  3700K .......... .......... .......... .......... .......... 27%!M(MISSING) 1s\n  3750K .......... .......... .......... .......... .......... 28%!M(MISSING) 1s\n  3800K .......... .......... .......... .......... .......... 28%!M(MISSING) 1s\n  3850K .......... .......... .......... .......... .......... 28%!M(MISSING) 1s\n  3900K .......... .......... .......... .......... .......... 29%!M(MISSING) 1s\n  3950K .......... .......... .......... .......... .......... 29%!M(MISSING) 1s\n  4000K .......... .......... .......... .......... .......... 30%!M(MISSING) 1s\n  4050K .......... .......... .......... .......... .......... 30%!M(MISSING) 1s\n  4100K .......... .......... .......... .......... .......... 30%!M(MISSING) 1s\n  4150K .......... .......... .......... .......... .......... 31%!M(MISSING) 1s\n  4200K .......... .......... .......... .......... .......... 31%!M(MISSING) 1s\n  4250K .......... .......... .......... .......... .......... 31%!M(MISSING) 1s\n  4300K .......... .......... .......... .......... .......... 32%!M(MISSING) 1s\n  4350K .......... .......... .......... .......... .......... 32%!M(MISSING) 1s\n  4400K .......... .......... .......... .......... .......... 32%!M(MISSING) 1s\n  4450K .......... .......... .......... .......... .......... 33%!M(MISSING) 1s\n  4500K .......... .......... .......... .......... .......... 33%!M(MISSING) 1s\n  4550K .......... .......... .......... .......... .......... 34%!M(MISSING) 1s\n  4600K .......... .......... .......... .......... .......... 34%!M(MISSING) 1s\n  4650K .......... .......... .......... .......... .......... 34%!M(MISSING) 1s\n  4700K .......... .......... .......... .......... .......... 35%!M(MISSING) 1s\n  4750K .......... .......... .......... .......... .......... 35%!M(MISSING) 1s\n  4800K .......... .......... .......... .......... .......... 35%!M(MISSING) 1s\n  4850K .......... .......... .......... .......... .......... 36%!M(MISSING) 1s\n  4900K .......... .......... .......... .......... .......... 36%!M(MISSING) 1s\n  4950K .......... .......... .......... .......... .......... 37%!M(MISSING) 1s\n  5000K .......... .......... .......... .......... .......... 37%!M(MISSING) 1s\n  5050K .......... .......... .......... .......... .......... 37%!M(MISSING) 1s\n  5100K .......... .......... .......... .......... .......... 38%!M(MISSING) 1s\n  5150K .......... .......... .......... .......... .......... 38%!M(MISSING) 1s\n  5200K .......... .......... .......... .......... .......... 38%!M(MISSING) 1s\n  5250K .......... .......... .......... .......... .......... 39%!M(MISSING) 1s\n  5300K .......... .......... .......... .......... .......... 39%!M(MISSING) 1s\n  5350K .......... .......... .......... .......... .......... 40%!M(MISSING) 1s\n  5400K .......... .......... .......... .......... .......... 40%!M(MISSING) 1s\n  5450K .......... .......... .......... .......... .......... 40%!M(MISSING) 1s\n  5500K .......... .......... .......... .......... .......... 41%!M(MISSING) 1s\n  5550K .......... .......... .......... .......... .......... 41%!M(MISSING) 1s\n  5600K .......... .......... .......... .......... .......... 41%!M(MISSING) 1s\n  5650K .......... .......... .......... .......... .......... 42%!M(MISSING) 1s\n  5700K .......... .......... .......... .......... .......... 42%!M(MISSING) 1s\n  5750K .......... .......... .......... .......... .......... 42%!M(MISSING) 1s\n  5800K .......... .......... .......... .......... .......... 43%!M(MISSING) 1s\n  5850K .......... .......... .......... .......... .......... 43%!M(MISSING) 1s\n  5900K .......... .......... .......... .......... .......... 44%!M(MISSING) 1s\n  5950K .......... .......... .......... .......... .......... 44%!M(MISSING) 1s\n  6000K .......... .......... .......... .......... .......... 44%!M(MISSING) 1s\n  6050K .......... .......... .......... .......... .......... 45%!M(MISSING) 1s\n  6100K .......... .......... .......... .......... .......... 45%!M(MISSING) 1s\n  6150K .......... .......... .......... .......... .......... 45%!M(MISSING) 1s\n  6200K .......... .......... .......... .......... .......... 46%!M(MISSING) 1s\n  6250K .......... .......... .......... .......... .......... 46%!M(MISSING) 1s\n  6300K .......... .......... .......... .......... .......... 47%!M(MISSING) 1s\n  6350K .......... .......... .......... .......... .......... 47%!M(MISSING) 1s\n  6400K .......... .......... .......... .......... .......... 47%!M(MISSING) 1s\n  6450K .......... .......... .......... .......... .......... 48%!M(MISSING) 1s\n  6500K .......... .......... .......... .......... .......... 48%!M(MISSING) 1s\n  6550K .......... .......... .......... .......... .......... 48%!M(MISSING) 1s\n  6600K .......... .......... .......... .......... .......... 49%!M(MISSING) 1s\n  6650K .......... .......... .......... .......... .......... 49%!M(MISSING) 1s\n  6700K .......... .......... .......... .......... .......... 50%!M(MISSING) 1s\n  6750K .......... .......... .......... .......... .......... 50%!M(MISSING) 1s\n  6800K .......... .......... .......... .......... .......... 50%!M(MISSING) 1s\n  6850K .......... .......... .......... .......... .......... 51%!M(MISSING) 1s\n  6900K .......... .......... .......... .......... .......... 51%!M(MISSING) 1s\n  6950K .......... .......... .......... .......... .......... 51%!M(MISSING) 1s\n  7000K .......... .......... .......... .......... .......... 52%!M(MISSING) 1s\n  7050K .......... .......... .......... .......... .......... 52%!M(MISSING) 1s\n  7100K .......... .......... .......... .......... .......... 52%!M(MISSING) 0s\n  7150K .......... .......... .......... .......... .......... 53%!M(MISSING) 0s\n  7200K .......... .......... .......... .......... .......... 53%!M(MISSING) 0s\n  7250K .......... .......... .......... .......... .......... 54%!M(MISSING) 0s\n  7300K .......... .......... .......... .......... .......... 54%!M(MISSING) 0s\n  7350K .......... .......... .......... .......... .......... 54%!M(MISSING) 0s\n  7400K .......... .......... .......... .......... .......... 55%!M(MISSING) 0s\n  7450K .......... .......... .......... .......... .......... 55%!M(MISSING) 0s\n  7500K .......... .......... .......... .......... .......... 55%!M(MISSING) 0s\n  7550K .......... .......... .......... .......... .......... 56%!M(MISSING) 0s\n  7600K .......... .......... .......... .......... .......... 56%!M(MISSING) 0s\n  7650K .......... .......... .......... .......... .......... 57%!M(MISSING) 0s\n  7700K .......... .......... .......... .......... .......... 57%!M(MISSING) 0s\n  7750K .......... .......... .......... .......... .......... 57%!M(MISSING) 0s\n  7800K .......... .......... .......... .......... .......... 58%!M(MISSING) 0s\n  7850K .......... .......... .......... .......... .......... 58%!M(MISSING) 0s\n  7900K .......... .......... .......... .......... .......... 58%!M(MISSING) 0s\n  7950K .......... .......... .......... .......... .......... 59%!M(MISSING) 0s\n  8000K .......... .......... .......... .......... .......... 59%!M(MISSING) 0s\n  8050K .......... .......... .......... .......... .......... 60%!M(MISSING) 0s\n  8100K .......... .......... .......... .......... .......... 60%!M(MISSING) 0s\n  8150K .......... .......... .......... .......... .......... 60%!M(MISSING) 0s\n  8200K .......... .......... .......... .......... .......... 61%!M(MISSING) 0s\n  8250K .......... .......... .......... .......... .......... 61%!M(MISSING) 0s\n  8300K .......... .......... .......... .......... .......... 61%!M(MISSING) 0s\n  8350K .......... .......... .......... .......... .......... 62%!M(MISSING) 0s\n  8400K .......... .......... .......... .......... .......... 62%!M(MISSING) 0s\n  8450K .......... .......... .......... .......... .......... 62%!M(MISSING) 0s\n  8500K .......... .......... .......... .......... .......... 63%!M(MISSING) 0s\n  8550K .......... .......... .......... .......... .......... 63%!M(MISSING) 0s\n  8600K .......... .......... .......... .......... .......... 64%!M(MISSING) 0s\n  8650K .......... .......... .......... .......... .......... 64%!M(MISSING) 0s\n  8700K .......... .......... .......... .......... .......... 64%!M(MISSING) 0s\n  8750K .......... .......... .......... .......... .......... 65%!M(MISSING) 0s\n  8800K .......... .......... .......... .......... .......... 65%!M(MISSING) 0s\n  8850K .......... .......... .......... .......... .......... 65%!M(MISSING) 0s\n  8900K .......... .......... .......... .......... .......... 66%!M(MISSING) 0s\n  8950K .......... .......... .......... .......... .......... 66%!M(MISSING) 0s\n  9000K .......... .......... .......... .......... .......... 67%!M(MISSING) 0s\n  9050K .......... .......... .......... .......... .......... 67%!M(MISSING) 0s\n  9100K .......... .......... .......... .......... .......... 67%!M(MISSING) 0s\n  9150K .......... .......... .......... .......... .......... 68%!M(MISSING) 0s\n  9200K .......... .......... .......... .......... .......... 68%!M(MISSING) 0s\n  9250K .......... .......... .......... .......... .......... 68%!M(MISSING) 0s\n  9300K .......... .......... .......... .......... .......... 69%!M(MISSING) 0s\n  9350K .......... .......... .......... .......... .......... 69%!M(MISSING) 0s\n  9400K .......... .......... .......... .......... .......... 70%!M(MISSING) 0s\n  9450K .......... .......... .......... .......... .......... 70%!M(MISSING) 0s\n  9500K .......... .......... .......... .......... .......... 70%!M(MISSING) 0s\n  9550K .......... .......... .......... .......... .......... 71%!M(MISSING) 0s\n  9600K .......... .......... .......... .......... .......... 71%!M(MISSING) 0s\n  9650K .......... .......... .......... .......... .......... 71%!M(MISSING) 0s\n  9700K .......... .......... .......... .......... .......... 72%!M(MISSING) 0s\n  9750K .......... .......... .......... .......... .......... 72%!M(MISSING) 0s\n  9800K .......... .......... .......... .......... .......... 72%!M(MISSING) 0s\n  9850K .......... .......... .......... .......... .......... 73%!M(MISSING) 0s\n  9900K .......... .......... .......... .......... .......... 73%!M(MISSING) 0s\n  9950K .......... .......... .......... .......... .......... 74%!M(MISSING) 0s\n 10000K .......... .......... .......... .......... .......... 74%!M(MISSING) 0s\n 10050K .......... .......... .......... .......... .......... 74%!M(MISSING) 0s\n 10100K .......... .......... .......... .......... .......... 75%!M(MISSING) 0s\n 10150K .......... .......... .......... .......... .......... 75%!M(MISSING) 0s\n 10200K .......... .......... .......... .......... .......... 75%!M(MISSING) 0s\n 10250K .......... .......... .......... .......... .......... 76%!M(MISSING) 0s\n 10300K .......... .......... .......... .......... .......... 76%!M(MISSING) 0s\n 10350K .......... .......... .......... .......... .......... 77%!M(MISSING) 0s\n 10400K .......... .......... .......... .......... .......... 77%!M(MISSING) 0s\n 10450K .......... .......... .......... .......... .......... 77%!M(MISSING) 0s\n 10500K .......... .......... .......... .......... .......... 78%!M(MISSING) 0s\n 10550K .......... .......... .......... .......... .......... 78%!M(MISSING) 0s\n 10600K .......... .......... .......... .......... .......... 78%!M(MISSING) 0s\n 10650K .......... .......... .......... .......... .......... 79%!M(MISSING) 0s\n 10700K .......... .......... .......... .......... .......... 79%!M(MISSING) 0s\n 10750K .......... .......... .......... .......... .......... 80%!M(MISSING) 0s\n 10800K .......... .......... .......... .......... .......... 80%!M(MISSING) 0s\n 10850K .......... .......... .......... .......... .......... 80%!M(MISSING) 0s\n 10900K .......... .......... .......... .......... .......... 81%!M(MISSING) 0s\n 10950K .......... .......... .......... .......... .......... 81%!M(MISSING) 0s\n 11000K .......... .......... .......... .......... .......... 81%!M(MISSING) 0s\n 11050K .......... .......... .......... .......... .......... 82%!M(MISSING) 0s\n 11100K .......... .......... .......... .......... .......... 82%!M(MISSING) 0s\n 11150K .......... .......... .......... .......... .......... 82%!M(MISSING) 0s\n 11200K .......... .......... .......... .......... .......... 83%!M(MISSING) 0s\n 11250K .......... .......... .......... .......... .......... 83%!M(MISSING) 0s\n 11300K .......... .......... .......... .......... .......... 84%!M(MISSING) 0s\n 11350K .......... .......... .......... .......... .......... 84%!M(MISSING) 0s\n 11400K .......... .......... .......... .......... .......... 84%!M(MISSING) 0s\n 11450K .......... .......... .......... .......... .......... 85%!M(MISSING) 0s\n 11500K .......... .......... .......... .......... .......... 85%!M(MISSING) 0s\n 11550K .......... .......... .......... .......... .......... 85%!M(MISSING) 0s\n 11600K .......... .......... .......... .......... .......... 86%!M(MISSING) 0s\n 11650K .......... .......... .......... .......... .......... 86%!M(MISSING) 0s\n 11700K .......... .......... .......... .......... .......... 87%!M(MISSING) 0s\n 11750K .......... .......... .......... .......... .......... 87%!M(MISSING) 0s\n 11800K .......... .......... .......... .......... .......... 87%!M(MISSING) 0s\n 11850K .......... .......... .......... .......... .......... 88%!M(MISSING) 0s\n 11900K .......... .......... .......... .......... .......... 88%!M(MISSING) 0s\n 11950K .......... .......... .......... .......... .......... 88%!M(MISSING) 0s\n 12000K .......... .......... .......... .......... .......... 89%!M(MISSING) 0s\n 12050K .......... .......... .......... .......... .......... 89%!M(MISSING) 0s\n 12100K .......... .......... .......... .......... .......... 90%!M(MISSING) 0s\n 12150K .......... .......... .......... .......... .......... 90%!M(MISSING) 0s\n 12200K .......... .......... .......... .......... .......... 90%!M(MISSING) 0s\n 12250K .......... .......... .......... .......... .......... 91%!M(MISSING) 0s\n 12300K .......... .......... .......... .......... .......... 91%!M(MISSING) 0s\n 12350K .......... .......... .......... .......... .......... 91%!M(MISSING) 0s\n 12400K .......... .......... .......... .......... .......... 92%!M(MISSING) 0s\n 12450K .......... .......... .......... .......... .......... 92%!M(MISSING) 0s\n 12500K .......... .......... .......... .......... .......... 92%!M(MISSING) 0s\n 12550K .......... .......... .......... .......... .......... 93%!M(MISSING) 0s\n 12600K .......... .......... .......... .......... .......... 93%!M(MISSING) 0s\n 12650K .......... .......... .......... .......... .......... 94%!M(MISSING) 0s\n 12700K .......... .......... .......... .......... .......... 94%!M(MISSING) 0s\n 12750K .......... .......... .......... .......... .......... 94%!M(MISSING) 0s\n 12800K .......... .......... .......... .......... .......... 95%!M(MISSING) 0s\n 12850K .......... .......... .......... .......... .......... 95%!M(MISSING) 0s\n 12900K .......... .......... .......... .......... .......... 95%!M(MISSING) 0s\n 12950K .......... .......... .......... .......... .......... 96%!M(MISSING) 0s\n 13000K .......... .......... .......... .......... .......... 96%!M(MISSING) 0s\n 13050K .......... .......... .......... .......... .......... 97%!M(MISSING) 0s\n 13100K .......... .......... .......... .......... .......... 97%!M(MISSING) 0s\n 13150K .......... .......... .......... .......... .......... 97%!M(MISSING) 0s\n 13200K .......... .......... .......... .......... .......... 98%!M(MISSING) 0s\n 13250K .......... .......... .......... .......... .......... 98%!M(MISSING) 0s\n 13300K .......... .......... .......... .......... .......... 98%!M(MISSING) 0s\n 13350K .......... .......... .......... .......... .......... 99%!M(MISSING) 0s\n 13400K .......... .......... .......... .......... .......... 99%!M(MISSING) 0s\n 13450K .......... .......... .......... .......... ....      100%!M(MISSING)=0.8s\n\n2024-04-02 09:01:29 (16.3 MB/s) - 'polycli_v0.1.42_linux_amd64.tar.gz' saved [13818503/13818503]\n\nPolygon CLI Version v0.1.42\n/\nFunding important accounts on l1\n\nblockHash               0x8b7caa094e7cef6ec1e9a414ea25ef02041c8ba74411b85e0ac74a151845dba1\nblockNumber             5612293\ncontractAddress         \ncumulativeGasUsed       1979783\neffectiveGasPrice       7981439846\nfrom                    0x7Ef61F73BF2ad33c49ce6c55AB421e0abB8659Fa\ngasUsed                 21000\nlogs                    []\nlogsBloom               0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000\nroot                    \nstatus                  1\ntransactionHash         0x3b792f020d271314336cbe7bd026f2c238d5cf89ee19ea471234269e20e64276\ntransactionIndex        27\ntype                    2\nto                      0x84973877D3e32687a0A81e4381Bf87A429852d34\n/opt/zkevm-contracts /\nCompiling contracts\nnpm WARN deprecated [email protected]: ganache-core is now ganache; visit https://trfl.io/g7 for details\nnpm WARN deprecated [email protected]: ganache-core is now ganache; visit https://trfl.io/g7 for details\nnpm WARN deprecated [email protected]: this library is no longer supported\nnpm WARN deprecated @oclif/[email protected]: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.\nnpm WARN deprecated [email protected]: testrpc has been renamed to ganache-cli, please use this package from now on.\nnpm WARN deprecated @oclif/[email protected]: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.\nnpm WARN deprecated @ensdomains/[email protected]: Please use @ensdomains/ens-contracts\nnpm WARN deprecated @oclif/[email protected]: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.\nnpm WARN deprecated @oclif/[email protected]: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.\nnpm WARN deprecated @oclif/[email protected]: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.\nnpm WARN deprecated @oclif/[email protected]: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.\nnpm WARN deprecated [email protected]: request has been deprecated, see https://github.com/request/request/issues/3142\nnpm WARN deprecated [email protected]: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.\nnpm WARN deprecated @ensdomains/[email protected]: Please use @ensdomains/ens-contracts\n\nadded 2000 packages, and audited 2004 packages in 1m\n\n199 packages are looking for funding\n  run `npm fund` for details\n\n87 vulnerabilities (4 low, 32 moderate, 27 high, 24 critical)\n\nTo address issues that do not require attention, run:\n  npm audit fix\n\nTo address all issues (including breaking changes), run:\n  npm audit fix --force\n\nRun `npm audit` for details.\nDownloading compiler 0.8.20\nDownloading compiler 0.5.16\nDownloading compiler 0.5.12\ncontracts/mocks/Uni.sol:10:1: Warning: Experimental features are turned on. Do not use experimental features on live deployments.\npragma experimental ABIEncoderV2;\n^-------------------------------^\n\nWarning: Return value of low-level calls not used.\n   --> contracts/v2/PolygonZkEVMBridgeV2.sol:957:13:\n    |\n957 |             address(token).call(\n    |             ^ (Relevant source part starts here and spans across multiple lines).\n\n\nWarning: Return value of low-level calls not used.\n    --> contracts/v2/PolygonZkEVMBridgeV2.sol:1009:13:\n     |\n1009 |             address(token).call(\n     |             ^ (Relevant source part starts here and spans across multiple lines).\n\n\nWarning: Return value of low-level calls not used.\n   --> contracts/v2/PolygonZkEVMBridgeV2.sol:957:13:\n    |\n957 |             address(token).call(\n    |             ^ (Relevant source part starts here and spans across multiple lines).\n\n\nWarning: Return value of low-level calls not used.\n    --> contracts/v2/PolygonZkEVMBridgeV2.sol:1009:13:\n     |\n1009 |             address(token).call(\n     |             ^ (Relevant source part starts here and spans across multiple lines).\n\n\nWarning: Contract code size is 26532 bytes and exceeds 24576 bytes (a limit introduced in Spurious Dragon). This contract may not be deployable on Mainnet. Consider enabling the optimizer (with a low \"runs\" value!), turning off revert strings, or using libraries.\n  --> contracts/v2/PolygonZkEVMBridgeV2.sol:19:1:\n   |\n19 | contract PolygonZkEVMBridgeV2 is\n   | ^ (Relevant source part starts here and spans across multiple lines).\n\n\nWarning: Return value of low-level calls not used.\n   --> contracts/PolygonZkEVMBridge.sol:726:13:\n    |\n726 |             address(token).call(\n    |             ^ (Relevant source part starts here and spans across multiple lines).\n\n\nWarning: Return value of low-level calls not used.\n   --> contracts/PolygonZkEVMBridge.sol:778:13:\n    |\n778 |             address(token).call(\n    |             ^ (Relevant source part starts here and spans across multiple lines).\n\n\nWarning: Return value of low-level calls not used.\n  --> contracts/mocks/SequenceBatchesMock.sol:16:9:\n   |\n16 |         destination.call(data);\n   |         ^^^^^^^^^^^^^^^^^^^^^^\n\n\nWarning: Return value of low-level calls not used.\n   --> contracts/v2/PolygonZkEVMBridgeV2.sol:957:13:\n    |\n957 |             address(token).call(\n    |             ^ (Relevant source part starts here and spans across multiple lines).\n\n\nWarning: Return value of low-level calls not used.\n    --> contracts/v2/PolygonZkEVMBridgeV2.sol:1009:13:\n     |\n1009 |             address(token).call(\n     |             ^ (Relevant source part starts here and spans across multiple lines).\n\n\nWarning: Unnamed return variable can remain unassigned. Add an explicit return with value to all non-reverting code paths or name the variable.\n  --> contracts/v2/mocks/PolygonRollupManagerEmptyMock.sol:34:25:\n   |\n34 |     ) external returns (uint64) {\n   |                         ^^^^^^\n\n\nWarning: Unused function parameter. Remove or comment out the variable name to silence this warning.\n   --> contracts/mocks/PolygonZkEVMMock.sol:217:9:\n    |\n217 |         uint256[2] calldata proofA,\n    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^\n\n\nWarning: Unused function parameter. Remove or comment out the variable name to silence this warning.\n   --> contracts/mocks/PolygonZkEVMMock.sol:218:9:\n    |\n218 |         uint256[2][2] calldata proofB,\n    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\n\nWarning: Unused function parameter. Remove or comment out the variable name to silence this warning.\n   --> contracts/mocks/PolygonZkEVMMock.sol:219:9:\n    |\n219 |         uint256[2] calldata proofC\n    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^\n\n\nWarning: Unused local variable.\n   --> contracts/mocks/PolygonZkEVMMock.sol:268:9:\n    |\n268 |         bytes memory snarkHashBytes = getInputSnarkBytes(\n    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\n\nWarning: Unused function parameter. Remove or comment out the variable name to silence this warning.\n --> contracts/mocks/VerifierRollupHelperMock.sol:9:9:\n  |\n9 |         bytes32[24] calldata proof,\n  |         ^^^^^^^^^^^^^^^^^^^^^^^^^^\n\n\nWarning: Unused function parameter. Remove or comment out the variable name to silence this warning.\n  --> contracts/mocks/VerifierRollupHelperMock.sol:10:9:\n   |\n10 |         uint256[1] memory pubSignals\n   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\n\nWarning: Unused function parameter. Remove or comment out the variable name to silence this warning.\n  --> contracts/v2/mocks/PolygonRollupManagerEmptyMock.sol:21:9:\n   |\n21 |         bytes32 newAccInputHash\n   |         ^^^^^^^^^^^^^^^^^^^^^^^\n\n\nWarning: Unused function parameter. Remove or comment out the variable name to silence this warning.\n  --> contracts/v2/mocks/PolygonRollupManagerMockInternalTest.sol:27:9:\n   |\n27 |         PolygonZkEVMExistentEtrog polygonZkEVM,\n   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\n\nWarning: Unused function parameter. Remove or comment out the variable name to silence this warning.\n  --> contracts/v2/mocks/PolygonRollupManagerMockInternalTest.sol:28:9:\n   |\n28 |         IVerifierRollup zkEVMVerifier,\n   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\n\nWarning: Unused function parameter. Remove or comment out the variable name to silence this warning.\n  --> contracts/v2/mocks/PolygonRollupManagerMockInternalTest.sol:29:9:\n   |\n29 |         uint64 zkEVMForkID,\n   |         ^^^^^^^^^^^^^^^^^^\n\n\nWarning: Unused function parameter. Remove or comment out the variable name to silence this warning.\n  --> contracts/v2/mocks/PolygonRollupManagerMockInternalTest.sol:30:9:\n   |\n30 |         uint64 zkEVMChainID\n   |         ^^^^^^^^^^^^^^^^^^^\n\n\nWarning: Unused function parameter. Remove or comment out the variable name to silence this warning.\n   --> contracts/verifiers/FflonkVerifier.sol:162:26:\n    |\n162 |     function verifyProof(bytes32[24] calldata proof, uint256[1] calldata pubSignals) public view returns (bool) {\n    |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^\n\n\nWarning: Unused function parameter. Remove or comment out the variable name to silence this warning.\n   --> contracts/verifiers/previousVerifiers/FflonkVerifierEtrog.sol:187:9:\n    |\n187 |         bytes32[24] calldata proof,\n    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^\n\n\nWarning: Unused function parameter. Remove or comment out the variable name to silence this warning.\n   --> contracts/verifiers/previousVerifiers/FflonkVerifierIncaberry.sol:187:9:\n    |\n187 |         bytes32[24] calldata proof,\n    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^\n\n\nWarning: Function state mutability can be restricted to pure\n  --> contracts/v2/mocks/PolygonRollupManagerEmptyMock.sol:38:5:\n   |\n38 |     function getBatchFee() public view returns (uint256) {\n   |     ^ (Relevant source part starts here and spans across multiple lines).\n\n\nWarning: Function state mutability can be restricted to pure\n  --> contracts/v2/mocks/PolygonRollupManagerEmptyMock.sol:42:5:\n   |\n42 |     function getForcedBatchFee() public view returns (uint256) {\n   |     ^ (Relevant source part starts here and spans across multiple lines).\n\n\nWarning: Function state mutability can be restricted to pure\n  --> contracts/v2/mocks/PolygonRollupManagerEmptyMock.sol:57:5:\n   |\n57 |     function lastDeactivatedEmergencyStateTimestamp()\n   |     ^ (Relevant source part starts here and spans across multiple lines).\n\n\nWarning: Contract code size is 27945 bytes and exceeds 24576 bytes (a limit introduced in Spurious Dragon). This contract may not be deployable on Mainnet. Consider enabling the optimizer (with a low \"runs\" value!), turning off revert strings, or using libraries.\n  --> contracts/mocks/PolygonZkEVMMock.sol:12:1:\n   |\n12 | contract PolygonZkEVMMock is PolygonZkEVM {\n   | ^ (Relevant source part starts here and spans across multiple lines).\n\n\nWarning: Contract code size is 28940 bytes and exceeds 24576 bytes (a limit introduced in Spurious Dragon). This contract may not be deployable on Mainnet. Consider enabling the optimizer (with a low \"runs\" value!), turning off revert strings, or using libraries.\n  --> contracts/v2/PolygonRollupManager.sol:24:1:\n   |\n24 | contract PolygonRollupManager is\n   | ^ (Relevant source part starts here and spans across multiple lines).\n\n\nWarning: Contract code size is 26532 bytes and exceeds 24576 bytes (a limit introduced in Spurious Dragon). This contract may not be deployable on Mainnet. Consider enabling the optimizer (with a low \"runs\" value!), turning off revert strings, or using libraries.\n  --> contracts/v2/PolygonZkEVMBridgeV2.sol:19:1:\n   |\n19 | contract PolygonZkEVMBridgeV2 is\n   | ^ (Relevant source part starts here and spans across multiple lines).\n\n\nWarning: Contract code size is 28094 bytes and exceeds 24576 bytes (a limit introduced in Spurious Dragon). This contract may not be deployable on Mainnet. Consider enabling the optimizer (with a low \"runs\" value!), turning off revert strings, or using libraries.\n --> contracts/v2/mocks/PolygonRollupManagerMockInternalTest.sol:8:1:\n  |\n8 | contract PolygonRollupManagerMockInternalTest is PolygonRollupManager {\n  | ^ (Relevant source part starts here and spans across multiple lines).\n\n\nGenerating typings for: 123 artifacts in dir: typechain-types for target: ethers-v6\nSuccessfully generated 332 typings!\nCompiled 124 Solidity files successfully (evm targets: istanbul, petersburg, shanghai).\nRunning full l1 contract deployment process\n"

Error encountered running Starlark code.

npm error when compiling zkevm contracts

Here's an extract of the logs

# kurtosis service shell cdk-v1 contracts-001
$ /opt/contract-deploy/run-contract-setup.sh
...
/opt/zkevm-contracts /opt/contract-deploy
Compiling contracts
+ npm ci
npm ERR! code EUSAGE
npm ERR! 
npm ERR! `npm ci` can only install packages when your package.json and package-lock.json or npm-shrinkwrap.json are in sync. Please update your lock file with `npm install` before continuing.
npm ERR! 
npm ERR! Invalid: lock file's [email protected] does not satisfy [email protected]
npm ERR! Invalid: lock file's @nomicfoundation/[email protected] does not satisfy @nomicfoundation/[email protected]
npm ERR! Invalid: lock file's @nomicfoundation/[email protected] does not satisfy @nomicfoundation/[email protected]
npm ERR! Invalid: lock file's @nomicfoundation/[email protected] does not satisfy @nomicfoundation/[email protected]
npm ERR! Invalid: lock file's @nomicfoundation/[email protected] does not satisfy @nomicfoundation/[email protected]
npm ERR! Invalid: lock file's @nomicfoundation/[email protected] does not satisfy @nomicfoundation/[email protected]
npm ERR! Invalid: lock file's @nomicfoundation/[email protected] does not satisfy @nomicfoundation/[email protected]
npm ERR! Invalid: lock file's @nomicfoundation/[email protected] does not satisfy @nomicfoundation/[email protected]
npm ERR! Invalid: lock file's @nomicfoundation/[email protected] does not satisfy @nomicfoundation/[email protected]
npm ERR! Invalid: lock file's @nomicfoundation/[email protected] does not satisfy @nomicfoundation/[email protected]
npm ERR! Missing: @nomicfoundation/[email protected] from lock file
npm ERR! Invalid: lock file's @nomicfoundation/[email protected] does not satisfy @nomicfoundation/[email protected]
npm ERR! Missing: [email protected] from lock file
npm ERR! Invalid: lock file's @nomicfoundation/[email protected] does not satisfy @nomicfoundation/[email protected]
npm ERR! Missing: [email protected] from lock file
npm ERR! Missing: @types/[email protected] from lock file
npm ERR! Missing: [email protected] from lock file
npm ERR! Missing: [email protected] from lock file
npm ERR! Missing: [email protected] from lock file
npm ERR! Missing: [email protected] from lock file
npm ERR! Missing: [email protected] from lock file
npm ERR! Missing: @types/[email protected] from lock file
npm ERR! Missing: [email protected] from lock file
npm ERR! Missing: [email protected] from lock file
npm ERR! Missing: [email protected] from lock file
npm ERR! Missing: [email protected] from lock file
npm ERR! Missing: [email protected] from lock file
npm ERR! Missing: [email protected] from lock file
npm ERR! Missing: [email protected] from lock file
npm ERR! Missing: [email protected] from lock file
npm ERR! Missing: [email protected] from lock file
npm ERR! Missing: [email protected] from lock file
npm ERR! 
npm ERR! Clean install a project
npm ERR! 
npm ERR! Usage:
npm ERR! npm ci
npm ERR! 
npm ERR! Options:
npm ERR! [--install-strategy <hoisted|nested|shallow|linked>] [--legacy-bundling]
npm ERR! [--global-style] [--omit <dev|optional|peer> [--omit <dev|optional|peer> ...]]
npm ERR! [--include <prod|dev|optional|peer> [--include <prod|dev|optional|peer> ...]]
npm ERR! [--strict-peer-deps] [--foreground-scripts] [--ignore-scripts] [--no-audit]
npm ERR! [--no-bin-links] [--no-fund] [--dry-run]
npm ERR! [-w|--workspace <workspace-name> [-w|--workspace <workspace-name> ...]]
npm ERR! [-ws|--workspaces] [--include-workspace-root] [--install-links]
npm ERR! 
npm ERR! aliases: clean-install, ic, install-clean, isntall-clean
npm ERR! 
npm ERR! Run "npm help ci" for more info

npm ERR! A complete log of this run can be found in: /root/.npm/_logs/2024-03-14T15_59_58_048Z-debug-0.log
+ npm ci --no-audit --maxsockets 1
npm ERR! code EUSAGE
npm ERR! 
npm ERR! `npm ci` can only install packages when your package.json and package-lock.json or npm-shrinkwrap.json are in sync. Please update your lock file with `npm install` before continuing.
npm ERR! 
npm ERR! Invalid: lock file's [email protected] does not satisfy [email protected]
npm ERR! Invalid: lock file's @nomicfoundation/[email protected] does not satisfy @nomicfoundation/[email protected]
npm ERR! Invalid: lock file's @nomicfoundation/[email protected] does not satisfy @nomicfoundation/[email protected]
npm ERR! Invalid: lock file's @nomicfoundation/[email protected] does not satisfy @nomicfoundation/[email protected]
npm ERR! Invalid: lock file's @nomicfoundation/[email protected] does not satisfy @nomicfoundation/[email protected]
npm ERR! Invalid: lock file's @nomicfoundation/[email protected] does not satisfy @nomicfoundation/[email protected]
npm ERR! Invalid: lock file's @nomicfoundation/[email protected] does not satisfy @nomicfoundation/[email protected]
npm ERR! Invalid: lock file's @nomicfoundation/[email protected] does not satisfy @nomicfoundation/[email protected]
npm ERR! Invalid: lock file's @nomicfoundation/[email protected] does not satisfy @nomicfoundation/[email protected]
npm  Invalid: lock file's @nomicfoundation/[email protected] does not satisfy @nomicfoundation/[email protected]
npm ERR! Missing: @nomicfoundation/[email protected] from lock file
npm 40mERR!ERR! Invalid: lock file's @nomicfoundation/[email protected] does not satisfy @nomicfoundation/[email protected]
npm ERR! Missing: [email protected] from lock file
npm ERR! Invalid: lock file's @nomicfoundation/[email protected] does not satisfy @nomicfoundation/[email protected]
npm ERR! Missing: [email protected] from lock file
npm ERR! Missing: @types/[email protected] from lock file
npm ERR! Missing: [email protected] from lock file
npm ERR! Missing: [email protected] from lock file
npm ERR! Missing: [email protected] from lock file
npm ERR! Missing: [email protected] from lock file
npm ERR! Missing: [email protected] from lock file
npm ERR! Missing: @types/[email protected] from lock file
npm ERR! Missing: [email protected] from lock file
npm ERR! Missing: [email protected] from lock file
npm ERR! Missing: [email protected] from lock file
npm ERR! Missing: [email protected] from lock file
npm ERR! Missing: [email protected] from lock file
npm ERR! Missing: [email protected] from lock file
npm ERR! Missing: [email protected] from lock file
npm ERR! Missing: [email protected] from lock file
npm ERR! Missing: [email protected] from lock file
npm ERR! Missing: [email protected] from lock file
npm ERR! 
npm ERR! Clean install a project
npm ERR! 
npm ERR! Usage:
npm ERR! npm ci
npm ERR! 
npm ERR! Options:
npm ERR! [--install-strategy <hoisted|nested|shallow|linked>] [--legacy-bundling]
npm ERR! [--global-style] [--omit <dev|optional|peer> [--omit <dev|optional|peer> ...]]
npm ERR! [--include <prod|dev|optional|peer> [--include <prod|dev|optional|peer> ...]]
npm ERR! [--strict-peer-deps] [--foreground-scripts] [--ignore-scripts] [--no-audit]
npm ERR! [--no-bin-links] [--no-fund] [--dry-run]
npm ERR! [-w|--workspace <workspace-name> [-w|--workspace <workspace-name> ...]]
npm ERR! [-ws|--workspaces] [--include-workspace-root] [--install-links]
npm ERR! 
npm ERR! aliases: clean-install, ic, install-clean, isntall-clean
npm ERR! 
npm ERR! Run "npm help ci" for more info

npm ERR! A complete log of this run can be found in: /root/.npm/_logs/2024-03-14T15_59_58_939Z-debug-0.log

Can't deploy on Sepolia: EIP-155 Replay Protection Error: Transactions Missing chainId

System information

Ubuntu 22.04 amd

Commit id

9381ebb

Tools versions

✅ kurtosis 0.89.10 is installed, meets the requirement (=0.89).
✅ docker 26.1.3 is installed, meets the requirement (>=24.7).

You might as well need the following tools to interact with the environment...
✅ jq 1.6 is installed.
✅ yq 3.4.3 is installed, meets the requirement (>=3.2).
✅ cast 0.2.0 is installed.
✅ polycli v0.1.43-5-g73ad3f4 is installed.

Description & steps to reproduce

Describe the bug
Transactions do not specify the chainId, causing replay protection (EIP-155) errors when deploying contracts.

To Reproduce
Steps to reproduce the behavior:

  1. Deploy contracts using the current setup on Sepolia.
  2. Observe the error: Transactions must be replay-protected.

Expected behavior
Transactions should include the chainId to comply with EIP-155 replay protection requirements.

Additional context
The error originates from the file deployment/v2/2_deployPolygonZKEVMDeployers.ts (line 73) which deploys a contract using deployment/helpers/deployment-helpers.ts. The transactions in the helpers file do not specify the chainId.

Also, public nodes on Sepolia do not accept transactions without EIP-155, preventing the transactions from being processed correctly.

Proposed Solution
Ensure all transactions specify the chainId in the deployment scripts.

Example:

const options = {
    gasLimit: 8000000,
    chainId: 11155111 // Correct chainId for Sepolia
};

Desired behavior

Transactions should include the chainId to comply with EIP-155 replay protection requirements, ensuring they are processed correctly by public nodes on Sepolia.

What is the severity of this bug?

Critical; I am blocked and Kurtosis CDK is unusable for me because of this bug.

Do you have document about how to test TPS?

Where did you see the issue in our documentation?

https://www.zeeve.io/blog/a-comprehensive-guide-on-polygon-cdk-and-its-deployment/

Issue description

Near-infinite scalability: All the chains deployed with Polygon CDK have the option to customize the TPS capacity of their chain, which can be multiplied further to achieve hyper-scalability without compromising on security since CDK chains are integrated with advanced cryptographic security.

How to test the TPS?

`nonce too high` errors when following the README for `cdk-erigon`

Running these commands fails at nonce 72

kurtosis-cdk/README.md

Lines 68 to 71 in 821aeaa

polycli loadtest --rpc-url "$ETH_RPC_URL" --legacy --private-key "$PK" --verbosity 700 --requests 500 --rate-limit 5 --mode t
polycli loadtest --rpc-url "$ETH_RPC_URL" --legacy --private-key "$PK" --verbosity 700 --requests 500 --rate-limit 10 --mode t
polycli loadtest --rpc-url "$ETH_RPC_URL" --legacy --private-key "$PK" --verbosity 700 --requests 500 --rate-limit 10 --mode 2
polycli loadtest --rpc-url "$ETH_RPC_URL" --legacy --private-key "$PK" --verbosity 700 --requests 500 --rate-limit 3 --mode uniswapv3

11:46AM TRC Request mode=loadTestModeTransaction nonce=71 request=62 routine=0
11:46AM ERR Recorded an error while sending transactions error="nonce too high" nonce=72 request time=4
11:46AM TRC Request mode=loadTestModeTransaction nonce=72 request=63 routine=0
11:46AM ERR Recorded an error while sending transactions error="nonce too high" nonce=72 request time=3
11:46AM TRC Request mode=loadTestModeTransaction nonce=72 request=64 routine=0
11:46AM ERR Recorded an error while sending transactions error="nonce too high" nonce=72 request time=3
11:46AM TRC Request mode=loadTestModeTransaction nonce=72 request=65 routine=0
...
11:46AM ERR Unable to deploy contract error="nonce too high"
11:46AM ERR Error during the main load test loop error="nonce too high"
11:46AM FTL Received critical error while running load test error="nonce too high"

Versions

kurtosis 0.90.1
kurtosis-cdk 821aeaa
cast 0.2.0 (fd87888 2024-06-17T00:19:40.959752148Z)
Polygon CLI Version v0.1.45-4-ge369181

bug-report.txt

Reuse deployed contracts in Sepolia

Background & motivation

I set up my infrastructure using the local CDK and deployed the contracts on Sepolia. After a while, I decided to shut down my local node with kurtosis clean --all. Is there any way to reuse the existing contracts on L1 when I want to restore the system again, to avoid redeploying them?

I tried setting the deploy_zkevm_contracts_on_l1 flag to false, but this results in an error.

image

Desired behaviour

I would like to manually configure the contract addresses to avoid redeploying them in Sepolia or any other network

How important is this to you?

Nice to have; This feature would make using Kurtosis CDK more enjoyable.

Deploy CDK central environment

Where did you see the issue in our documentation?

https://docs.polygon.technology/cdk/get-started/quickstart/breakdown-deployment/

Issue description

Every time I retry this step, it fails. kurtosis v0.89.6

Adding service with name 'zkevm-prover-002' and image 'hermeznetwork/zkevm-prover:v6.0.0'
There was an error executing Starlark code
An error occurred executing instruction (number 10) at github.com/0xPolygon/kurtosis-cdk/lib/zkevm_prover.star[22:28]:
add_service(name="zkevm-prover-002", config=ServiceConfig(image="hermeznetwork/zkevm-prover:v6.0.0", ports={"executor-server": PortSpec(number=50071, application_protocol="grpc"), "hash-db-server": PortSpec(number=50061, application_protocol="grpc")}, files={"/etc/zkevm": "prover-config-artifact"}, entrypoint=["/bin/bash", "-c"], cmd=["[[ "{{kurtosis:6a6c74ac08fd4b03a3f15604a821dd0e:output.runtime_value}}" == "aarch64" || "{{kurtosis:6a6c74ac08fd4b03a3f15604a821dd0e:output.runtime_value}}" == "arm64" ]] && export EXPERIMENTAL_DOCKER_DESKTOP_FORCE_QEMU=1; /usr/local/bin/zkProver -c /etc/zkevm/prover-config.json"]))
Caused by: Unexpected error occurred starting service 'zkevm-prover-002'
Caused by: An error occurred waiting for all TCP and UDP ports to be open for service 'zkevm-prover-002' with private IP '172.16.0.25'; this is usually due to a misconfiguration in the service itself, so here are the logs:
== SERVICE 'zkevm-prover-002' LOGS ===================================

== FINISHED SERVICE 'zkevm-prover-002' LOGS ===================================
Caused by: An error occurred while waiting for all TCP and UDP ports to be open
Caused by: Unsuccessful ports check for IP '172.16.0.25' and port spec '{privatePortSpec:0xc0006b2540}', even after '240' retries with '500' milliseconds in between retries. Timeout '2m0s' has been reached
Caused by: An error occurred while calling network address '172.16.0.25:50071' with port protocol 'TCP' and using time out '200ms'
Caused by: dial tcp 172.16.0.25:50071: i/o timeout

Error encountered running Starlark code.

"method handler crashed" when following README for `cdk-erigon`

This line fails:

polycli loadtest --rpc-url "$ETH_RPC_URL" --legacy --private-key "$PK" --verbosity 700 --requests 500 --rate-limit 10 --mode 2

$ polycli loadtest --rpc-url "$ETH_RPC_URL" --legacy --private-key "$PK" --verbosity 700 --requests 500 --rate-limit 10 --mode 2
12:40PM TRC Starting logger in console mode
12:40PM INF Starting Load Test
12:40PM INF Connecting with RPC endpoint to initialize load test parameters
12:40PM TRC Retrieved current gas price gasprice=1000000000
12:40PM TRC Current Block Number blocknumber=93
12:40PM TRC Current account balance balance=99998968979000000000000
12:40PM TRC Detected Chain ID chainID=10101
12:40PM TRC Params Input Params={"AdaptiveBackoffFactor":2,"AdaptiveCycleDuration":10,"AdaptiveRateLimit":false,"AdaptiveRateLimitIncrement":50,"BatchSize":999,"BlobFeeCap":100000,"ByteCount":1024,"CallOnly":false,"CallOnlyLatestBlock":false,"ChainID":10101,"ChainSupportBaseFee":false,"Concurrency":1,"ContractAddress":"","ContractCallData":"","ContractCallFunctionArgs":[],"ContractCallFunctionSignature":"","ContractCallPayable":false,"ContractETHAddress":"0x0000000000000000000000000000000000000000","CurrentBaseFee":null,"CurrentGasPrice":1000000000,"CurrentGasTipCap":null,"CurrentNonce":1009,"DelAddress":null,"ECDSAPrivateKey":{"Curve":{"B":7,"BitSize":256,"Gx":55066263022277343669578718895168534326250603453777594175500187360389116729240,"Gy":32670510020758816978083085130507043184471273380659243275938904335757337482424,"N":115792089237316195423570985008687907852837564279074904382605163141518161494337,"P":115792089237316195423570985008687907853269984665640564039457584007908834671663},"D":8523039197292183990613031917377213594046213693988906698282515304086197421605,"X":71861720007944413833354770221905654455850562162544793353863520913732499495719,"Y":68923951175458320224549189309087606244236136654873433918477596083766111902588},"ERC20Address":"","ERC721Address":"","EthAmountInWei":0.001,"ForceContractDeploy":false,"ForceGasLimit":0,"ForceGasPrice":0,"ForcePriorityGasPrice":0,"FromETHAddress":"0xe34aaf64b29273b7d567fcfc40544c014eee9970","Function":1,"InscriptionContent":"data:,{\"p\":\"erc-20\",\"op\":\"mint\",\"tick\":\"TEST\",\"amt\":\"1\"}","Iterations":1,"LegacyTransactionMode":true,"LtAddress":"","Mode":6,"Modes":["2"],"MultiMode":false,"ParsedModes":[6],"PrivateKey":"0x12d7de8621a77640c9241b2595ba78ce443d05e94090365ab3bb5e19df82c625","RPCUrl":"http://127.0.0.1:62801","RateLimit":10,"RecallLength":50,"Requests":500,"Seed":123456,"SendAmount":1000000000000000,"SendOnly":false,"ShouldProduceSummary":false,"SteadyStateTxPoolSize":1000,"SummaryOutputMode":"text","TimeLimit":-1,"ToAddress":"0xDEADBEEFDEADBEEFDEADBEEFDEADBEEFDEADBEEF","ToETHAddress":"0xdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef","ToRandom":false}
12:40PM ERR Unable to deploy ERC20 contract error="method handler crashed"
12:40PM ERR Error during the main load test loop error="method handler crashed"
12:40PM FTL Received critical error while running load test error="method handler crashed"

(I think I missed the service logs)

As does this one after - with a suspicious log method eth_estimateGas crashed: runtime error: invalid memory address or nil pointer dereference:

polycli loadtest --rpc-url "$ETH_RPC_URL" --legacy --private-key "$PK" --verbosity 700 --requests 500 --rate-limit 3 --mode uniswapv3

$ polycli loadtest --rpc-url "$ETH_RPC_URL" --legacy --private-key "$PK" --verbosity 700 --requests 500 --rate-limit 3  --mode uniswapv3
12:43PM TRC Starting logger in console mode
12:43PM INF Starting Load Test
12:43PM INF Connecting with RPC endpoint to initialize load test parameters
12:43PM TRC Retrieved current gas price gasprice=1000000000
12:43PM TRC Current Block Number blocknumber=119
12:43PM TRC Current account balance balance=99998968979000000000000
12:43PM TRC Detected Chain ID chainID=10101
12:43PM TRC Params Input Params={"AdaptiveBackoffFactor":2,"AdaptiveCycleDuration":10,"AdaptiveRateLimit":false,"AdaptiveRateLimitIncrement":50,"BatchSize":999,"BlobFeeCap":100000,"ByteCount":1024,"CallOnly":false,"CallOnlyLatestBlock":false,"ChainID":10101,"ChainSupportBaseFee":false,"Concurrency":1,"ContractAddress":"","ContractCallData":"","ContractCallFunctionArgs":[],"ContractCallFunctionSignature":"","ContractCallPayable":false,"ContractETHAddress":"0x0000000000000000000000000000000000000000","CurrentBaseFee":null,"CurrentGasPrice":1000000000,"CurrentGasTipCap":null,"CurrentNonce":1009,"DelAddress":null,"ECDSAPrivateKey":{"Curve":{"B":7,"BitSize":256,"Gx":55066263022277343669578718895168534326250603453777594175500187360389116729240,"Gy":32670510020758816978083085130507043184471273380659243275938904335757337482424,"N":115792089237316195423570985008687907852837564279074904382605163141518161494337,"P":115792089237316195423570985008687907853269984665640564039457584007908834671663},"D":8523039197292183990613031917377213594046213693988906698282515304086197421605,"X":71861720007944413833354770221905654455850562162544793353863520913732499495719,"Y":68923951175458320224549189309087606244236136654873433918477596083766111902588},"ERC20Address":"","ERC721Address":"","EthAmountInWei":0.001,"ForceContractDeploy":false,"ForceGasLimit":0,"ForceGasPrice":0,"ForcePriorityGasPrice":0,"FromETHAddress":"0xe34aaf64b29273b7d567fcfc40544c014eee9970","Function":1,"InscriptionContent":"data:,{\"p\":\"erc-20\",\"op\":\"mint\",\"tick\":\"TEST\",\"amt\":\"1\"}","Iterations":1,"LegacyTransactionMode":true,"LtAddress":"","Mode":15,"Modes":["uniswapv3"],"MultiMode":false,"ParsedModes":[15],"PrivateKey":"0x12d7de8621a77640c9241b2595ba78ce443d05e94090365ab3bb5e19df82c625","RPCUrl":"http://127.0.0.1:62801","RateLimit":3,"RecallLength":50,"Requests":500,"Seed":123456,"SendAmount":1000000000000000,"SendOnly":false,"ShouldProduceSummary":false,"SteadyStateTxPoolSize":1000,"SummaryOutputMode":"text","TimeLimit":-1,"ToAddress":"0xDEADBEEFDEADBEEFDEADBEEFDEADBEEFDEADBEEF","ToETHAddress":"0xdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef","ToRandom":false}
12:43PM DBG 🦄 Deploying UniswapV3 contracts...
12:43PM DBG Step 0: WETH9 deployment
12:43PM ERR Unable to deploy contract error="method handler crashed"
12:43PM ERR Error during the main load test loop error="method handler crashed"
12:43PM FTL Received critical error while running load test error="method handler crashed"

$ kurtosis service logs cdk-v1 cdk-erigon-node-001
[cdk-erigon-node-001] [INFO] [06-17|11:42:19.355] [16/16 Finish] Finished
...
[cdk-erigon-node-001] [INFO] [06-17|11:43:07.525] RPC Daemon notified of new headers       from=117 to=119 hash=0x108c9c5c44f5be7d269e4cb8bc26509289a0b5c4b3aef8b9a2b3f6dc25a9c733 header sending=40.129µs log sending=239ns
[cdk-erigon-node-001] [INFO] [06-17|11:43:07.525] [1/16 L1Syncer] Starting L1 sync stage
[cdk-erigon-node-001] [INFO] [06-17|11:43:07.525] [1/16 L1Syncer] Saving L1 syncer progress latestCheckedBlock=774 newVerificationsCount=0 newSequencesCount=1
[cdk-erigon-node-001] [INFO] [06-17|11:43:07.525] [1/16 L1Syncer] Finished L1 sync stage
[cdk-erigon-node-001] [INFO] [06-17|11:43:07.525] [2/16 L1InfoTree] Starting L1 Info Tree stage
[cdk-erigon-node-001] [INFO] [06-17|11:43:07.525] [2/16 L1InfoTree] Info tree updates      count=0
[cdk-erigon-node-001] [INFO] [06-17|11:43:07.525] [2/16 L1InfoTree] Finished L1 Info Tree stage
[cdk-erigon-node-001] [INFO] [06-17|11:43:07.525] [3/16 Batches] Starting batches stage
[cdk-erigon-node-001] [INFO] [06-17|11:43:07.525] [3/16 Batches] Reading blocks from the datastream.
[cdk-erigon-node-001] [WARN] [06-17|11:43:10.140] Gas estimation capped by limited funds   original=1125899906842624 balance=0x152cf478f527e9883000 sent=0 maxFeePerGas=1000000000 fundable=99998968979000
[cdk-erigon-node-001] [WARN] [06-17|11:43:10.140] Caller gas above allowance, capping      requested=99998968979000 cap=50000000
[cdk-erigon-node-001] [EROR] [06-17|11:43:10.141] RPC method eth_estimateGas crashed: runtime error: invalid memory address or nil pointer dereference
[cdk-erigon-node-001] [service.go:217 panic.go:884 panic.go:260 signal_unix.go:841 call.go:246 eth_call.go:252 value.go:586 value.go:370 service.go:227 handler.go:494 handler.go:444 handler.go:392 handler.go:223 handler.go:316 asm_amd64.s:1598]
[cdk-erigon-node-001] [WARN] [06-17|11:43:10.141] Served                                   conn=172.16.0.4:43402 method=eth_estimateGas reqid=9 t=649.037µs err="method handler crashed"

Versions

kurtosis 0.90.1
kurtosis-cdk 821aeaa
cast 0.2.0 (fd87888 2024-06-17T00:19:40.959752148Z)
Polygon CLI Version v0.1.45-4-ge369181

Output

bug-report.txt

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.