Skip to content

Core: Release 4 - Appl Txns #144

Open
@larkiny

Description

@larkiny

Application Transaction Support add support for Appl transactions with ABI method typing in utils-ts and optimized contract calls in lora. Features included state and box storage interaction, foreign references, argument handling, ABI compliance, and application lifecycle workflows. Introduce standardized error codes, localized messages, structured error objects, categorization, recovery suggestions, and logging.

Work Items

  • App lifecycle: create, update, delete
  • Enable signing of programs
  • Template variables
  • Call to algod /compile
  • Get hash (address)
  • Disassemble TEAL bytecode
  • Create application w/programs and state schemas
  • Get created application ID
  • Allocate extra pages
  • Create application with initial state values
  • Run simulate to calculate app creation costs
  • Correctly handle on schema break behaviour
  • Specify application completion actions
  • Update application
  • Delete application
  • Archive app data before deletion
  • Opt-in to app (allocate local state)
  • Opt-out of app (clear local state)
  • Validate app args
  • Get TEAL line from pc
  • Handle ABI encoding/decoding errors
  • Get human readable error from PC (ARC 65 || 56)
  • Get defined method from spec
  • Create method selector
  • Encode args
  • Set transaction args
  • Reference foreign app
  • Handle app call errors
  • Call read-only methods
  • Turn algod errors into human readable (ARC65 || 56)
  • Reference foreign asset
  • Reference accounts
  • Populate application resources
  • Calculate app call inter transaction fee coverage
  • Op ups
  • Call ABI method
  • Pass typed args to ABI methods
  • Parse exec trace from simulate
  • Work with source maps
  • Pretty print exec trace from simulate
  • Get application logs
  • Get ARC-28 encoded Events
  • Decode ARC-28 encoded events
  • Opt In to local state
  • Clear local state
  • Opt out
  • Read global state
  • Read local state
  • Read boxes
  • Monitor state changes
  • Migrate app state
  • Define and parse ABI contract interfaces
  • Create contract instances from ABI definitions
  • Generate Typescript interfaces from ABI definitions
  • Share and reuse ABI definitions
  • Version ABI interfaces
  • Encode/ Decode method args
  • Handle complex data types
  • Convert between JS native types and ABI types
  • Validate data against ABI type defs
  • Handle decoding edge cases like very large integers
  • Lookup app info by app Id
  • Lookup app info by app Id and creator
  • Get all applications for account
  • Get all applications account has opted into
  • Get application boxes
  • Get application box by name
  • Create create app call txn
  • Create delete app call txn
  • Create opt-in app call txn
  • Create opt-in app call txn
  • Create update app call txn
  • Combine ABI method calls with regular txns
  • Create transaction via algokit_transact
  • abi support is via avm_abi
  • Create transaction via algokit_transact
  • abi support is via avm_abi

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions