Git Product home page Git Product logo

Comments (5)

marc0olo avatar marc0olo commented on June 9, 2024 1

By time

  • PUT /devmode/time

    • Request payload example {"value": 86400} (amount of seconds to move forward)

@bogdan-manole this is the one you currently miss, right? I don't think we followed my proposal back then. but most of the stuff has been added already.

let me try to summarize what's done (which has also been added by @uwiger independent of the issue here) and what's missing 😅

Current State

  • Config
    • chain
      • keyblock interval
      • microblock interval
      • auto-emission of microblocks
      • start_time - unix timestamp to start with the first (or ongoing) block
        • default: current unix timestamp
      • protocol_version - protocol version to run the node with (hard_forks section should be omitted)
        • default: always the latest hardfork
      • block_height_start - height to start the creation of blocks at
        • only relevant if the node is started using a snapshot.
        • default: following block based on the latest block of the snapshot
    • accounts
      • derive_from_mnemonic - mnemonic seed phrase to derive accounts from (@nikita-fuchs working on that afaik)
        • default: some seed phrase we always use OR a generated one (not sure what's better @nikita-fuchs)
      • default_balance - the default balance of all generated accounts
        • default: 500 Æ
      • total_accounts - the total amount of accounts to derive from mnemonic
        • default: 10
  • API
    • chain
      • /emit_mb - Emit a microblock
      • /emit_kb?n=<N> - Emit N keyblocks
      • /kb_interval?secs=<S> - Set a keyblock interval of S seconds (secs=0 turns off)
      • /mb_interval?secs=<S> - Set a microblock interval of S seconds (secs=0 turns off)
      • /auto_emit_mb?auto_emit=on - Turn on auto-emission of microblocks on tx push
      • /auto_emit_mb?auto_emit=off - Turn off auto-emission of microblocks on tx push
      • time?secs=<S> - Jump S seconds into the future
      • protocol_version=<V> Jump to the (future) protocol version V

Other considerations

  • did somebody ever test running devmode based on a mainnet/testnet snapshot? @nikita-fuchs @thepiwo
  • we recently also discussed if we can fund a new account after we run in devmode based on a mainnet/testnet snapshop. it should already be doable but somebody needs to test @nikita-fuchs @thepiwo
  • impersonating accounts when running devmode based on a mainnet/testnet snapshot -> how can we get control over an account where we do not know the private key? @uwiger @velzevur @hanssv

from aeplugin_dev_mode.

marc0olo avatar marc0olo commented on June 9, 2024

seems like naming could change as devmode is probably the better naming for this

from aeplugin_dev_mode.

cna0 avatar cna0 commented on June 9, 2024

Hello @marc0olo! I have to say, great proposal, very thorough!

Have you seen this issue? aeternity/aeternity#3545
It's a simple maintenance/debug mode, but can it be useful for smart-contract developers also?

from aeplugin_dev_mode.

marc0olo avatar marc0olo commented on June 9, 2024

Hello @marc0olo! I have to say, great proposal, very thorough!

Yeah smart contract devs really need this kind of functionality. Details can - of course - be changed if it makes sense.

Have you seen this issue? aeternity/aeternity#3545
It's a simple maintenance/debug mode, but can it be useful for smart-contract developers also?

No I haven't seen it before. It seems like there is at least some overlap when it comes to deactivating sync e.g.. And we don't need to be able to switch to devmode during runtime (if this is required for maintenance mode). Also it's not only about deactivating mining and http endpoints. In case of the devmode we need to completely change the consensus and still allow transactions to be broadcasted via the http endpoints like usual.

from aeplugin_dev_mode.

marc0olo avatar marc0olo commented on June 9, 2024

closing in favor of #20

from aeplugin_dev_mode.

Related Issues (11)

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.