-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpackage.json
More file actions
129 lines (129 loc) · 9.34 KB
/
Copy pathpackage.json
File metadata and controls
129 lines (129 loc) · 9.34 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
{
"name": "nara-protocol-hardhat",
"private": true,
"version": "0.2.0",
"description": "NARA v4 contracts and operations workspace. v3 stack archived under archive/legacy-v3/.",
"type": "module",
"scripts": {
"build": "hardhat compile && npm run build:landing",
"build:pages": "npm --prefix tools/v4-test-console ci && npm --prefix tools/v4-test-console run build && node -e \"const fs = require('fs'); fs.cpSync('tools/v4-test-console/dist', 'dist', { recursive: true });\"",
"build:landing": "npm --prefix tools/nara-landing ci && npm --prefix tools/nara-landing run build",
"clean": "hardhat clean",
"test": "hardhat test",
"test:token:v4": "hardhat test test/NARAToken.v4.test.ts",
"test:engine:v4": "hardhat test test/NARAEngine.v4.test.ts",
"test:liquidity:v4": "hardhat test test/NARALiquidityGrowth.v4.test.ts test/NARALiquidityGrowth.real-v4.test.ts",
"test:bond:v4": "hardhat test test/NARABondV4.test.ts",
"test:nft:v4": "hardhat test test/NARAPositionNFTV4.test.ts test/NARAPositionDataLensV1.test.ts",
"test:bond-nft:v4": "hardhat test test/NARABondV4NFT.test.ts",
"test:invariants:v4": "hardhat test test/NARAInvariantRegression.v4.test.ts",
"test:composability:v4": "hardhat test test/composability/NARAStakingPool.test.ts test/composability/NARAFractionalPosition.test.ts",
"test:ops": "hardhat test test/dispatchV4EpochMaintainer.test.ts test/maintainV4Epochs.test.ts test/maintainV4Liquidity.test.ts test/V4LiveConfig.test.ts test/v4ProductionRuntimeGuard.test.ts test/syncV4FreshEnv.test.ts",
"test:treasury-ranges:v4": "hardhat test test/NARATreasuryRangeManagerV1.test.ts test/NARATreasuryRangeManagerV1.invariant.test.ts test/MockTreasuryRangeAtomicTrader.test.ts test/maintainV4TreasuryRanges.test.ts test/v4TreasuryRangeMath.test.ts test/v4TreasuryRangePlanner.test.ts test/v4TreasuryRangeState.test.ts test/v4TreasuryRangeSwap.test.ts test/simulateV4TreasuryRanges.test.ts test/optimizeV4TreasuryRanges.test.ts test/v4TreasuryRangeSafePolicy.test.ts test/finalizeV4TreasuryRangeManagerDeployment.test.ts && npm run test:treasury-range-settler:v4",
"test:treasury-range-settler:v4": "node --import tsx --test services/v4-treasury-range-settler/test/operations.test.ts",
"typecheck:treasury-range-settler:v4": "tsc --noEmit -p services/v4-treasury-range-settler/tsconfig.json",
"test:treasury-ranges:fork": "hardhat test test/fork/NARATreasuryRangeManagerV1.fork.test.ts test/fork/NARATreasuryRangeAttacks.fork.test.ts",
"test:nonfork": "node scripts/runNonForkTests.mjs",
"test:v4": "hardhat test test/NARAToken.v4.test.ts && hardhat test test/NARAEngine.v4.test.ts && hardhat test test/NARALiquidityGrowth.v4.test.ts test/NARALiquidityGrowth.real-v4.test.ts",
"size": "tsx scripts/checkBytecodeSizes.ts",
"slither:v4": "powershell -NoProfile -ExecutionPolicy Bypass -File scripts/runSlitherV4.ps1",
"aderyn:v4": "powershell -NoProfile -ExecutionPolicy Bypass -File scripts/runAderynV4.ps1",
"aderyn:v4:only": "powershell -NoProfile -ExecutionPolicy Bypass -File scripts/runAderynV4.ps1 -V4Only",
"echidna:v4": "powershell -NoProfile -ExecutionPolicy Bypass -File scripts/runEchidnaV4.ps1",
"echidna:v4:smoke": "powershell -NoProfile -ExecutionPolicy Bypass -File scripts/runEchidnaV4.ps1 -TestLimit 1000 -SeqLen 32",
"launch:gates": "powershell -NoProfile -ExecutionPolicy Bypass -File scripts/runMainnetLaunchGates.ps1",
"gates:package": "node scripts/packageGatesTarball.mjs",
"deploy:v4:base:usdc": "hardhat run scripts/deployV4BaseUsdc.ts --network base",
"deploy:v4:allocations": "node scripts/refuseRetiredV4Allocations.mjs",
"plan:v4:position-nft": "hardhat run scripts/planPositionNFTPhase2.ts --network base",
"build:v4:position-nft-plan-evidence": "hardhat run scripts/buildPositionNFTPhase2PlanEvidence.ts --network base",
"rehearse:v4:position-nft": "hardhat run scripts/rehearsePositionNFTPhase2.ts --network baseFork",
"deploy:v4:position-nft": "hardhat run scripts/executePositionNFTPhase2.ts --network base",
"verify:v4:position-nft": "hardhat run scripts/verifyFinalPositionNFTPhase2.ts --network base",
"verify:v4:position-nft:pending": "hardhat run scripts/verifyPendingPositionNFTPhase2.ts --network base",
"verify:v4:position-nft:rehearsal": "hardhat run scripts/rehearsePositionNFTPhase2.ts --network baseFork",
"verify:v4:position-nft:sources": "hardhat run scripts/verifyPendingPositionNFTPhase2.ts --network base && hardhat run scripts/verifyPositionNFTPhase2Sources.ts --network base",
"preview:v4:position-nft-art": "hardhat run scripts/previewPositionArt.ts",
"build:v4:position-nft-finalization": "hardhat run scripts/verifyPendingPositionNFTPhase2.ts --network base && hardhat run scripts/buildPositionNFTPhase2Finalization.ts --network base",
"finalize:v4:position-nft-evidence": "hardhat run scripts/verifyPendingPositionNFTPhase2.ts --network base && hardhat run scripts/finalizePositionNFTPhase2Evidence.ts --network base && hardhat run scripts/verifyFinalPositionNFTPhase2.ts --network base && tsx scripts/quarantinePositionNFTPhase2SafeArtifacts.ts",
"quarantine:v4:position-nft-safe-artifacts": "tsx scripts/quarantinePositionNFTPhase2SafeArtifacts.ts",
"quarantine:v4:position-nft-incomplete-artifacts": "tsx scripts/quarantineIncompletePositionNFTPhase2SafeArtifacts.ts",
"deploy:v4:router:lens": "hardhat run scripts/deployRouterLens.ts --network base",
"deploy:v4:pool:only": "hardhat run scripts/redeployPoolOnly.ts --network base",
"build:v4:atomic-pool-launch": "tsx scripts/buildAtomicV4PoolLaunch.ts",
"build:v4:epoch-recovery": "tsx scripts/buildV4EpochRecoveryBatch.ts",
"build:v4:fee-curve": "tsx scripts/buildV4FeeCurveUpdate.ts",
"build:v4:compounder-validation": "tsx scripts/buildV4CompounderValidation.ts",
"build:v4:compound-keeper-auth": "tsx scripts/buildV4CompoundKeeperAuthorization.ts",
"build:v4:liquidity-recovery-proposal": "tsx scripts/buildV4LiquidityStackRecoveryProposal.ts",
"build:v4:treasury-range-manager": "tsx scripts/deployV4TreasuryRangeManagerProposal.ts",
"finalize:v4:treasury-range-manager": "hardhat run scripts/finalizeV4TreasuryRangeManagerDeployment.ts --network base",
"build:v4:treasury-range-postdeployment-strategy": "tsx scripts/optimizeV4TreasuryRanges.ts --post-deployment",
"build:v4:treasury-range-orders": "tsx scripts/buildV4TreasuryRangeOrders.ts",
"build:v4:treasury-range-cancellation": "tsx scripts/buildV4TreasuryRangeCancellation.ts",
"verify:v4:allocations": "node scripts/refuseRetiredV4Allocations.mjs",
"verify:v4:preflight": "tsx scripts/verifyV4Preflight.ts",
"verify:v4:preseed": "tsx scripts/verifyV4Preflight.ts --pre-seed",
"verify:v4:launch-gates:preseed": "tsx scripts/verifyV4LaunchGates.ts --pre-seed --baskets-only",
"verify:v4:launch-gates:baskets": "tsx scripts/verifyV4LaunchGates.ts --baskets-only",
"execute:v4:nara-depth": "tsx scripts/executeV4NaraDepth.ts",
"verify:v4:launch-gates": "tsx scripts/verifyV4LaunchGates.ts",
"verify:v4:runtime-config": "tsx scripts/verifyV4RuntimeConfig.ts",
"maintain:v4:epochs": "tsx scripts/maintainV4Epochs.ts",
"maintain:v4:epochs:routine:check": "tsx scripts/maintainV4Epochs.ts --batch-size 100 --max-batches 2 --max-backlog 150",
"maintain:v4:epochs:routine": "tsx scripts/maintainV4Epochs.ts --execute --batch-size 100 --max-batches 2 --max-backlog 150",
"watchdog:v4:epochs:dispatch": "tsx scripts/dispatchV4EpochMaintainer.ts",
"maintain:v4:liquidity": "tsx scripts/maintainV4Liquidity.ts",
"maintain:v4:treasury-ranges": "tsx services/v4-treasury-range-settler/src/index.ts",
"simulate:v4:treasury-ranges": "tsx scripts/simulateV4TreasuryRanges.ts",
"optimize:v4:treasury-ranges": "tsx scripts/optimizeV4TreasuryRanges.ts",
"swap:v4:nara-for-usdc": "tsx scripts/swapNaraForUsdc.ts",
"smoke:v4": "tsx scripts/smokeTestV4Deployment.ts",
"v4:env:sync": "tsx scripts/syncV4FreshEnv.ts",
"v4:env:sync:write": "tsx scripts/syncV4FreshEnv.ts --write-dotenv",
"v4:env:production:write": "tsx scripts/syncV4FreshEnv.ts --source deployments/v4-production-activation-2026-08-09.json --write-dotenv",
"fund:v4:reserve": "hardhat run scripts/fundEmissionReserveV4.ts --network base"
},
"devDependencies": {
"@nomicfoundation/hardhat-ethers": "4.0.7",
"@nomicfoundation/hardhat-ethers-chai-matchers": "3.0.4",
"@nomicfoundation/hardhat-keystore": "3.0.5",
"@nomicfoundation/hardhat-mocha": "3.0.15",
"@nomicfoundation/hardhat-network-helpers": "3.0.4",
"@nomicfoundation/hardhat-typechain": "3.0.5",
"@nomicfoundation/hardhat-verify": "3.0.13",
"@openzeppelin/contracts": "5.6.1",
"@typechain/ethers-v6": "0.5.1",
"@types/chai": "5.2.3",
"@types/mocha": "10.0.10",
"@types/node": "25.5.2",
"@uniswap/v4-core": "1.0.2",
"@uniswap/v4-periphery": "1.0.3",
"chai": "6.2.2",
"dotenv": "17.4.0",
"hardhat": "3.3.0",
"mocha": "11.7.6",
"ts-node": "10.9.2",
"tsx": "4.23.1",
"typechain": "8.3.2",
"typescript": "6.0.2",
"viem": "^2.55.19"
},
"overrides": {
"hardhat": {
"adm-zip": "0.6.0"
},
"minimatch@3.1.5": {
"brace-expansion": "5.0.9"
},
"minimatch@9.0.9": {
"brace-expansion": "5.0.9"
},
"mocha": {
"diff": "8.0.3",
"js-yaml": "4.3.1",
"serialize-javascript": "7.0.5"
},
"undici": "6.28.0"
}
}