- This is an L2 deployment release meaning state will be lost in order to upgrade the network. Any dApps on the network will need to be redeployed. The release predominantly addresses performance improvements for large numbers of transactions in the network, and for event log queries.
- A full list of the PRs merged in this release is as below;
ef0bf45e
Fix for xchain messages (#1973)0dc7d5c5
Fix for integration test (#1971)186bc2c3
Host db performance fixes (#1969)c0ea9b43
Bundle submission rework (#1966)0b01bfd1
Assets fix and clear console warnings (#1959)ddff74a5
Update db schema (#1967)e1c91243
Rework event logs and transaction database schema (#1961)291a698d
Add db query tool (#1963)b1af061b
Initiate bridge deployment (#1965)95f35150
Initiate bridge deployment (#1960)447ff489
Placeholder commit for new gh action workflow (#1964)9d6e7747
Fix for startup (#1962)b537d2e6
Add indexed events (#1954)c6e5a48f
Adds log constraints to docker containers not instantiated by the go client (#1956)85e6cd0d
Ignore empty l1 head status from enclave (#1955)a9485fef
Fixes for ethereum bridge and json representation of batch header (#1953)e6453082
Deploy separate ten gateway for dexynth (#1949)b8935c31
Network tests: util func for l1 transfers (#1948)0f3d42bf
Network tests: start gateway synchronously to fix race (#1947)9cee2fd4
Increase max message size grpc config (#1946)c0bf4086
Small mem pool fixes (#1943)b335bd1e
Avoid spamming stuck l1 transactions (#1941)99a8aeee
Fix panic on uninitialised mem pool (#1940)1daffac0
Replace health-check db query (#1938)a880b169
Hardcode response to client version request (#1937)5780140e
Check conversions (#1936)b97d0b93
Fix flakyness errors (#1927)6e432a1a
Add net_version support and test (#1934)4f39832e
Fixing log spam (#1931)f8b86b52
Fix log spam (#1929)762dfef9
Fix for interval (#1926)
- This is an L2 deployment release meaning state will be lost in order to upgrade the network. Any dApps on the
network will need to be redeployed. High level changes made in the release include;
- Personal signing is now supported through the gateway.
- Subscriptions to newHeads is now fully supported.
- Updates to the backing of a node via PostgreSQL.
- Refactoring to allow a node to use several underlying enclaves for high availability.
- Inclusion of finality to the xchain messages, supporting both deposits and withdrawals.
- Multiple bug fixes and performance improvements including a 10 fold increase in the RPC rate handling capabilities of the gateway.
- A full list of the PRs merged in this release is as below;
3458c215
Cross chain merkle trees (#1911)9e1224fa
Add index on tx.sender, and clean up (#1921)2ffa845d
Change /info/health/ from post to get & remove unnecessary data field (#1920)a0d168c1
Rpc method to count the number of tx in the host (#1919)11b91f91
Fix (#1918)b9512539
Fx nil pointer when enclave not healthy (#1917)41095b47
Improve rpc conn pool (#1916)1acc9e3d
Improve log subscription unsubscribe (#1915)d0a93efa
Close ticker (#1914)218f40b1
Expose tx count api (#1906)cf7158ff
Postgres host config to upgrade script (#1913)6476895e
Reconnect new heads (#1910)42dc7f8a
Tweak performance (#1912)596ddf02
Create separate deployment for ten gateway frontend (#1909)1ec62e87
Db performance (#1893)6c12e168
Network tests: new heads subscriptions (#1907)1bb752fd
Wire edgeless in simulation mode for local testnet (#1905)52579fe3
Notify separately for new heads and new validated heads (#1904)5db2d1f3
Improve local testnet (#1903)01d39dfb
Add missing batch index (#1901)3eb620fb
Move public tx listing api to host db query (#1900)73710d59
Batch transactions query accepts full or short hash (#1897)d93acb05
Update logo image path in header component (#1898)5dd0cd1a
Fix newheads unsubscribe (#1895)f1b6be40
Mgmt contract: events for changes to enclave sequencer status (#1891)5d23b996
P2p: fix msg validation for new msg type (#1894)ac1b90a6
New tenscan apis (#1879)c2a7b130
Remove redundant host volume code (#1887)ce8d274e
Statedb cleanup (#1890)40ae16fe
Node config: wire through seq addr flag (#1889)bd9a9cfd
Host: replace sequencer id config with sequencer p2p address (#1885)c69740a5
Fix logging - remove the terminal when a file is specified (#1886)0526f7ab
Gateway verbose logging and bugfix (#1884)49112a35
Upgrade geth (#1883)7ca43647
Pass context from enclave rpc to database (#1882)3e566ff2
Tenscan addformatnumber
utility function to display numbers with commas (#1865)2dde8176
Manually rollback failed tx as its causing idle connections (#1881)3df04951
Update brand colors (#1867)4e6e2399
Simplify encrypted rpc client (#1877)261253bb
Set max postgres db connections (#1878)4122467e
Use nginx as a reverse proxy and fix alter statement in migrations (#1876)7e50d21d
Cleanup host databases (#1875)860b34d1
Move host db to sql impl (#1804)2032ddce
Fix the eip712 getmessage response (#1872)b131c424
Add alter permission to obscurouser (#1874)20ec195e
Misc fixes after refactoring the gateway rpc (#1873)f7fef303
Update pccs url (#1871)e994ee2a
Improve cache (#1866)b8c1bb63
Mgmtcontract: only accept rollups from seq enclaveids (#1870)8da215bf
Support both 0x prefixed and not prefixed encryption tokens (#1869)6f3e312c
Fix l2 repo to use the subscribers pattern like l1 repo (#1863)4affa8a5
New heads subscription (#1861)0d2b6a33
Use the obscuro_config end point (#1864)ef55e3da
Current list of prs for the next release (#1862)3c0dbced
Adds a log configuration to docker containers to roll (#1850)7190f55c
Notify batch subscribers of new batches from any src (#1860)d3bf8ecb
Validate vk (#1859)a4a9e3cd
Fix gateway frontend issues after geth rpc (#1857)55ef73e6
Align rpc interfaces (#1856)2ab73cfd
Use conn pool for unauthenticated connections (#1855)5a8cde2e
Update missed enclave flag usage (#1854)f4445911
Wip add geth rpc to the gateway (#1845)ce6b1564
Support multiple enclaves on a single host (#1852)fe8b2488
Remove legacy signature type (#1851)2288c3e0
Remove wallet extension endpoints (#1641)88bd866d
Network tests: refactor config to allow for HA (#1849)2b17a1e1
Add new endpoint for generating messages and refactor message generation (#1836)abcfc38b
Update ports (#1848)c6664e05
Fix build error (#1846)fdde1b7d
Align rpc with geth (#1841)172fae28
Add beagle security meta tag (#1842)85097d6a
Add geth rpc fork and wire it with the host (#1840)67b94d0f
Host l1 txs: one-at-a-time to remove nonce risk (#1839)a3457085
Display errors if other wallets are also installed alongside metamask (#1837)46e0c321
Upgrade dependencies & misc (#1838)a38b4ab2
Add personal sign authentication message and refactor signature verification (#1811)74cfe0e5
Protocol: attest against enclaveid rather than hostid (#1831)75f610d4
Headers: use 65-byte signatures instead of r,s values (#1834)1e781f77
Network tests: basic sim to run in ci builds (#1833)99315295
Use ten hardhat plugin instead of baked in registration (#1812)b52a7a49
Updated batch size limit (#1830)6083d1e1
Store incoming transactions in a database (#1828)057276df
Networktests: run local gateway against testnets (#1824)05eebc9e
Estimage gas perf fixes (#1827)8fa689ce
Disabled caching (#1823)b0628746
Adjusts gateway vm deployment to use static ip address. (#1781)a2316674
Add new getrollupdata api to enclave client (#1815)b17c3325
Create database migration for the gateway (#1768)
- An upgrade release to fix issues in the batch limit size which can stop deployment of some large contracts, and to over-estimate the L1 gas cost to ensure it is possible to submit a transaction for rollup.
- A full list of the PRs merged in this release is as below;
21860c19
Overestimate L1 gas costs (#1821)5e057c69
Switch primary and secondary fonts on gateway and tenscan (#1819)d43ae52c
Batch limit: increase max to 36kb (#1817)33d3de82
Network test: local network qol (#1818)b7bea2c4
Fix mutex error (#1810)25f4f5b6
Networktests: add options for test users to use gateway (#1806
- Validator nodes now return errors on transaction submission. Previously, transactions that would fail validation were accepted into the mempool of the validator without error (e.g. insufficient funds for a transfer, gas below the intrinsic gas limit etc). This change will mean that invalid transactions are rejected immediately.
- The Gateway now performs caching on RPC requests. For a list of the cached requests see the design proposal in go-ten/design/gateway/gateway_caching.md. Note that we expect the caching logic to change over time as we optimise the user experience.
- A full list of the PRs merged in this release is as below;
038f6a64
Cache fixes for e2e tests (#1803)b70a894d
Update ten's visual identity (#1797)1782b623
Update ten's visual identity (#1796)ada2d2c1
Concurrency fix (#1802)6eda211d
Chore(contracts): a bit of proofreading (#1754)2ab4fc3e
Tweak cache params (#1801)3a74586b
Change mempool validation function (#1800)597cf0ec
Change log for the v0.22 release (#1799)a2a080aa
Gateway caching proposal (#1773)5b5e7d98
Ten gateway caching (#1779)7792864a
Adjust port offset (#1798)1837bcc6
More flakiness fixes (#1795)83469ca8
Validator nodes return error on tx submission (#1792)aee40a81
Network tests: fix local run gas error (#1789)337c8544
Improve multi-acct logic (#1793)a5061634
Copy update (#1791)4d79eea2
Tenscan: update api domain (#1790)c83b965a
Contract deployers: configure signer for address publishing (#1676)31e25322
Refactor the encryption/vk logic (#1769)
- A list of the PRs merged in this release is as below;
cc3b1048
Upgrade oz libraries (#1707)0a573d75
Deploy scripts: enable debug api on upgrades (#1780)f8b3b76c
Geth: cherry pick emergency geth upgrade from release branch #1771 (#1772)3da65b55
Upped batch size limit (#1775)3322ad9e
Fix for desync issue (#1778)7927b17e
Tweak caching (#1777)9ae2825e
Add estimate optimisation that geth added (#1776)22b397de
Logging: use terminal format with full hashes (#1770)b69bb7f9
Introduce enclaveid as identifier (#1760)6a7b5f54
Add maxdbpoolsize for edglessdb (#1767)42d9a38b
Add basic file logging in the gateway (#1763)634a5b79
Host: drop transactions received when enclave not ready (#1762)26d7db4f
[ghaction] reorder deploy l2 jobs (#1758)0789f261
Fix health indicator bug (#1759)9c81010b
Add log-level to launcher + fix trace debug (#1757)2019eac0
Use fast cspring for encrypting responses (#1753)206dbffc
[gas mechanics] implement gas history; migrate to arbitrum gas model (#1714)0fe01b4e
Mempool perf fix (#1752)843d6cbb
2 validators deploy (#1750)dcf96c93
Ten gateway use http instead of ws (#1743)b49b4c0d
Loggers: use log format rather than terminal format for files (#1751)01980954
Remove old docs (#1749)7f0ad72b
Refactor testnet status update (#1748)3ba9d7c2
Host: fix bug causing unnecessary multiplier on l1 gas fees (#1747)bdce4a85
Statedb revert to snapshot for ignored batches (#1742)16173af2
Update and simplify local testnet startup docs (#1745)7c1ebad2
Update of prs so far for a v0.21 release (#1744)cdc02ebe
Adding batch timestamp to the public tx api (#1740)a41bff9e
Fix the enclave stream reconnect (#1741)f72e986c
Host: small cache of blocks by hash (#1738)3103eca1
Change network name (#1735)5aee83a8
[gateway] Health check on gateway ui/frontend (#1729)f6f147ab
[gateway] Set distdir based on node_env (#1693)74e0a395
[gateway] Health check on gateway backend (#1728)856e72e3
[gateway] Update expired discord link and add warning msg to gateway ui (#1709)8d534c00
[tenscan] Fix latest batch (#1704)3daec735
[tenscan] Health check ui on tenscan (#1719)f77ac97e
[tenscan] Endpoint for health check (#1718)b6dada78
Change domain from obscu.ro to ten.xyz (#1733)e984af1e
Adds faucet + gateway to launcher (#1734)986f6995
Fix concurrent map writes (#1732)a0cec156
[network-tests] Update uat config (#1731)010815f1
Change tenscan link in gateway and docs (#1726)b2e41d36
Add enclave block and batch health checks (#1727)f159fb8c
Docs: fix typos (#1723)a332d76f
Make walletextensioncontainer.start() non blocking (#1722)06d02fb2
Add new node flow fixes (#1712)b6444cfe
Comment panic line (#1725)33d59d17
Refactor obscuroscan to tenscan (#1716)5cd64e8f
Tenscan workflow (#1724)520ea1ee
Fix build (#1721)c9908321
Fix gateway spammy logs (#1715)952a281f
Gaslimit + gascap flags (#1682)6389ace6
Debug hh deployer (#1710)5c369332
Statedb revert to snapshot for ignored batches (#1713)63ba4990
Add validator flow (#1711)98e0913f
Remove check performed in the mempool (#1708)4ee0ccac
Set retention to 7 days for deployer logs (#1706)875e3e3b
[tenscan] Address and tx placeholder page for metamask redirect link (#1705)b528fcb0
[gateway] Fix loading screen and connect accounts on reload (#1703)c7aee804
Fix statedb error during mempool (#1702)5c4e75d5
[gateway] Enable metamask desktop and mobile support (#1697)6605017d
Testnet deployments set enclave testmode=true (#1701)ecf49b14
Close mempool and use the geth defaults for the mempool (#1699)ae34047b
Enclave produce no batch if all tx failed (#1698)7c2a4df7
Fix error page for non-mm users (#1696)457777e6
Add$
to ether price (#1694)0f690c90
Change network name back to obscuro testnet, to avoid warnings (#1695)c4c827d5
Tenscan updates (#1683)dbfa7a30
Revert deleting favicon (#1691)b2651ab3
[gateway] Front end fixes for non-mm users (#1690)b428c62f
[gateway] Remove listener for account change (#1689)b2ddee04
Deploy new ten gateway frontend (#1686)2fa60897
Use the 3.18 go alpine image (#1687) (#1688)d9ead96a
Ten gateway (#1657)0fd37731
Rpc ap ensure hash field included in batches json (#1684)ca7f91b2
Adding enclave restricted flags (#1668)4551c81b
Enclave no panic for bad rlp format (#1679)fb50c7ba
Use the cached head block (#1678)
- A list of the PRs merged in this release is as below;
1433e41e
Tenscan updates (#1661)dc769561
Host rpc: use checksum format for contract addresses (#1674)362a80b0
Obscuroscan now deploys to port 80 (#1675)3e9e4a8a
Add in change log (#1673)2fd08a63
Contract addresses: have host fetch l2 msg bus address from enclave (#1669)c3775b52
Contract deploy: record l2 contract addresses (#1667)23107b72
Add another signed message format gateway (#1672)5bf20d97
L1 contracts: increase timeout for extra transactions (#1671)1d08a78b
Proxy contracts deployment (#1663)f6c7c1b9
Add token as query param (#1666)34221a57
Local network: pass mgmt contract to l2 contract deploy script (#1664)3af59e76
Add default user for old endpoints (#1665)378aec67
Use eth sign typed data v4 in gateway (#1643)8712e26d
Obscuroscan#2323 (#1640)d37c0c78
Remove creating all clients at startup (#1662)f5d4ddd6
Contract deployment: store important addresses (#1653)12480861
Host: monitor and serve important contract addresses (#1645)29cae5df
Adding tx hash to the faucet funding (#1660)8c83d5e3
Fix json serialisation for batch (#1655)e0e082db
Fix the repository dispatches to ten-protocol/ten-test after the repo renaming (#1658)e8b7b50f
Prevent concurrent writes to a websocket connection (#1656)43214832
Fix the msg bus deploy at genesis (#1652)0b47af67
Added another promote to admin. (#1651)309b2405
Replacing github links (#1647)0ec2d053
Rebranding .md files (#1648)bb3a2bd2
Ui: replace obscuro logos with ten (#1649)35b5ce45
Change base url to https (#1644)ef01370c
Adding geths mempool (#1639)82488783
Fix test ports (#1642)991a2d67
Integrate google analytics for og and obscuroscan (#1638)9e3cf212
Gateway unsubscribe for multiple subscribed clients (#1637)e7ab386b
Gateway fixes (#1633)47bb9e65
Obscuroscan: serve oldest batches first (#1635)1d4e8d74
Subscribe to events with multiple accounts and deduplicate (#1627)5c3fc3cd
Obscuroscan: metamask button show connected (#1634)aae2f5fc
Return error instead of just logging it if client fails (#1632)fb4c4492
Cais ui updates (#1631)97ed3c31
Obscuroscan: small ui tweaks (#1630)f6ac73a0
Update readme.md (#1613)7399892f
Missed a couple of vars on the rename (#1629)bddbf713
Obscuroscan: load eth price on init (#1626)06e56bdd
Preparation for subscribing with multiple accounts and test that confirms current issues (#1516)a96105d9
Obscuroscan: favicon, title, align icons (#1625)9a370655
Respond with latest for 'pending' block number requests (#1623)
- A list of the PRs merged in this release is as below;
9eb4dd0e
Contract changes for storing addresses (#1622)563c5677
Add mutex for accts (#1621)a140f352
Initial commit for basic gateway package (#1619)8f898053
Increase init time (#1617)20e5799c
Adds revert reason test + error logging (#1616)401acba7
Keeping table behind spinner until loaded (#1618)4c5c8b2a
Cais gateway ui changes (#1614)85f05f9f
Convert remaining gh action scripts to env vars (#1615)ebcc4aa4
Normalizing og errors (#1600)d494bc8c
Update deployment scripts to use standardised env vars (#1608)a25b5b44
Fix for estimate gas failing when gasprice included. (#1610)c4140adf
Ziga/fix og metamask urls (#1611)d317e3ac
Lock hh-deploy version to fix compatibility (#1612)b5722cd3
Downgrade spammy log messages (#1609)31d9b7ff
Fix stuck at revoke userid (#1605)94d12bd1
Ci fixes for deployment (#1607)d1036cfe
Fixes upgrade list query (#1604)299d5094
Update og namings in the gh (#1603)a18f8624
Updates gh inputs to reflect current networks (#1602)a58288f6
Improve ui for users on og (#1579)
- A list of the PRs merged in this release is as below;
51b00380
Add maxbatchinterval to skip some empty batches (#1599)3d3c12c9
Save l1 deployer logs (#1598)b5620b12
Reduce the verbosity of eth2network (#1597)7dfd9abe
Save logs (#1594)9d0b6200
Library for obscuro gateway (#1595)5b34ff6e
Update build-pr.yml (#1596)5405c3f0
Add prefunded l1 bridge address for dev and uat testing (#1591)226cfc65
Additional prs for the v0.18.0 release (#1592)5e9c8c84
Update new dns (#1580)1bc26e6e
Add block head cache (#1589)e06c9f53
Fix deploy (#1587)c5c136a3
Bumping testnet to 32gb (#1576)30494ec2
Remove slow query (#1586)beb55e8a
Fix bug (#1584)0c161a9e
Remove costly select (#1583)dc900b6a
Fix gas estimation (#1582)1e7e94cc
Added stopwatches in important functions (#1581)1dea9e94
Add balance endpoint to faucet for monitoring (#1577)f1a106a8
Bump enclave heap size (#1575)61c2cda5
Add sepoliatestnet as an environment for network tests (#1574)eccd99e0
Update some obx references in docs (#1573)8ed7e45b
Add gh actions script to retrieve funds from the bridge (#1570)4525fd57
Adjust cache cfg (#1568)a0309593
Performance fixes - speed and memory (#1567)701bd079
Enable obscuroscan test (#1566)42b98cf4
Fix config wiring at one of the layers for faucet (#1565)a8184707
Added faucet funding. (#1562)10ded300
Pedro/fe tweaks (#1564)341cc518
Setup faucet for sepolia env (#1563)816bccff
Auto funding script (#1543)ef3cef23
Rollup compression performance fixes (#1561)1eb404cd
Add retrieve all funds method to bridge (#1557)7b2ef03e
Adding version displays to og and oscan (#1560)a21c156d
Fixes the reladdresses in the events debug log (#1555)aa9dae08
Deploy obscuro gateway for sepolia testnet (#1552)584b6a74
Match network configuration with chainlist (#1511)84964850
L1 gas refunds for failing transactions. basefee not burned anymore (#1550)a97b8359
Compression fixes (#1559)8096ae05
Submit l1 block: fix lock bug (#1558)235d0a91
Add sepolia option to l2 gh action scripts (#1529)7cdf18ac
Improve logging (#1556)a4172f32
Fix og panic issues (#1554)07e87fbf
Reduce tx retries and increase price on retry (#1553)4b2d0e93
Guardian now produces rollup based on interval time and available bat (#1536)cc741c33
Fix rollup limiter & improve "slow query" logging (#1551)d5c19310
Fix (#1549)0e483622
Small doc changes (#1547)07b12fae
Removed bad logs (#1548)3d5f9267
Performance fixes (#1533)f1d60280
Add flag to configure l1 chainid for docker nodes (#1546)39b9afb2
Update the address in line with stored pk in 1pass (#1545)67c75973
Adding is_transfer to the other sql init (#1542)34aeae36
Get userid from url if not present in query params (#1538)34208be4
Fix deploys from main - remove migration file for now (#1540)c4864dae
Gas mechanics phase 1 implementation. (#1471)61a5921e
Update node urls in gateway deployment (#1541)42669a44
Fix frontend issues from workshop (#1525)1a149de7
Gh yaml typo (#1534)11e4c335
Add missing interval configs to testnet launcher (#1532)7e67c78c
Update tesnet dns (#1531)e9a8d019
Sepolia prep: add batch + rollup interval cli options (#1530)df76b51a
Testnet launcher now works with sgx (#1488)c638627b
Correct ws to http on the deployers flag name (#1528)0529e965
Save rollups (#1526)2adec7a5
Obscuro gateway vm (#1513)8babe2ea
Changes to support sepolia testing from ide (#1527)64a0c5ed
L1 publisher: resend stuck tx and manage nonce (#1518)40d58aa3
Og now can connect to mariadb (#1521)87683811
Add l1 block time config for host (#1523)c6a3801f
Disable the upgrade scheduled (#1524)fca67860
Improve compression robustness - part 1 (#1520)6abba582
Expose port 81 and 80 (#1510)
- A list of the PRs merged in this release is as below;
43e99a9b
Refactor storage to allow for different dbs + tests (#1517)1e6ba68f
Tweak og database deploy (#1515)2e56932f
Obscuro gateway database deploy (#1514)b7b4e3e3
Change config to use rpc urls instead of host and port (#1512)764f98d7
Aggressive header compression (#1502)28d007bd
Filter for tx with any obscuro interactions (#1509)4ddbf93f
Hardhat: ensure token script doesn't spin when waiting (#1508)61a90b0d
Change back to inputs (#1507)5b18d686
Fix the event relevancy fields (#1506)b4cbf13e
Limit enclave fed l1 receipts to obscuro-relevant tx (#1495)2d2f7e46
Enclave guardian: remove superfluous running flag (#1505)98a86e6f
Open port 3002 on gateway for websockets (#1504)eeefcb14
L1 client - change reconnect to reconnect if dead (#1503)73c0e9ee
Fix ci tests (#1496)1978e19e
Add a isincomingp2penabled flag (#1491)4cb161e3
Set the debug namespace on the validator (#1494)50d2dc94
Fix txhash field in sql (#1493)d0357c92
Fixing the debug namespace wiring (#1492)509d76fb
Add loglevel flag (#1490)d0dc3165
Update testnet-kpis.md (#1441)8bb1b465
Use versioning with obscuro gateway api (#1486)6ed6b304
Uses a prebuilt obscuro node image (#1487)998c8449
Merge stopcontrol + breaker packages (#1485)b50b5f76
Bump eth2network (#1483)94775344
Fix for zero hash geth errors (#1484)923d5c6d
Upgrading geth to 1.12 (#1481)c6178c2a
User getstorageat with parameter "getuserid" to get userid from request url (#1478)81c611d0
Add sepolia network runner to ide tools (#1480)4a74826a
Subscribe for all clients from user if there is no address (#1467)0e34f367
Add very primitive db migration mechanism. (#1479)2e2b2019
Add verified data pages + obscuro info endpoint (#1476)
- A list of the PRs merged in this release is as below;
670af392
Add condition to only log slow storage calls (#1475)915c5f21
Add index (#1474)28ab67ac
Add timer to storage calls (#1473)01f1cd94
Nil pointer when eth new block not found (#1472)89c09486
Add decryption + fixes to the grids (#1470)6687cf32
Fixes to the obscuroscan ui (#1468)
- A list of the PRs merged in this release is as below;
d137cce6
Adjust the timer log for easier extraction from datadog (#1463)f0a978f2
Update p2p stopping mechanism (#1466)fd2de555
Add not null constraints (#1465)9fa606b4
Change l1 smoke test to check batches and blocks (#1464)2bc00d09
Fix eth2 timeout (#1462)1b9830bf
Create single page for blocks, transaction and batches lists (#1448)b895a4f3
Optimise the relevancy check and improve logging (#1461)f74a3057
Ensure p2p peer list resync after restart (#1460)2847ce46
Clarify in-mem flag is for host db (#1459)66606eb8
Fixes for tests using persistent sqlite db (#1457)f8bf2433
Sanity check p2p message before sending (#1458)ce6bbf7f
Fix logging bug (#1456)756798a7
Log errors (#1455)ce0bb0a6
Some errors, plus extract shared secret processing (#1454)6efc3a96
Fix wiring of l1 start hash (#1452)889bb3de
New location (#1453)3e671d79
P2p batch request data is historic not (#1451)95f7b986
Tweak log messages (#1450)09a3815e
Bug: l1 start hash was overwritten so catching up from genesis (#1445)5fa006e6
Fix enclave latest seq number reporting (#1449)d837842c
Add timeout to wait for l1 merge (#1447)ea7d338e
Fix bug with restarting enclaves sqlite connection (#1438)430125fb
Changed test timeout (#1446)509a1bae
Refactor the subscription logic (#1443)4d078d50
Use public address for p2p requests (#1444)3ce52056
Remove extraneous hyphen (#1442)
- A list of the PRs merged in this release is as below;
6d2997e3
Fix peer addresses mutex (#1439)2224f956
Add hash reset (#1436)bb03475f
Use compressed pub key (#1435)90a768d2
Fix encoding of userid (#1429)d2c7acbd
Obscuroscan - add pagination in the list calls (public and encrypted) (#1434)1ab96316
Fix bug with unexecuted batch data (#1432)cfdc6b81
Avoid panics when sequencer host thinks it is behind the enclave (#1433)58863712
Introduce unsubscribe delay (#1424)881e6719
Fix for deadlock (#1425)61358311
Reduce retention to 1 day on failure only (#1430)bcf05b21
Added a health endpoint to og (#1427)3d4fabe9
Fix og user id and address problems (#1426)4852e28b
Public tx listing rpc + fe (#1422)22277219
Fix add subscription logic (#1423)0aebb2d3
Clarify channels and mutexes (#1421)f4913937
Pedro/private tx list (#1418)06e63f1e
Add enclave guardian service, refactor logic out of host.go (#1409)b4e4182c
Fix timing issue for subscriptions (#1420)6a0f95a2
Rework batch execution logic (#1419)ff6bf45a
Fix l2 deploy (#1416)86e0152e
Allow enclave to produce handlers for both old and new message types (#1417)d47a0f29
Log block hash rather than pointer (#1414)4caac6dc
Fix cache for blocks and batches (#1415)f96bccd8
Ensure error fields on encl rpc resp are captured (#1413)ce4d06d3
Add primitive cache for blocks and batches (#1412)a36adf12
Block explorer api routes + fix obscuro api json marshallers (#1407)10477c78
Set back ot 03:05 nightly (#1410)cd8be2c0
Fix event order (#1408)ccf890a5
Implement relational db new tables (#1385)483c39a5
Obscuroscan now pulls rollups (#1406)99ec6e7c
Change from port 13000 to 80 (#1405)a08afcc6
Adding rolling batches and blocks (#1404)1a3f5cbc
More fixes to get the faucet deployment to work when the upgrade workflow is initiated from a schedule event (#1402)b074d5f2
Hook obscuro scan other endpoints (#1403)66f3cac0
Obs scan connect be-fe (#1399)922c1b18
Simplify enclave batch streaming and fix p2p batch requesting (#1400)3e9446df
Put in some logging (#1401)0d7ddd32
Fixes to the obscuro scan v2 deploy (#1398)01fb6339
Obscuroscan v2 deploy (#1397)04ebaf7e
Obscuroscan v2 frontend bootstrap (#1396)c79b9c24
Fix issue with host failing to stop after error (#1393)3cc1eb98
Simplify host health check and p2p health check (#1389)6e46b005
Try feeding consecutive blocks if failing after a fork (#1395)3cc25ebb
Scheduled trigger of the faucet fix for schedule (#1394)92098154
Add batch repository to host using seq no as key (#1388)00793ac0
Obscuroscan v2 backend (#1391)e8c45ef3
Avoid getting stuck when returning to a prev l1 fork (#1390)17d27178
Rework how rollups are created (#1386)d093666a
Lock ego container image (#1387)9fb09210
Tweak we/og start flags for local testnet (#1384)5c27887e
Fix the deployment of the faucet on a scheduled trigger (#1383)30162354
Re-enable the upgrade (#1382)b9b1d5be
Move sql creation logic to "sql" files (#1377)6700de56
Add multi-user support for obscuro gateway (#1375)edf2ac90
Add subscription manager for sub/unsub (#1379)b522d6c2
Fix paths for testnet local build (#1380)c7c0aa5d
Fix testnet after docker refactoring (#1378)b5f6d52a
Add l1 publishing service (#1376)7401bf04
Upgrade rollups (#1370)ed4d3340
Add db schema (#1374)d08abf33
Setup generic services in the host (#1372)6b51336a
Fix missing mutex lock for block submission (#1373)fe46cfce
Reduce log noise from block catchup at startup (#1371)83a18aad
Refactor tools dockerfiles, docker_run.sh scripts (#1355)eb24d7fd
Enclave-guardian: l1 repository service (#1368)50e9678b
Add bit about the host services to the design docs (#1369)c7668ee4
Add scan endpoint + contract creation count (#1367)3e958a50
Enclave-guardian: add enclave status tracker to host (#1364)fcb3a7a3
Fix obscuro gateway deployment (#1366)4207c708
Temporary rollup logic fix (#1362)7de5739f
Deploy obscuro gateway (#1349)ef8f4245
Fix the build tests (#1361)7bdb5b56
Pedro/fix ci (#1360)5d524409
Simplify block processing logic (#1359)43c7f493
Tudor/change rollup execution flow (#1357)2ded2a00
Testnet github actions: fix clash with secrets (#1358)acfe19f3
Fix the sim logger again (#1356)61edac8b
Use latest patch version, not latest minor version (#1354)46adf001
Fix logger for sim hosts (#1353)80dcac43
Correct retention yaml (#1352)68bf71db
Logs (#1351)11e5f651
Add in retention period (#1350)473b109b
Add sequencer number field , plus some renaming (#1347)e49bd32f
Stop the nightly upgrade (#1348)cf17ee28
Remove network manager (#1345)1832b40b
Pedro/update faucet (#1342)bdea3cb1
Relative network json file (#1339)b2ad8714
Viewing key now is sent as a payload instead registering against enclave (#1318)8ee39357
Fixes to l2 upgrade and deployment (#1344)3728b2df
Rename host db add batch method (#1343)ad813cb6
Tudor/change headers (#1341)553abbc4
Change how randomness per batch is calculated to remove the mixdigest (#1340)3a1eb7af
Integrate faucet in go-obscuro (#1323)612b5d5d
L1 now runs on vm (#1335)f90ec295
Add obscuro gateway endpoints (#1334)e6e2658c
Fix for validators not working without p2p (#1337)a6bf6909
Updates start command (#1336)74d7ce02
Ziga/obscuto gatweay storage (#1330)4c510c42
Add useraccountmanager to manage accounts for multiple users (#1326)ad419c64
Add l1 head and l2 head to enclave status (#1333)f143b1f5
Separate p2p sub methods from host interface (#1332)cf660911
Adding the faucet workflow (#1331)f420b0d7
Added measuring logs to validator. (#1329)896d54e2
Fix log_15 logger param errors (#1325)b4287cf3
Improve logging (#1327)723190b7
Skip rollup production when out of sync with l1 (#1328)7d779935
Updated wording for encryption (#1316)bae86f05
Configurable pos timeframes (#1317)5e90d17d
Resolver added. proto added (#1315)5af7d8f0
Remove unnecessary header fields (#1303)7112e508
Tidy up the enclave request handling (#1313)15e391d0
Start from right hash (#1314)bc002525
Add logging details when catching up missing batches (#1312)ceeb0742
Use batch transaction for db batches on host (#1311)44b93999
Tidying up the we (#1308)180fd043
Add l1 up-to-date flag to host health check (#1310)2021d3de
Write to db after every batch (#1309)ee9cccd9
Only publish batches when up-to-date with l1 (#1307)6727f8ed
Updating go v1.20 prysm v4.0.5 gethv1.11.6 (#1257)37adab1d
Fix for incorrectly chained rollups (#1305)46a2e084
Fix sendtransaction method signature (#1302)12d35437
Fix hash formatting in error msg (#1301)6a880273
Enclave: log less when scanning backwards for rollups (#1300)2b268bf2
Remove network deployer (#1299)af5376c8
Changed limits. (#1298)aa6fb166
Small fixes (#1296)4536aade
Swapped true and false on acceptbatch. (#1289)ef16c1ed
Reinstate hash cache, and fix some pointers (#1295)3a4e1ca8
Adjust limiters (#1294)da8d540b
Performance fixes (#1293)06878966
Standardise block and batch log references (#1292)86dd3c93
Obscuro_gateway design (#1248)020fd3af
Fix logger config (#1291)ce2e8a3b
Added config for batch size limit. (#1290)88b3a845
Add userid parameter in all request handlers (#1283)1a64bc08
Add squash and merge to dev onboarding (#1288)4f9851ff
Changed log level (#1287)75656dc6
Restore configs (#1286)a6061d0d
Adding limiters that prevent creating oversized transactions (#1218)82b78b14
Added compression to the batches payload (#1284)bd3abcef
Add developer onboarding guide (#1285)96168330
Decrease rollup time (#1282)9595c548
Fix log level (#1281)8f55555e
Fix databasepath to be consistent with other settings (#1280)69c09eb2
Always update l1 head on submit block (#1279)2b0bee0d
Obscuro gateway add database (#1266)4945e3a0
Storage now accepts db batch. (#1277)3d7d9157
Add simple retry to p2p (#1278)30f51bda
Added log timers. (#1276)b22bb354
Consuming rollups: fixes and clarifications (#1275)8cf8b8cf
Be explicit about the environment and whether deployed or upgraded (#1274)8977efbe
Increase ego heapsize to 2gb (#1273)29991d36
Review of todos part four (#1250)770379c0
Add test for restarting all nodes in network (#1272)04a3f5d0
Node upgrade: fix management contract config (#1271)eb68c71f
Fix log formatting to not swallow error (#1270)463f4c9b
Mempool is now using a simpler mechanism to pick transactions and wait for ones that are not ready to go in yet (#1268)116043bb
Host: retry submitblock on generic errors (#1267)2dfc15da
Set the text replacement for sending the faucet trigger (#1265)8cc34ea2
Fixes the testlog usage (#1264)4356da01
Testnet deploy: validator health check to 5mins (#1263)aadd5c5b
Avoid forwarding bad txs to the sequencer (#1249)1c186ee7
Fix syntax (#1262)0b44bc72
Updated to run the upgrade nightly (#1261)cd9d44c4
Testnet upgrade: lookup env build number from azure vms (#1252)f2ffe2cb
Testnet deploy: install gcc and allow time for vms to initialise (#1255)e119c78b
Testnet deploy: health check validator node too (#1258)26e03e35
Refactored the l2 chain code. added sequencer and validator separations and components to enable them (#1227)1fc911bf
Logs on the l1 containers (#1256)52623e95
Inmem node used in the socket simulation (#1254)f290dd67
Fix testnet deploy sleep condition (#1253)b7f18445
Add inmemory node to the node package (#1251)69458bfd
Fix the stop issue in the unit tests (#1247)d3e1d79e
Tidy up block submission errors (#1245)
- A list of the PRs merged in this release is as below;
6f8264f7
Fix the we cross-os build (#1244)325bb0c8
Adding system errors (#1237)f346e239
Add wait group wait() timeout function to util (#1242)b759f55a
Remove error from proto message payload (#1241)fdc9b035
Fix broken link for the pdf version of the whitepaper. (#1238)61b9e17f
Update some of the @matt todos (#1240)13c87ac1
Updates after backlog review part three (#1239)a551408b
Layout update for obscuroscan (#1200)eeb1623b
Locking the docker image alpine to 16 (#1233)6758cb32
Update wallet extension docs and include a link to obx faucet (#1235)a1a30083
Logs are now debuggable from the debug_log visibility endpoint (#1231)3497be98
Only perform the l2 deployment on a scheduled basis (#1230)3bda160e
Reintroducing encrypted enclave errors (#1197)56557a2f
Host to retry forever waiting for the enclave to come up (#1229)
- Robustness fixes for event log subscriptions, including ensuring no dropping of event logs, removal of any duplicates, and ensuring correct ordering based on their block insertion.
- Event log subscriptions will now infer the correct viewing key to use for relevancy checks performed by an Obscuro node. This is based on filter criteria in the subscription, e.g. when a particular address field is included in the filter list, if a viewing key for that address is registered, that key will be used. Note that subscriptions to all events, where those events might contain data used in the relevancy checks, will not be able to infer the viewing key to use, and as such will use the first registered key made through that instance of the wallet extension.
- A list of the PRs merged in this release is as below;
25dc4cd9
Block provider now contributes to health status (#1225)978e3509
Renaming docker volumes (#1224)827d67bc
Workaround for xchain message finality (#1220)56589db7
Persist enclave key (#1223)845d7d34
Is debug namespace enables flag (#1222)a3b220d1
Disabled notifications for npm (#1221)96e4029b
Adding debug_traceTransaction endpoint and functionality (#1214)37835960
Add different manual tests (#1217)c1425fbf
Reconnect client on the block provider (#1216)b0983690
Fix npe (#1215)e5efecc6
Fix sqlite init logic (#1213)05a7065f
Normalise data field to fix event dups bug (#1212)0fc9d164
Fix bug and improve log (#1211)bb92ae19
Add more logging in the verbose we (#1210)02d885ea
Review of todos part two (#1209)c1033393
Setup ego signer for testnets (#1208)7c2e8985
Pull the updated docker images in testnet upgrade script (#1207)13d8f102
Fix the block hash of log messages and receipts (#1206)4766f27b
Pedro/log tx rollup hash (#1204)6e81b9e2
Remove -a option (#1203)81aacd56
Eth2network now pushed as part of the deploy flow (#1201)e8903b38
Add logic to discover the authenticated client to be used for subscriptions (#1196)cad27131
Fix filtering logic (#1199)90b04263
Fix local network launcher for enclave persistence (#1198)48acdc3f
Use docker mount for enclave persistence (#1195)31562358
Rename offchain to obscall and fix tx execution logs (#1194)f3f73da6
Changes to the testnet launcher, better logging (#1192)124eb4cf
Fix names of types aliases (#1193)c6316cbb
Store events in sql table (#1182)17a7c44b
Todo review number 1 edits (#1191)927b970d
L1_host not output properly in upgrade gh action (#1190)013e8f32
Wipe and re-clone obscuro code on testnet node upgrade (#1186)f7d4cd35
Revert "refactoring how errors are done. (#1153)" (#1189)8dd0f1f6
Resolve faucet docs images (#1188)24659498
Add back in the faucet steps using discord (#1187)00fedf0f
Run scheduled dev-testnet deployment at 3:05am tues to sat (#1185)9af0f70c
Add in the release notes for v0.11 (#1177)45984ad1
Replaced 1.17->1.18 (#1184)c010d003
Refactoring how errors are done (#1153)6b96286d
Add docker_buildkit=1 (#1183)c3b76592
Remove unused host flow controls (#1181)3afc850e
Fix: node launcher was ignoring the l1 start param (#1180)18420198
Simplify sqlite creation logic (#1179)81483e76
Remove db interfaces (#1178)e7343851
Close database and guard enclave methods (#1175)9c9337c4
Removing the external api calls section (#1176)8106a432
Expose underlying sql database (#1171)235de492
Extract the mgmt contract deployment block for node starts (#1174)
- A list of the PRs merged in this release is as below;
1d22729e
Fixed nil ptr case. (#1172)96565a7d
Bridge and cross chain messaging docs. (#1087)dfc2b284
Added some logs for event relevancy. (#1169)915794a4
Process network secrets now iterates only over successful transactions. (#1168)0d8e947e
Tell prysm node not to look for peers (#1167)72cf6948
Retry l1 reconnect indefinitely (#1166)2678359a
Fix dead links. (#1156)e$266fd18c
Fix a dead link (#1157)e$f32bd928
Fixes for 3 dead links. (#1158)c3147be0
Prysm upgrade + fix compatibility (#1165)2e38f551
Set sequencer host to use in-mem db as well (#1164)496e626e
Move network config persistence further down stack (#1161)290c6c53
Docker testnet launcher to use in-mem db for host (#1162)6527a019
Update fast_finality.md (#1163)a483fe3f
Add upgrade option to node script (#1154)d41ad9ea
Small logging improvements, loosen islatest restriction (#1151)59762afe
Enable persistence on testnet hosts (#1152)a6087483
Fix loglvl arg format in testnet script (#1150)5bd5c21e
Set host and enclave loggers to info by default (#1149)8b85efe5
Reenable disabled block provider test (#1148)2e335e8e
Enclave does not process failed rollups (#1138)fddfeccb
Wallet extension verbose logging (#1147)824d74f8
Deploy l2 contracts synchronously (#1146)31b1d017
Add buildkit to docker update step (#1145)ee335754
Add basic l1 sanity check to networktests tools (#1142)af7f7259
Updated readme. (#1140)70197a13
Update the go versions on actions to match the repo version (#1143)dbda7aec
Fix to the admin address (#1141)d0a2d02d
Rollup module (#1125)d4637cc1
Trigger a repository dispatch to the faucet (#1139)6eb94f9b
Renamed increaseallowance to approve. (#1136)486892e5
Admin role for bridge. (#1135)f4e8f2ab
Clean up design documents (#1137)ec41be07
Draft upgrading design (#1103)b5a79eb6
Add test that restarts the host as well as the enclave (#1134)b3b15faa
Fix to the format of the dispatch event (#1133)
- A list of the PRs merged in this release is as below;
d81f5f9a
Run a schedule deploy on the l1, and trigger l2 if successful (#1129)481dc317
Wrap leveldb so its error types don't leak into our codebase (#1128)e5d8c398
Resilient to rpc requests while sequencer unknown (#1130)aa3eaea2
Updated go version and ego version. (#1124)6de02fb0
Add config to enable host persistence (#1122)7f7b78fa
Save deployment container logs as build artifacts for fault finding (#1123)7b640aec
No need to request secret for enclave on host restart (#1117)71d0ea88
Testnet launcher + node package (#1112)c33bf2bc
Clarify p2p address syncing (#1116)1c6f7c7e
Add integration testing and local network tools (#1115)a4d34075
Implemented scheduled deployment of dev-testnet (#1114)8adb8970
Rotates the eth2 logs (#1113)a9c8f9af
Update testnet-local-build_images.sh (#1110)77cc0dad
Management contract in all vars (#1093)7bffad4d
Add a single start script to launch testnet with default arguments (#1107)ff7632fa
Adds a script that waits for the eth2network to be ready (#1108)76a0abbb
Removes the gethnetwork (#1095)70767522
Add blockheight and blockhash log keys (#1105)d4bb4120
Fix comparison for empty hash (#1106)6e145dce
Update enclave.go (#1104)55f4fdc9
Fixes for the we tests (#1102)de1d8bf4
Record latest rollup for every l1 block to avoid scanning back (#1101)859524b2
Attempt to fix github sleep step bash syntax (#1099)9196f32b
Aggressive enclave logging to track what what it is processing (#1100)f56418b9
Fix contract deployer test ports (#1097)a10e94a7
Add sleep to stagger az cli requests on parallel node creation (#1098)855c3a36
Fix wallet extension flakyness (#1096)04af95bd
Fix for contract ci go test integration. reintroduced param names to … (#1094)2e0dfdc1
Eth2 used in the deployment (#1079)3ef6a073
Remove speculative execution (#1092)ba736919
Adding manual tests + minor fixes (#1090)1d3134b7
Fix sequencer tx production (#1091)73dc2df8
Rollup lookup should not assume that l1 blocks go back to genesis (#1089)09932b44
After enclave restart, replay batches to restore missing statedb cache (#1088)d0bb547f
Provide a clearer way for finding the latest rollup in the chain of a given head block. (#1085)c610271f
Fixes enclave debug image (#1086)e2c2babc
Avoid swallowing l1 client error messages (#1081)54819a09
Ensure l2 head is rewound after l1 forks (#1078)afafeee2
Call db client batches dbbatches to avoid confusion (#1070)a8357aa3
Obscuro bridge deployment scripts. (#1046)c951a9b8
Reduces the time to start a merged eth2 network (#1077)7a65331c
Make pr template lighter (#1076)015c6b7e
Juiced the docker. it's now fast. (#1071)9e7c6a30
Upgrade enclave l2 (#1075)5e494c36
Fixes the enclave start (#1074)6f2b8a69
Remove early exit (#1073)14d25d96
Fix faucet deployment trigger (#1072)b2e6f8e2
Store the l2 head hash directly in the enclave (#1069)34e7bbe3
Adds an upgrade testnet workflow (#1049)f8230934
Adds eth2 network (#1050)37f52830
Docker image size reduction (#1068)6f621c0b
No need to manage a mempool on non-sequencer nodes (#1064)d8f3d64d
Temporarily allow product key sealing edb credentials for testnet upgrades (#1065)c254ac9c
Removed stuff related to the old bridge (#1057)c775d8bd
Store batches from rollups. check batches at same height are consistent. (#1063)69fcdd10
Wallet extension now supports --host cli arg. (#1061)c5635a75
Fix solidity compilation warnings for unused calldata. warnings are now treated as errors. (#1060)fde6606c
Adds todo. (#1058)72c062b8
Requires the full set of batches to be specified when creating a rollup from a set of batches (#1056)5b7ffbb5
Each rollup references its batches, rather than a set of transactions (#1055)12229781
Adds comments to clarify some of the log events logic. (#1054)1a16f9ef
Fix for ci deployment. (#1053)3c977786
Rollup header points to batch. (#1052)556a5741
Avoid unnecessary updating of head rollup for block (#1051)
- A list of the PRs merged in this release is as below;
35054c64
In mem tests now use containers (#1045)b736353f
Added layer 2 deployment and updated bits around it (#1044)d9ef7b8a
Fixes to some hh deployment issues (#1043)ce18d3fd
Propagates container start error (#1042)bb1bc76c
Remove gas constants (#1041)80fcc27d
Hardhat deploy plugin and deployment of the layer 1 bits (#1038)070c79d7
Added tasks for the wallet extension (#1037)a0eb02c3
Testnet and dev tesnet now deploy from one workflow (#1035)10838a4e
Improved validation of incoming rollups (#1040)47ecb855
Extracted abigen task as a separate one (#1036)e375f0f5
Obscuroscan now deploys manually (#1033)d37f325a
Separate batch and rollup in block submission response (#1034)0d32caf7
Testnet metrics are pushed to datadog (#1025)35c60d39
Fixed a slight bug in the message bus (#1028)e30dcb2a
Changed runner from self hosted to ubuntu (#1030)a3567c0e
Parallel build the images (#941)
- Predominantly internal changes as part of work on faster finality, persistent L1 and updated bridge. No user visible changes or breaking API changes are made.
- A list of the PRs merged in this release is as below;
7652b2c5
Fix for issue deploying testnet (#1020)84bd5d82
Added bridge smart contracts and test. (#993)8a75bd05
Deployments wait until node 0 is healthy (#1018)383b9c7b
Updated changelog (#1016)3622359f
Uses known registry address (#1017)6f4f876c
Decouples host and rpc server (#1014)81d92fb3
Locks edb version for the obscuro node (#1012)1bb248d3
Remove unnecessary start method from enclave interface (#1011)7e525447
Rpc server is injected into the host (#1010)7c51dcb6
Docker updates (#1009)8ac39307
Updates pccs url for edgelessdb + ego (#1008)74cc6e9b
Change sequencer id var to read from gh secrets (#1006)d74c2995
Use a curl command to request obx (#1007)dd9b5e77
Adds metrics + update p2p to use metrics (#1002)dd6d7ec6
Fix timing issue with sequencer secret (#1004)80a24e61
Genesis rollup agg field should be the sequencer that produces it (#1003)d777c4c1
Updates the sgx folder to match the edgelessdb usage (#1000)521b0156
Add is() support to blockrejecterr for standard errors (#1001)3ebd06b7
Switching genesis to be a batch, not a rollup (#997)c3907cb5
Hooks sequencerid flag (#999)709cd907
Fixes two bugs in batch catchup (#995)8b1344e1
Fix for oz 4.5.0 dependency (#994)38ab4925
Return genesis as batch, not rollup (#990)25e3b73c
Remove ides folders (#992)e05282e1
Changed contracts to use hardhat for compilation. (#965)cb561316
Reduce sleep time after unexpected block provider error (#989)81f52116
Add fast-fail mechanism to break out of retry (#988)43dcf872
Create two separate header structs for batch and rollup (#985)b34fde07
Tx injector l1 deposits are estimated (#986)c40573be
Clean up batch validation on validators; check for missing batches in chain (#984)4f0cc501
Stop using same struct for rollup and batch headers, so they can diverge (#981)79bf6b52
Fix main build errors (#982)12799f2c
Temporarily disable the validation of sequencer signatures (#980)5e72c139
P2p healthcheck (#962)c3aaeb24
Check that rollups processed from l1 blocks are sequential (#977)c2a463c2
Returns clearer error if rollup signature cannot be validated (#978)37c9246e
Some minimal validation of processed rollups (#976)5cab9cf6
Send transactions to sequencer, instead of broadcasting them (#975)e22643db
Add section into pr template (#974)a6c8415e
Proper handling of genesis batch on the host side (#972)997737e5
Reintroduce storage of rollups; store genesis rollup and rollups from blocks (#973)c80b5d56
Check that received batch is produced by sequencer (#971)1c06e9ec
Removes use of transaction blob crypto in rollup chain. (#970)2bbde79f
Rename methods on enclave to reflect fact that batches are now source of truth (#969)061febd8
Fixed broken link. (#967)1aab5f55
Clean up enclave storage (#968)21abaa9c
Cleaner production of rollup on sequencer (#964)7824f769
Produce block submission response outside of rollupchain; some cleanup (#963)d6199e1f
Clarifystorenewheads
logic (#961)650f727c
Avoid storing batches twice; small optimisations to batch catch-up (#959)a0141139
Disabled cross chain messages block hash binding in management contract. (#958)3ed4b90d
Separate di constructor for container in testing (#957)7506ebe3
Reenable withdrawals check in sim. (#956)304d33ab
Remove storage of rollups on the host side (#955)755a61ca
Create rollups from scratch instead of retrieving them from l1 blocks (#946)4fd3825a
Hosts now use the addr pk for deployment (#935)5b6b6380
Gas estimation centralization (#954)188d1f23
Logging improvements to easily trace what is going on and a band aid on the test to stop showing false positives. (#953)a3a4f12c
Second attempt at fixing testnet (#952)b1574942
Fix for the testnet deployment (#951)838067f8
Standardise container wiring for enclave and host (#949)5e18b286
Fix security issue. seal secrets with the unique sgx key (#950)e8e34ac8
Adding stop and status scripts (#948)13d334da
Obscuro cross chain messaging (#817)2d327cee
Adds a start node doc (#945)cfdfd07c
Submit each batch to the enclave if it's successfully stored (#947)24871c16
Removes issequencerenclave. updates node types. (#944)9ebcf3f3
Fixes underflow bug. (#942)8dca53c8
Removes unused flags (#934)7f854124
Clean up handling of genesis block (#939)9bb34347
Reverts use of retry.do. (#940)e27d1242
Pedro/fix get balance (#937)41580a89
Fixes batch catchup, and fixes bug in sequencer rollup production (#927)640f065f
Have shorter timeout for awaiting receipt in in-mem sim (#925)8334dad0
Host id is now generated from pk (#933)8c06ad68
Quote the owner in the json (#932)687f910d
Fixes obscuro scan git deploy (#931)f75f77d4
Remove pkaddress flag (#930)86c61ec9
Add in user login (#929)6b302f85
Fix in-mem mock concurrency bug (#928)53fb50a4
Remove genesis block references outside of in-mem mock code (#922)2dade86f
Testnet dns now point to node1 (#918)df5703b1
Avoid duplication in ancestor-checking methods (#920)84a4a13d
Jamescarlyle webapp obscuroscan (#849)3d212dad
Allow l1 start block to be configured to avoid all l1 history (#917)a979dca4
Fix fork block loop and re-merge blockprovider pr (#916)c4c30343
Removes buggy fetchheadrollup method on storage (#914)780af91a
Has-get pattern in the db fix (#912)b695a1a5
Simplifies storage of new heads (#910)ab28a79b
Removeheadsafterl1block
type; some clean-up (#907)d3898965
Eth call, estimategas and getbalance calls now respect the block numb… (#902)483d5ba2
Revert call error not correctly propagated (#905)437a53df
Reorganisesrollupchain
methods (#904)f19917f1
Clean up of l1 block submission (#903)61da560f
Unlink production of rollups from submission of l1 blocks (#899)da812862
Clarifies fields inblockstate
(#901)131b5e4c
Log error if no peers list yet to send batch request to (#900)9a5f5812
Separate out genesis response from blocksubmissionresponse (#898)e8e1de09
Clean upsubmitl1block
(#897)1ca96d95
Allow hosts to catch up on missed batches (#887)ef1ad41d
Revert "use block provider as source of l1 blocks in host (#891)" (#895)ab23a792
Adds tests to enclave get balance (#894)2e59cdbd
Use block provider as source of l1 blocks in host (#891)739b34c1
Reworks confusing error block. (#893)82528e73
Rollup chain no longer handles encryption and param validation (#892)75843a00
Fix enclave tests (#890)abe4ac09
Simplify blockprovider process control to use context (#889)7ce5047a
Tweaking the faucet to allow for enclave unit tests (#888)8ad27bd5
Surface enclave errors. (#886)80b0fef6
Fixes npe when receipt takes longer than expected time (#881)d23388e4
More enclave db error handling (#883)41c2e62c
Profiler - address gosec warning on new versions of golangci-lint (#884)6d116689
Make our errnotfound match ethereum's (#885)842997c8
Surface errors from accessors_receipts and accessors_metadata (#882)ddc39783
Surface enclave errors. (#880)9ccd7cde
Removes dead linteres to remove noise. (#878)08e16959
Surface more enclave errors (#877)4641fd93
Rename to be consistent (#876)8c993fec
More surfacing of enclave db errors (#874)9e497728
Add file to deploy obscuroscan into dev-testnet (#875)72fde61d
Update faucet.md (#872)85ce478b
Extends integration tests of obscuroscan. switch obscuroscan api to return batches, not rollups. (#873)325d37fb
Tidy up names (#860)80a77b7e
Surface enclave db errors (#866)d28d3b27
Revert "testnet dns now point to node1" (#868)b40a7517
Test obscuroscan's getlatesttxs in integration tests (#871)84d42fda
Fix dead links in docs (#864)bea17905
Adds integration test of gettotaltxs. (#870)e6598799
Return errors from enclave db, instead of ignoring or using a critical log message (#863)a734947d
Custom error is now a pointer (#865)6bcadc77
Switch over various obscuroscan api methods to be based on batches, not rollups (#857)
- A variety of stability related issues are fixed within this release.
- Inclusion of a health endpoint for system status monitoring.
- It is now possible to run an Obscuroscan against a locally deployed testnet. For more information see building and running a local testnet in the project readme.
- Obscuroscan's GitHub Actions deploy script has been modified to run the public Testnet Obscuroscan as an Azure web app. This allows access via HTTPS (TLS), which allows app developers to call the Obscuroscan API from other web apps.
- A list of the relevant PRs addressed in this release is as below;
12a04c40
Checks whether the head rollup is nil (#859)619d39b4
Clarify that blocks are L1 blocks (#858)01884de0
Removes endpoint to get L1 height from Obs node (#856)9b975f3d
eth_getBlockByNumber and eth_getBlockByHash responds based on the batches, not the rollups (#855)87588e54
Stores batch at the correct point (#854)f4d37f6e
Remove geth EVM trace logger (#853)fcc02555
Distribute and store batches (#850)243f7ef7
Replace panics with logger.Crit in the enclave (#844)5f97c1a4
Returns errors from DB methods, instead offound
bools and critical log events (#842)3dd03cdc
Uses a write lock instead of a read lock (#847)c039df7d
Locks the subscription list in LogEventManager for threadsafety (#846)b1bfed47
Gets number of subs in threadsafe way (#845)76fde61d
Revert "Fix EVM error casting to use pointer variable" (#841)d225a75c
Adds methods to host DB for batches (#837)f3d60127
Fix EVM error casting to use pointer variable (#840)8e21374b
Fix issues with submit block errors (#838)ddecd719
Fixes concurrency bug in subscription manager (#839)12f34d46
Create blockprovider and use it for awaitSecret (#813)9e524e7f
Removes HeaderWithHashes type (#836)756b7c16
Removes ExtRollup/ExtRollupWithHash split (#835)17940c7b
Fixing node start out of sync (#832)81b8d9c8
Testnet DNS now point to node1 (#827)de9dbc6f
Cleans up the GetLatestTransactions API method (#833)6932e020
Fixes grabbing a rollup via ObscuroScan (#829)c9e978f0
Adds booleans to DB methods to indicate whether was found. (#831)849ea7aa
Fetch latest Rollup Head now returns error (#826)bc652690
Adding health check endpoint (#825)8f049ff9
Handle all errors from ethcall and estimate gas (#823)9107d571
Fixes eth call error propagation (#822)976d872c
Remove unused test APIs. Rename RPC method constants for clarity (#821)3a6f197f
Stop in-mem nodes properly. Prune unused in-mem RPC methods (#820)84e7c615
Provides logger for Obscuroscan (#819)088d8f50
Dynamic estimate gas (#815)4478ffbd
Fix the bridge address to pass the checksums (#812)ef0e04d9
Downgrade the spammy log message (#810)6cb0d85a
Have sims test the eth_blockNumber endpoint (#809)d83c201e
Confusing description ofDB.writeRollupNumber
. Minor clean-up (#791)5faab414
Fix to use the dev build of the contract deployer (#807)
-
The Number Guessing Game has been removed from static and auto deployment scripts, and is now hosted in a sample applications repository. Given the move for Testnet to be long-running (or at least restartable without contract disappearance), the Guessing Game must be persisted across software updates, and redeployed manually if needed in the same way other applications are.
-
The list of sensitive RPC API methods, where the request and response is encrypted in transit, now covers
eth_call
,eth_estimateGas
,eth_getBalance
,eth_getLogs
,eth_getTransactionByHash
,eth_getTransactionCount
,eth_getTransactionReceipt
andeth_sendRawTransaction
. See the Obscuro documentation for more details. -
Calls to wait for a transaction receipt are now blocking, whereas previously they would return an error meaning the client side code needed to perform a specific wait and poll loop. The example on how to programmatically deploy a contract has been updated accordingly.
-
The ability to start a faucet server against a local testnet deployment is now supported via a docker container. For more information see the Obscuro readme.
-
Updates to the Events design inclusion of the Fast Finality design.
-
The Obscuro docs site is now searchable.
-
Testnet is now officially termed
Evan's Cat
. -
ObscuroScan:
- Event Subscriptions:
- Event subscriptions for logs are now supported via the eth_subscribe and eth_getLogs approaches. This has been tested using both the ethers and web3js libraries. Note that eth_newFilter is not currently supported. For more information see the events design.
- Wallet extension:
- The wallet extension now supports separate ports for HTTP and WebSocket connections. Use the
--port
and--portWS
command line options respectively for each. For more information see the Wallet extension documentation.
- The wallet extension now supports separate ports for HTTP and WebSocket connections. Use the
- Event subscription:
- An early preview of event subscriptions is available in this release, though note that this is still undergoing testing and feature enhancements and therefore is liable to issues and instability. For more information on the functionality available reach out to the development team on the discord active testnet developers channel.
- Transaction receipts:
- Only return receipts for transactions which were included in a canonical rollup.
- Tokens / ERC20 contracts
- The ERC20 'HOC' and 'POC' tokens are now funded with 18 decimal places of precision. Previously funding of 50 tokens was erroneously made as 50 10^-18. This means tokens imported into Metamask will display correctly. Note that the number guessing game pay to play still costs 1 10^-18 HOC tokens.
- Wallet extension:
- Viewing keys are now persisted across wallet extension restarts
- Enhanced logging for registering of viewing keys
- Account balances:
- Added correct calculation of account balances (previously, all accounts were allocated infinite funds).
- Tokens / ERC20 contracts
- The two pre-installed ERC20 contracts deployed are now named 'HOC' and 'POC', replacing the previous tokens of 'JAM'
and 'ETH'. Contract addresses remain the same as before respectively. The tokens have restricted
balanceOf
andallowance
calls such that only the owner of the account can view details which should be private to them. Seego-obscuro\integration\erc20contract\ObsERC20.sol
for more information. - Testnet now supports a faucet to distribute native OBX on request. Previously pre-funding of accounts meant that no native tokens were required to execute transactions on Obscuro - this is now not the case and native tokens must be requested. Allocation of native OBX, along with HOC and POC tokens is currently not supported automatically and a request to Obscuro Labs should be made on the Faucet Discord channel.
- The two pre-installed ERC20 contracts deployed are now named 'HOC' and 'POC', replacing the previous tokens of 'JAM'
and 'ETH'. Contract addresses remain the same as before respectively. The tokens have restricted
- Gas prices:
- The node operator can configure the minimum gas price their aggregator will accept on startup.
- Wallet extension
- The wallet extension now supports multiple viewing keys through a single running instance. For more information see
the wallet extension design doc,
specifically
Handling eth_call requests
for how the required viewing key is selected when multiple keys are registered.
- The wallet extension now supports multiple viewing keys through a single running instance. For more information see
the wallet extension design doc,
specifically
- Testnet launch:
- Testnet preview launched to limited number of application developers.
- ObscuroScan block explorer for Testnet launched.
- Number Guessing Game smart contract deployed to Testnet.
- Obscuro Docsite launched.
- Account balances:
- Added correct calculation of account balances (previously, all accounts were allocated infinite funds).
- Introduced network faucet account.
- Obscuro enclaves services can configure the minimum gas price they'll accept
block.difficulty
will return a true random number generated inside the secure enclave.