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

NEP-330 extension: Build details extension #533

Merged
merged 42 commits into from
Apr 18, 2024
Merged
Changes from 1 commit
Commits
Show all changes
42 commits
Select commit Hold shift + click to select a range
8faf0ec
update nep-0330 specification
Canvinus Feb 19, 2024
b976790
add nep-0330 version 1.2.0
Canvinus Feb 19, 2024
7238821
update nep-0330 summary and motivation
ztsalexey Feb 19, 2024
7acc38b
Merge branch 'master' into master
Canvinus Mar 1, 2024
811cc36
Update neps/nep-0330.md
Canvinus Mar 5, 2024
fddcee4
Update neps/nep-0330.md
Canvinus Mar 5, 2024
b1ebba0
Update neps/nep-0330.md
Canvinus Mar 5, 2024
8a1115d
Update neps/nep-0330.md
Canvinus Mar 5, 2024
2b3bd13
Update neps/nep-0330.md
Canvinus Mar 5, 2024
6046647
Update neps/nep-0330.md
Canvinus Mar 5, 2024
29f9f11
Update neps/nep-0330.md
Canvinus Mar 5, 2024
18968ea
implement suggested updates
Canvinus Mar 5, 2024
f47d5ed
fix indentation
Canvinus Mar 5, 2024
7a186fe
fix indentation in examples
Canvinus Mar 5, 2024
04c54a5
add link with commit reference
Canvinus Mar 5, 2024
35bbcde
specify that image is in context of docker
Canvinus Mar 5, 2024
6a10073
Update nep-0330.md
Canvinus Mar 6, 2024
837d81b
Update nep-0330.md
Canvinus Mar 6, 2024
c38d9f5
use semantic version in example
Canvinus Mar 6, 2024
aa84739
rename build_environment
Canvinus Mar 6, 2024
61025bc
suggest using docker image digest
Canvinus Mar 6, 2024
cce3cd1
fix indentation in Rust struct
Canvinus Mar 6, 2024
66db5e8
contract_path in context of crates
Canvinus Mar 6, 2024
ddbf6b0
Update neps/nep-0330.md
Canvinus Mar 7, 2024
360ed58
Update neps/nep-0330.md
Canvinus Mar 7, 2024
510f831
Update neps/nep-0330.md
Canvinus Mar 7, 2024
2cbbda3
rename Rust struct to BuildInfo
Canvinus Mar 7, 2024
4e24ceb
Update neps/nep-0330.md
Canvinus Mar 7, 2024
41f3c9c
Update neps/nep-0330.md
Canvinus Mar 7, 2024
222d260
add note on having Cargo.lock in source code snapshot
Canvinus Mar 9, 2024
35bed0f
add cargo-near-new-project-template as an example
Canvinus Mar 9, 2024
586ddd3
fix the comment of source_code_snapshot
Canvinus Mar 9, 2024
2005598
fix the comment of source_code_snapshot
Canvinus Mar 9, 2024
6781014
fix link examples
Canvinus Mar 9, 2024
0f70f5d
add commas to e.g.
Canvinus Mar 9, 2024
55d3f1e
add cargo-near-template in source_code_snapshot example
Canvinus Mar 9, 2024
c06b054
add ensuring wasm reproducibility section
Canvinus Mar 13, 2024
cbf4f0f
add info about pathes in ensuring reproducibility
Canvinus Apr 11, 2024
44e681d
add blank line to list
Canvinus Apr 11, 2024
ccf9330
fix linter error
Canvinus Apr 11, 2024
401b04a
fix more linter errors in SelectingBlockProducers.md
Canvinus Apr 11, 2024
b7224ca
revert to commit 44e681dc0137361c2a99417ffe4dffd6461ed70f
Canvinus Apr 12, 2024
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
Prev Previous commit
Next Next commit
update nep-0330 summary and motivation
  • Loading branch information
ztsalexey committed Feb 19, 2024
commit 7238821baaf379be9f5c543e5b2c344cc9eaa6cb
12 changes: 8 additions & 4 deletions neps/nep-0330.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
NEP: 330
Title: Source Metadata
Author: Ben Kurrek <ben.kurrek@near.org>, Osman Abdelnasir <osman@near.org>, Andrey Gruzdev <@canvi>
Author: Ben Kurrek <ben.kurrek@near.org>, Osman Abdelnasir <osman@near.org>, Andrey Gruzdev <@canvi>, Alexey Zenin <@alexthebuildr>
DiscussionsTo: https://github.com/near/NEPs/discussions/329
Status: Approved
Type: Standards Track
Expand All @@ -13,13 +13,17 @@ Updated: 19-Feb-2023

## Summary

The contract source metadata is a standard interface that allows auditing and viewing source code for a deployed smart contract. Implementation of this standard is purely optional but is recommended for developers whose contracts are open source.
The contract source metadata represents a standardized interface designed to facilitate the auditing and inspection of source code associated with a deployed smart contract. Adoption of this standard remains discretionary; however, it is strongly advocated for developers who maintain an open-source approach to their contracts. This initiative promotes greater accountability and transparency within the ecosystem, encouraging best practices in contract development and deployment.

## Motivation

There is no trivial way of finding the source code or author of a deployed smart contract. Having a standard that outlines how to view the source code of an arbitrary smart contract creates an environment of openness and collaboration.
The incorporation of metadata facilitates the discovery and validation of deployed source code, thereby significantly reducing the requisite level of trust during code integration or interaction processes.

Additionally, we would like for wallets and dApps to be able to parse this information and determine which methods they are able to call and render UIs that provide that functionality.
The absence of an accepted protocol for identifying the source code or originator of a deployed smart contract presents a challenge. Establishing a standardized framework for accessing the source code of any given smart contract would foster a culture of transparency and collaborative engagement.
Canvinus marked this conversation as resolved.
Show resolved Hide resolved

Moreover, the current landscape does not offer a straightforward mechanism to verify the authenticity of a smart contract's deployed source code against its deployed version. To address this issue, it is imperative that metadata includes specific details that enable contract verification through reproducible builds.

Furthermore, it is desirable for users and dApps to possess the capability to interpret this metadata, thereby identifying executable methods and generating UIs that facilitate such functionalities. This also extends to acquiring comprehensive insights into potential future modifications by the contract or its developers, enhancing overall system transparency and user trust.

The initial discussion can be found [here](https://github.com/near/NEPs/discussions/329).

Expand Down
Loading