Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add EIP: Inter-Dapp tracking standard #8035

Closed
wants to merge 1 commit into from
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
57 changes: 57 additions & 0 deletions EIPS/eip-7580.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
---
eip: 7580
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
eip: 7580
eip: unassigned

A number hasn't been assigned yet. Please move this to the ERC repo.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oops. Got it

title: Inter-Dapp tracking standard inferface

Check failure on line 3 in EIPS/eip-7580.md

View workflow job for this annotation

GitHub Actions / EIP Walidator

preamble header `title` should not contain `standard` (or similar words.)

error[preamble-re-title]: preamble header `title` should not contain `standard` (or similar words.) --> EIPS/eip-7580.md:3:7 | 3 | title: Inter-Dapp tracking standard inferface | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ prohibited pattern was matched | = info: the pattern in question: `(?i)standar\w*\b` = help: see https://ethereum.github.io/eipw/preamble-re-title/
description: Share an inter-dapp tracking standard inferface for dapp interactions and support for more complicated business logics

Check failure on line 4 in EIPS/eip-7580.md

View workflow job for this annotation

GitHub Actions / EIP Walidator

preamble header `description` should not contain `standard` (or similar words.)

error[preamble-re-description]: preamble header `description` should not contain `standard` (or similar words.) --> EIPS/eip-7580.md:4:13 | 4 | description: Share an inter-dapp tracking standard inferface for dapp interactions and support for more complicated business logics | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ prohibited pattern was matched | = info: the pattern in question: `(?i)standar\w*\b` = help: see https://ethereum.github.io/eipw/preamble-re-description/
author: wart (@wartstone)
discussions-to: https://ethereum-magicians.org/t/any-eip-erc-related-with-airdrop-status-existing/16976
status: Draft
type: Standards Track
category: Application

Check failure on line 9 in EIPS/eip-7580.md

View workflow job for this annotation

GitHub Actions / EIP Walidator

preamble header `category` has an unrecognized value

error[preamble-enum-category]: preamble header `category` has an unrecognized value --> EIPS/eip-7580.md:9:10 | 9 | category: Application | ^^^^^^^^^^^^ must be one of: `Core`, `Networking`, `Interface` | = help: see https://ethereum.github.io/eipw/preamble-enum-category/
created: 2023-12-13
---

## Abstract

Share an inter-dapp tracking standard inferface for dapp interactions and support for more complicated business logics

## Motivation

Currently there's no shared standard for dapp communication to support inter-dapp logics cooperations. With such standard, we would facilitate far more complicated business on chain, especially on social/game category. There's one obvious usage for this standard: Promotion (or Ads). Project contracts could adopt this standard to track promotion for better benefits.

## Specification

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119.

```solidity
pragma solidity ^0.4.20;

interface ERC7580 {
/// onTrackStart called when appointed task begins
function onTrackStart(uint256 track_id, address contract_address, bytes32 function_hash);

/// onTrackStart called when appointed task ends
function onTrackEnd(uint256 track_id, address contract_address, bytes32 function_hash);
}
```

### Execution layer

This requires no changes to the Execution Layer.

### Consensus layer

This requires no changes to the Consensus Layer.

## Rationale

### Deprecation strategy

## Backwards Compatibility


## Security Considerations

## Copyright

Copyright and related rights waived via [CC0](../LICENSE.md).

Loading