Only this pageAll pages
Powered by GitBook
1 of 67

The Build3 Construction Blockchain

Loading...

Loading...

Loading...

Loading...

Loading...

Researchers

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Developers

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Old System, New World

We're surprisingly far behind in some of the most basic, economically fundamental technologies.

Struggling to Interface in a Digital World

The 2016 paper published by NSPE, "Blockchain Technology: Implications and Opportunities for Professionals Engineers" states that, "today, the institution of professional engineering is struggling for an interface with the digital world."

It's odd to think that engineers of all people are struggling to interface in a digital world. While that is less true today than in 2016, the construction industry is still the least efficient among all businesses today.

The rate of acceleration between licensed professional regulations and the remainder of the world is staggering.

This construction industry exposes us to increasing rates of risk.

Applying for a Professional Engineering License Often Requires Envelopes and Paper Checks

The Security Approach Has Changed Little Since it Was Invented.

Which Stamp is Easier to Steal?

Let's qualitatively examine the security between a physical engineering stamp and a DocuSigned signature as a stamp.

  • DocuSign: You'll have to pass through two-factor authentication to log in. To steal this signature, you need the password and the physical device used for the second authentication point (usually a phone).

  • Physical Stamp: Google their license, buy a stamp online, and stamp a drawing.

We are not advocating DocuSign as the solution. However, this demonstrates that our industry is so far behind that we'd sooner have the system hacked than learn new engineering techniques which could solve many of our problems. Taken at its extreme, this unwillingness to act could be a violation of the .

Engineering Supervision Does Not Require Physical Proximity

A surprising number of states attempted to address the growing virtual world we live in and how that even impacts the meaning of "direct supervision." Laws today were written for offices of yesterday when an engineer was physically in the same space with the unlicensed staff.

The regulations in our industry give off a tone of either someone that genuinely wrote them in the 80s and forgot ever to update them or someone that still thinks the internet is a fad.

Either way, it is entirely untrue to say that engineering can only happen when two or more humans physically share a room during the process. Meanwhile, are permanent remote work companies.

A Permanent Supply & Demand Problem

Each state's laws provide authorities to organize a board of directors. The board has varying power, usually reviewing and approving licenses and issuing disciplinary actions.

With one board for each state, that leaves us with only 50 board of director groups to regulate in building construction. We can't expect that level of responsibility to fall on that small group of people. We have technology that can solve these problems (more on that later)

reported almost one million Professional Engineering licenses in 2021 with about $20 trillion in construction.

The number is staggering: each engineer represents something in the order of 20 million dollars of construction decisions.

Assuming we live in an ethically perfect world, this is still too much work for one person to manage directly. How can we reliably track this level of complexity in a way such that public safety is dramatically improved?

These protocols worked when the industry's technology was born onto paper and lived on writing until the completion of the project.

Our engineering design data now lives on a transistor state on some computer somewhere in the world and it's never coming back. We have to go find it.

Introduction

a construction industry blockchain for professional supervision.

The Authorship Dilemma

The growing gap between the physical and digital worlds exposes a growing existential threat to construction. Simply put: we can't prove who authored the documents, yet we use them to build high-rise buildings. Offices all over the world throughout the supply chain copy, forward, upload, and attach documents generally trusted as the true copy of the licensed professional's instructions.

We purchase, fabricate, ship, install, commission, inspect, and approve occupancy certificates for bridges, buildings, and roads with nothing more than a dose of trust. We trust that nothing was corrupted from the original instructions along the entire supply chain of decisions.

The Build3 Foundation blockchain solves the proof of authorship dilemma, and we need your help.

Who We Are

We are a member-governed research and development blockchain foundation.

​Our blockchain is designed to function as an authorship-proof layer for the construction industry. This can start as early as feasibility work and extends to the certificate of occupancy. Each certificate of occupancy issued to each building, including the initial build and all subsequent renovations will be tied to it.

These certificates persist as immutable records to serve the public for the life of the building. They offer assurance that the construction performed was done so under the direct supervision and control of a qualified professional. Ultimately, at the end of a building's lifetime, when demolished, the certificates serve as historical artifacts to the land itself.

Build3 Foundation Membership

Would you like to contribute? (no fees). Members may contribute as authors, editors, nominators, and developers. Members also retain voting rights in research and publications.

​You are also invited to if you want to get to know some members.

A Working Solution

And we need your help.

The build3.foundation has a working prototype of provable authorship engineering supervision. These prototypes show a proof of concept that we can secure the network.

Our position at build3.foundation is that ethics bind the industry to commit to research and participation since we can now secure the network.

How the Industry Can Help

We are not asking for building consulting engineers to become software engineers. There are tons of areas we need help with in terms of publication:

  • We would enjoy the chance to work together to collaborate on language for

    • Chapter 1, IBC permitting. This type of modification would help give guidance at the state level.

    • Section 116 (Certificate of Occupancy): with a secure network of proof of authorship, a C of O becomes a multi-signature transfer record.

    • For example, an inspector would prove from a cell phone that the document used for a permit does hash to the signature patterns of the engineer of record and plan reviewer. If it did not, they simply would not have the authorization to issue the certificate.

  • : We have ideas for the AIA master contract and master spec.

    • The professionals can use blockchain to manage submittal and shop drawing requirements. We can now prove that some specific party is the author of any particular document. This authorship proof applies to our licenses but also signatures in general during Construction Administration

  • more to come...

Blockchain makes it near impossible to make fraudulent engineering judgments with invalid credentials. More on that later. For now, look around at where we are in the documentation. This website serves as a living and breathing documentation of where we are now and where we plan to be.

We will soon release our source code, open-source, and welcome any feedback and new collaborators.

Thank you,

build3.foundation

There are still engineering boards -whose primary responsibility is to ensure technical competence in engineering - that still require physical applications mailed with paper checks.

Have you had to dig out your checkbook for a $75 transaction lately? If so, we're willing to guess it wasn't at a place you associate with engineering?

productivity train wreck
first Fundamental Canon in the code of ethics
Twitter, Square, Facebook, and Shopify
$1.6 trillion every month
NCEES
Become a member
chat with us out on discord
International Code Council:
American Institute for Architects

How Blockchain Protects Public Safety

Let's start with the National Society of Professional Engineers.

The National Society of Professional Engineers (NSPE) was established in 1934 to protect engineers and the public from unqualified engineering practitioners.

This process includes strict university accreditation requirements, years of full-time engineering training experience, and two or more examinations.

While not as rigorous as a surgeon's training, it is a long process that requires a minimum of eight years and often longer.

What's the Problem?

So now we have highly educated and experienced super nerds ready to show the world what they can do. So, what's the problem?

Let's talk about NSPE a bit more. From their website, the vision is

...a world where the public can be confident that engineering decisions affecting their lives are made by qualified and ethically accountable professionals.

We love this vision, and we agree. Being an engineer is more than showing off a pocket protector at parties! Every decision made impacts public safety quite often for 20 or more years! And so we agree: qualified and ethically accountable professionals are essential.

NSPE's Core Values

NSPE has a clear and targeted mission reinforced by its published . Those values are

  • Ethics and Accountability

  • Qualifications

  • Professional Advancement

  • Unity

Supply / Demand Is Listening

So while NSPE works to help secure the network, it increases the barrier of entry. The problem working against everyone else is: that sometimes it isn't all that hard to get money for a development loan (to the tune of $20T a year).

The unavoidable challenge: rigorous standards and regulations will invariably reduce supply in a regularly high-demand market.

This problem is compounded by the fact we are the are have proven a reluctance toward adopting technologies.

How can we resolve the supply and scalability problem? It is precisely that problem that increases the risk to public welfare even further. How can that enormous demand pushing keep building often, cheap, and fast, be cooled down in a way that meets the professionals where they need to be: concerned with the public welfare?

How can we design a system that will, given those conditions, exhibit transparency to those willing to turn an ethically questionable blind eye?

How can we prove if the seal hasn't been taken and used by someone else fraudulently? How do we ensure the practitioner's competence in making a judgment in a given field?

How it's Handled Now

Long story short: it's not.

Still, governing bodies treat violations as criminal acts. Let's take a look at a few examples:

Texas (1001.552)

§ 1001.552. CRIMINAL PENALTY. (a) A person commits an offense if the person: (1) engages in the practice of engineering without being licensed or exempted from the licensing requirement under this chapter; (2) violates this chapter with respect to the regulation of engineering; (3) presents or attempts to use as the person's own the engineering license or seal of another; or (4) gives false evidence of any kind to the board or a board member in obtaining an engineering license. (b) An offense under this section is a Class A misdemeanor

Indiana (IC 25-31-1-27)

IC 25-31-1-27 Practicing without license and other specific violations

Sec. 27. A person who:

(1) practices or offers to practice engineering without being registered or exempted under the laws of this state;

(2) presents as the person's own the certificate of registration or the seal of another;

(3) gives any false or forged evidence of any kind to the board or to any member of the board in obtaining a certificate of registration;

(4) impersonates any other registrant;

(5) uses an expired, suspended, or revoked certificate of registration; or

(6) otherwise violates this chapter;

Blockchain technology can prove the authorship of digital documents offering a form of digital DNA. This mechanism is helpful and essential in due process for the industry. Continuing to enforce these regulations without blockchain is nearly equivalent to a court dismissing the scientific relevance of DNA in criminal proceedings.

commits a Class B misdemeanor.

values
least efficient industry

Research Development

What's going on with those recently accepted publication requests? The PR# identifier is changed to the RD# identifier to identify the state of the initial request.

This is the active repository for recently accepted Publication Requests. Research Development is the active playground of the Authorship Team where you are encouraged to watch and engage with the authors about their research.

What you'll find here are the early ideas, sketches, notes, and slow formation of ideas articulating into formal research. The next stop after this phase is conversion to a final technical white paper format. All Research Development projects are subject to Build3 Membership voting approval.

Members are encouraged to comment and offer feedback as these projects develop. If you are not a formal author, you are still a member, and your contribution matters.

Runtime

Where the heart of the business logic lives.

There's so much ground to cover, but let's focus on runtime because that's where most of your time: how the runtime works and is constructed.

The runtime is built using FRAME Pallets as a plugin system. Between the Pallets and the Runtime crates, we have been able to create a working prototype of proof of supervision applicable to the construction industry.

Explore our work in progress use cases for build3 if you want a quick look at what is being proposed and how we plan to use the technology.

Other Important Crates

Once you have a conceptual understanding of runtime and the FRAME pallet system, there are three other important Crates that come with the subtrate_ framework.

📡frame_system🤝frame_support🤠frame_executive

frame_support

documentation pending...

work in progress..

Runtime Storage

Benchmark

Contains common runtime patterns in an isolated manner. Not meant for production blockchain, just for benchmarking and testing.

Benchmarking can help establish weight for transactions once you study the computational power required to complete them.

Prebuilt Pallets

These are some useful pallets that ship with susbrate_.

The substrate_ team is constantly releasing new pallets and upgrading the existing pallets. Each of them has their own function and are loosely coupled to provide isolated features for the FRAME systems.

Our list includes pallets we are currently using, planning to use, or are researching its use.

Imports

The most critical imports for every Pallet

📡frame_system

frame_system provides low-level types, storage, and functions for your blockchain.

🤝frame_support

frame_support is like a helper crate. It is a collection of macros, traits, and modules to simplify development of FRAME Pallets.

🤠frame_executive

The frame_executive acts as an orchestration layer for the runtime. It dispatches incoming extrinsic calls to the respective pallets in runtime.

Elections Phragmén

Off-chain Worker

Off-chain workers.

Inspired by this use case with additional reference materials.

An Off-chain worker can be used to process computationally complex transactions with larger bandwidth or data tansmission requirements.

An off-chain worker may be considered as a candidate that can download a large document from IPFS and perform a hash to verify the authenticity of the remote-hosted document.

GRANDPA

GRANDPA consensus by managing the GRANDPA authority set ready for the native code.

Transaction Payment

The basic logic to compute pre-dispatch transaction fees.

Connecting to Land

This is under development...light sketch placeholder.

Students document and inventory public land

Citizen Monitoring and Restoration

Environmental Monitoring (STEAM Project)

NOAA 3D Printed Weather Station

Wildlife Camera

Mite (Landslide, Lahar, Avalanche detection)

Hook

Democracy

Assets

Dealing with simple fungible assets.

Balances

frame_executive

documentation pending...

work in progress...

Treasury

Provides a "pot" of funds that can be managed by stakeholders in the system and a structure for making spending proposals from this pot.

Indices

Allocates indices for newly created accounts. An index is a short form of an address.

Contracts

Allows runtime to deploy and execute WASM smart-contracts.

This will allow the runtime to deploy and execute WASM smart contracts.

Scored Pool

Sudo

Identity

Federated naming system, allowing for multiple registrars to be added from a specified origin.

Federated naming system which allows multiple regisrars to be added from a specified origin.

Registrars can set a fee to provide an identify-verification service.

Anyone can put forth a proposed identity for a fixed deposit and ask for a review by any number of registrars (paying each of their fees).

Registrar judgments are given as an enum, allowing for sophisticated, multi-tier opinions.

Utility

Stateless module with helpers for dispatch management.

Runtime Configuration Trait

The configuration trait is a way for you to allow external pallets to define the element types being used on your internal pallet.

substrate_ is taking full advantage of the by implementing the Config object as a trait.

The best practice when building your pallet is to implement .

This will allow you to create all the functionality you want while leaving the concrete types a decision made at runtime.

The Configutation Trait is the way that substrate_ empowers the use of that extensible framework writing.

The Configuration Trait definition is a requirement for all .

frame_system

The system crate that defines the core types for runtimes.

frame_system

You'll see this everywhere and wonder why. WHY!? WHAT IS THIS!? The same is true for frame_support but over time they start making sense.

frame_system is the System crate that defines the core types for runtime such as Account ID, Header, Version, Hash, Origin, etc., as well as core

Notes about Substrate

Quick-start guide on substrate framework (before you dive in too far)

Summary

substrate_ is a Rust-based framework for building blockchains built on the foundation of research.

substrate_ was used to build the .

Storage

The block size limitations make storing large values a challenge. How do we deal with that?

The Blockchain Data Storage Problem

Storing boolean and integer values is easy. Decimals are a bit more challenging. And strings are extremely limited.

To make things a bit more constrained, ink! contracting language only allows a single low-level primitive, Mapping , for access to contract storage.

This means the front-end developers will have to continuously transform data for most RPC requests.

Atomic Swap

A way for someone to submit a claim to sent something to another party to accept the claim later.

This is traditionally used for token exchange but could be considered as a starting point to allowing someone to limit the length of time their work is up for review.

Perhaps the claim starts as being offered to a specific preferred reviewer, but then once expired, broadcasts to the network that the offer is now up for grab.

Extrinsics (Dispatchable Calls)

These are the public endpoints you are giving to users to interact with the blockchain.

Dispatchable calls are the public endpoints you expose for users so they can interact with your blockchain.

Dispatchable calls must be included on every .

Offences

Tracks offenses against specific origins.

Configuration Trait

Event

IdentificationTuple - Full ID of the validator

OnOffenceHandler - A handler called for every offense report.

RD2 | Labor-Based Based Voting Authority

A new approached to tokenized voting to mitigate the influence of capital on network decisions.

Due Date:

Authorship Team:

Author // Phillip Brock

RD6 | Configuring a DAO as a Legal 503(c)

Due Date:

Authorship Team:

Author // Phillip Brock [accepted]

PermitZIP: Two-Week Project

A use case example for the PermitZIP Two-Week Project workflow.

Introduction

offers a solution to the engineering world for a small project which is to provide a two-week turnaround. There are strict rules to follow for that to work on all fronts; one that often catches PermitZIP off guard is allowing a project to kick off before it should.

In practice, the substrate primitives do not normally exceed 32 bytes for reasons outside of cryptographic security. The H12 Struct allows for up to 64 bytes. This paragraph is larger than 64 bytes.

Off-Chain Workers

Substrate has pallet which off-chain computational efforts to occur. This is great because more complicated work should be taken offline, or all nodes would have to perform the same computations causing a massive bandwidth problem.

The substrate_ off-chain worker subsystem allows for tasks that are data and computationally intensive to be performed without slowing down the block production.

This allows for an asynchronous element of producing blocks to exist where a node will go off-chain, produce their results, and report back with the cryptographic results representing the results.

Check out this Off-chain Worker Callback Example

This does not solve the storage problem. After all, the final result is just a hash of the final data, not the data itself. The data can be stored in a database, but that comes at the cost of trusting someone to maintain a central database.

There are likely many private companies that would append the blockchain by offering these services, but how can we find a way to persist the data for a longer period of time?

  • This multifront-end developer will have to continually transform data for most RPC requests

IPFS

IPFS is a peer-to-peer data storage system that helps to solve the large format, immutable and persistent storage dilemma presented by traditional blockchain.

Luckily, the IPFS development team has already worked to start solving this problem and they have constructed an off-chain worker manual.

More on this later.

Storage

Reports - a StorageMap which stores the report ID can the offense detail for all offense reports.

ConcurrentReportsIndex - A vector of reports of the same kind that happened at the same time slot.

ReportsByKindIndex - Enumerates all reports of a kind along with the time they happened.

[acceptance]

Editor // Kenneth Shultz, PE [accepted]

Abstract

Blockchain enthusiasts usually tout the benefits of decentralization. Unfortunately, many of the features baked into the technology ultimately lead to a re-centralization in myriad ways. A small central group of miner farms generally controls all rewards on the bitcoin network. When it comes to voting mechanisms, most involve the spending of coins, which makes voter authority directly proportional to their access to funds.

A proposed solution to this problem involves removing or reducing the possibility of exponential relationships from voting power. Non-transferrable voting tokens are issues based on a user's contribution to the network. You earn voting tokens as you review, submit, or otherwise interact with the system. These tokens are non-transferrable, would be burned when used for voting, and may expire after some time. This paper will explore these ideas and propose technical standards for developers to implement as a pallet on the chain. This voting token introduces a new token that is not nonfungible (NFT) nor technically wholly fungible.

Click here to view this project's documentation progress

Editor // Kenneth Shultz, PE [accepted]

Abstract

This paper will explore traditional bylaw language for registered 503(c) organizations and work to integrate them with on-chain governance. The board of directors will vote to approve or reject the newly proposed bylaws. If approved, The Build3 Foundation will submit the bylaws to the State Corporation Commission, included in the final product of this publication, and formally instantiate them on-chain through the substrate pallet configuration.

Construct the paper-contract language such that blockchain governance authorizes all future bylaw changes. Consider conditions for catastrophic network failure. For example, members, a committee, or a board of directors may adopt new bylaws through traditional means. After network recovery, Build3 Foundation must register any off-chain measures adopted to the blockchain.

The purpose is to finalize the Build3 Bylaws and publish findings for future organizations to use in consultation with their legal representation.

Related Research

  • (UN)CORPORATE CRYPTO-GOVERNANCE

  • Smart Legal Contracts: Advice to Governments

extensibility features of Rust
Generic Types
pallets
using substrate_ as a framework creates interoperability with the Polkadot network but does not require integration with the Polkadot network. The framework can be used to build independent blockchain applications, including private blockchains.

Using substrate_ requires knowledge of the Rust programming language, especially the idea of generic types and trait bounding .

Acknowledgments

This work is heavily borrowed from Josh Orndorff's Substrate Recipes Cookbook for Aspiring Blockchain Chefs which is accompanied by a comprehensive repository of examples.

This information is also taken from the runtime development overview from the substrate docs.

web3 foundation
Polkadot network
Docs
pallet
Standard of Care Game

The biggest missing link is the sales team's knowledge of the required technical information to kick off into design. How do they know if the product data for the restaurant is to standard? How do they know if the architectural record documents have enough information for engineering judgment?

The same standard of care approach from the Proof of Supervision with Blockchain case is proposed. With the help of the sales team, a client follows the standard of care to prepare for kickoff.

This documentation, for example, includes:

  • Completed Survey

  • Cut sheets for special equipment

  • Architectural PDF (of the actual building)

  • Special equipment layout

  • DWG or Revit files

  • Signed proposal

  • Special project-related specifications (franchises, etc)

They sign each transaction when they submit the required records. These records are reviewed by the sales team and authorized for final approval by the engineering production managers.

When all conditions are met, the two-week process begins and is documented on the blockchain smart contract.

PermitZIP

RD3 | Authorship, not Ownership: Re-understanding and NFT

Authorship Team:

Lead Author // Kenneth Shultz, PE [accepted]

Author // Bradley Edward Layton, PhD PE [pending acceptance]

Editor // Ed Leite [nominated]

Abstract

A common problem articulated for NFTs is that they do nothing to assure ownership. Anyone can claim any digital asset and mint it as an NFT. This research aims to demonstrate the wholly overlooked use for an NFT: authorship.

Example: Shop Drawing Submittal Review

Equipment manufacturers typically author these drawings. If necessary, the trade contractor then marks up the submittal to prepare the document for review. The licensed designer of record then authors their judgment against the submission and sends it back as either approved or denied (resubmission required). At no point in this chain was ownership relevant to the reason for this communication chain.

That process exists to verify compliance with the construction documents. Compliance with construction documents represents compliance with the highly regulated architectural and engineering design process. The highly regulated design process is in place to ensure compliance with the code, and the code's fundamental purpose is to protect public safety and welfare.

Ownership of these documents is entirely irrelevant within this context. Nothing is more important than proof of authorship and compliance with previously authored construction records.

And so we ask ourselves, what is the name for proof of authorship on a blockchain? These authorship proofs belong to a contract. They are nonfungible in that no two authorship proofs can be considered equal. Unlike artwork or music, an authorship-based supervision compliance supply chain is strictly nontransferrable. The signed documents bind to the construction contract immutably, and the construction contract binds in perpetuity to the property.

Society

Vesting

Provides a means for placing a linear curve on an account's locked balance. T

his module ensures that there is a lock in place preventing the balance to drop below the unvested amount for any reason other than trsnaction fee payment.

Multisig

Doing multi-signature dispatches.

Recovery

Allows users to gain access to their accounts if the private key or other authentication mechanism is lost.

The recovery pallet is an M-of-N social recovery tool for users to gain access to their accounts if authentication is lost.

A user is able to make calls on behalf of another account whcih they have recovered.

The recovery process is protected by trusted "friends" whom the original account owner chooses.

A threshold (M) out of N friends are needed to give another account access to the recoverable.

Timestamp

Get and set the on-chain time.

Get and set the on-chain time.

Proxy

Allows accounts to give permission to other accounts to dispatch types of calls from their signed origin.

A pallet that allows accounts to give permission to other accounts to dispatch types of calls from their signed origin.

The accounts to which permission is delegated may be required to announce the action that they wish to execute some duration prior to execution happens. In this case, the target account may reject the announcement and in doing so, veto the execution.

Scheduler

such as Block Hash, Block Number,
, etc.

Luckily, substrate_ makes it easy by including the pallet_prelude in both crates. Use this with the wildcard * and move on. You'll come back to it and it'll make more sense.

frame_support

#[frame_support::pallet]
pub mod pallet {
    use frame_support::pallet_prelude::*;
    use frame_system::pallet_prelude::*;
    // other pallet dependencies...
storage items
Events

Important Links

Where to find more information about build3 foundation and how each domain is used.

When applicable, each heading is a link to take you to the additional knowledgebase resource.

membership: build3.foundation

This is the foundation landing page and the place where members can officially join the foundation. This page hosts forums, blogs, membership, and events.

The web page also serves as the main first-time-viewer landing page. A one-pager intended to articulate the mission succinctly.

documentation:

The knowledgebase.

This is an evolving knowledge base of our active work, ideas, and other plans. We use gitbook because it offers developer documentation tools in a super simple way for non-developers to contribute thoughts and ideas.

This is where a lot of preliminary ideas for governance, game theory, use-case applications, technical specifications, tutorials, and other information about the network will be published.

As the ideas grow more and more stable, they would then be converted into the formal white paper documentation for the website or as a stable release for production.

This is where the ideas start to organize and develop into the formal and final technical specifications.

Contributing is easy - just and ask how you can get involved!

governance: build3.dao

Front end for build3 governance. There is no development on this yet, but eventually will be a React-based front-end application rendering the governance features of the build3 foundation.

All our governance work is backend only. If you want to get involved with the front end,

block explorer: build3.x

Front end for build3 transactions. No development here, but the front-end would render whatever features the particular user needs to interact with the blockchain.

All our transactions are backend only. If you want to get involved with the front end,

funding with services:

This just forwards to right now.

The idea behind this domain is to provide a road map for future funding of continued research in areas of blockchain for the industry.

The .com domain would be the home of paid features similar to the relationship between and or MongoDB vs MongoDB's Atlas service.

community:

The home of day-to-day communications about active research projects to spare the inbox.

source code:

Build3 repositories are on GitHub. We haven't made everything public yet - stay tuned!

external:

Architecture Overview

What we're using and ways we're using it.

The framework selected should be secure, permanent, immutable, fast, extensible, modular, and interoperable.

Secure: Rust

The core should be developed in a trusted, secure programming language, called ().

Fast, Extensible, Modular: substrate_

Using substrate_ allows us to quickly build radically new implementations of long-trusted standards and protocols. substrate_ is an out-of-the-box blockchain building framework.

Also:

Interoperable: Polkadot

Polkadot is a new blockchain network that turns blockchain into a multi-threaded multi-core processor.

Key strengths in the Polkadot network:

  • Building with substrate_ also allows the opportunity to share network security with the in the form of a parachain or parathread.

  • Polkadot itself was built with substrate_.

  • Both Polkadot

Polkadot (and similar substrate_ based blockchains) will make it easy for users and developers to interact with with different services on different chains such as

  • insurance providers

  • deed of trust record keepers

Don't want to be on Polkadot? Not a problem.

Any application built with substrate_ can easily be configured to operate completely independently from the Polkadot.Network.

Permanent and Immutable: IPFS

this proposed standard is still undergoing research but serves as an example of the kind of need and the kind of solution.

IPFS is a peer-to-peer hypermedia protocol intended to serve as a functionally immutable permanent record.

IPFS (or a similar protocol) would

  • allow "proof" that a document was the formal record document and

  • that it was signed by a verifiable authority of record.

Record of Work

A record of signed and verified work transactions.

Qualitative Productivity as a Quantitive Measure

The quality and throughput have never been reliably measured. It works for specific talents and personality types.

What we are talking about is a more true and revealing method of calculating what someone has contributed to their work. This allows for traditionally ignored traits of a worker can be made visible to the network.

The same protocols implemented in the engineering supervision use case also provide a more general-purpose proof of work for all players in the network. Any kind of work can be documented with this protocol.

The Players

There are three humans in this interaction.

  • Worker - The person that performs to the standard of care.

  • Reviewer - The person that reviews the work against the standard of care.

  • Authenticity Validator - The person that affirms both parties acted with good faith.

Staking (Gamifying Quality Control)

Rewards a Function of n Reviews

The review checks the work against the claimed standard of care. If approved on

  • Passes First Review: 10 tokens awarded to the worker

  • Second Review: 2 tokens awarded to the worker

  • Third Review: The total stake is lost and split between the network and burned

  • Reviewer is paid 1 token per review

ink! Smart Contracts

The smart contract language and development tools for substrate_ frameworks.

What is ink!?

It's Solidity, but without the chains. Users can build smart contracts to deploy onto your blockchain, but they are also able to be deployed to other networks.

Let's start with a review of the pre-built available by Parity. We'll offer some ideas of how to implement these into the Build3 blockchain to help provide context.

Collective

A set of account IDs to make collective feelings known through dispatched calls from specialized origins.

The Collective pallet can be used to generate an instance that represents some group of users with the ability to propose ideas, motion and vote on those proposed ideas.

Configuration Trait

  • Origin

RD1 | Build3 Roadmap for Blockchain-Based Construction Supervision

Due Date:

Authorship Team:

Author // Omer Bozok [accepted]

Use Cases

What can Build3 do for construction? Let's go over a few use-cases.

What to Expect

This section is dedicated to proposed use-cases with reference to a technical pallet implementation from the framework.

Some are living in the source code, some are only conceptual. Each idea will vary in its development and is expected to grow in depth as contributors work through them.

Membership

Allows control of membership of a set of AccountId's. Useful for managing membership of a collective.

This allows control of membership of a set of AccountId's.

This pallet stores

  • the list of members

  • the prime member (master admin account for the membership)

Proposal

  • Event

  • MotionDuration

  • MaxProposals

  • MaxMembers

  • DefaultVote

  • WeightInfo

  • Storage

    • Proposals

    • ProposalOf

    • Voting

    • ProposalCount

    • Members

    • Prime

    Editor // Kenneth Shultz [accpeted]

    Abstract

    This publication will discuss the roadmap for implementing a public utility supervision blockchain. This research would discover the complete road map logically from easiest to most difficult to implement. An example features road map may look like this (or some variation):

    1. Professional Licensure Authorship: Cryptographic Signatures representing Architectural and Engineering Seals. This functions as the start of the identity network (proof of licensee).

    2. Construction Submittals: Cryptographically signed by the issuer and signed by the reviewer(s)

    3. Permitting: Permits signed on-chain by the submitting parties and signed by the approving authority having jurisdiction.

      1. Note: topic also may include thoughts about the International Building Code, Chapter 1, or other written codes that address permitting requirements. Nothing technically changes about permit applications and approval other than adding the blockchain's underlying storage and authorship mechanism.

    4. Inspections & Occupancy Certificates: Similar to permitting, but for proof of the inspection authority.

    5. Operations and Maintenance: This concept is starting to look much longer into the future but is worth thought and documentation. Is O&M a standalone network interoperable through a Polkadot (or Polkadot-like) parachain? How does O&M tie to the original record of construction supervision, permitting, and occupancy approval?

    6. Property Identity: The contributions from the build3 network related to proof of supervision would be identity markers about a specific property. Each renovation from start to end of a building would contain evidence of the supervision process that helped to secure the safety of the building itself.

      1. This newly found record of building history may tie into COBie reports and digital twin applications.

      2. The incremental move into this phase of adoption would introduce conversations about insurance and lending, two major parties in the industry which rely heavily on underwriting risk.

    7. GIS Maps: Proof of supervision of land survey work tied directly to the public GIS map systems. This use case is quite an abstraction from our original use case of professional supervision. GIS Maps is included as an example to help stretch out as far as we can reach for our purpose of identifying code compliance at the start of a building lifecycle and how that can extend throughout until the end of life. The objective is to postulate the demolition of an ideally chain-documented building. The land remains, but the evidence of the building is gone or nearly gone; however, the blockchain persists as a historical artifact.

    The Traditional Legal Road

    One way to approach the road map is to consider how this could be adopted from a Statewide board perspective. This would require collaboration with the NSPE, AIA, ICC, and others that which have an existing respected relationship with regulatory bodies.

    Ok - let's move this faster.

    PermitZIP being a bleeding-edge adopter, will provide much-needed test base information to help teach people how this works. There must be other organizations that would also be willing. An effort could be made to get 10 organizations with approximately 25 employees each also to volunteer to participate.

    Related Research

    • Adoption of Blockchain Technology through Digital Twins in the Construction Industry 4.0: A PESTELS Approach

    • Blockchain Technology: Implications and Opportunities For Professional Engineers

      • This NSPE paper points out the connection between a blockchain and risk calculus, specifically how that relates to insurance.

    Events are emitted when members are
    • added

    • removed

    • swapped

    • reset

    • changed

    Users of authorized origin can

    • add members

    • remove members

    • swap members

    • reset members not sure what this is yet

    • change key (user can change they key associated with membership to a different address)

    • set prime (assign the prime member, must be by current member)

    • clear prime (remove the prime member, can only be released by prime member)

    build3.network
    build3.foundation
    GitHub
    join the discord
    let us know!
    let us know!
    build3.com
    build3.foundation
    wordpress.org
    wordpress.com
    Discord
    GitHub
    list of research papers

    The Authenticity Validator must affirm the authenticity of the transaction. If they reject the transaction, all parties lose rewards and stake.

    🍶Staking
    Ready-to-Ship Examples

    Delegator

    The delegator smart contract is the showcase for executing other smart contracts on-chain.

    It includes in total 4 different smart contracts

    • Delegator (root): Delegates calls either to the Adder or Subber smart contract

    • Adder: Increases a value in the Accumulator smart contract

    • Subber: Decreases a value in the Accumulator smart contract

    • Accumulator: Owns a simple i32 value that can be incremented or decremented

    Ideas

    • An architect can be delegated the authority to submit product data for review on behalf of a trade contractor.

    DNS Registration

    Replace complicated, hard to remember addresses with simple domain names like kenny.build3

    Note that all values are stored as hex and so a string must be converted to hex prior to registration.

    The front end allows the user input kenny.b3 but the storage is set at 0x6b656e6e792e6233000000000000000 and assigned to the origin of the requester.

    Multisignature Authorization

    One origin with multiple signatories. The number of those parties signing can be configured and changed for each contract. This can represent many things such as

    • submittal approvals (trade contractor, general contractor, engineer, architect)

    • general authorizations of work (hiring and working parties)

    • certificates of occupancy (inspector, plan reviewer, engineer of record)

    examples
    How to Contribute Your Ideas

    Have more ideas? Join our Discord to ask about joining the team!

    Legend

    You will see the note blocks as you read through the use cases. They each represent the level of development of the idea into the source code. They are defined as:

    Stable Deployment.

    Working in Development.

    Theory-based Idea. This means it can be implemented but hasn't made it into the production pipeline yet.

    Abstract Idea: Requires high levels of customization or implementation method is unknown.

    Alright, let's dive in...

    substrate
    substrate_ is written in rust.
  • substrate_ compiles to WASM for highly portable runtimes. (the language of all modern web browsers).

  • and
    substrate_
    we made open source through the work of the world-renowned
    .
  • Polkadot will host multiple blockchains serving multiple purposes increasing the interoperability of web3 applications.

  • legal services

  • underwriting, etc.

  • Rust
    check our quick-start guide
    Polkadot.Network
    web3.foundation

    Publication Pipeline

    How to publish with Build3 and the current state of active publications.

    Publication Instructions

    How do I Join an Authorship Team?

    If you would like to join an Authorship Team (or submit a topic to request an Authorship Team), please (there are no fees), then join our . Once you are on the Discord server, we'll walk you through the process and get to work!

    What is an Authorship Team?

    An authorship team must contain a minimum of one author and one editor. There may be multiples of either or multiples of both.

    Authorship Team

    A team nominated and accepted to conduct research for a submitted by a Build3 Member. The Authorship Team must have a minimum of one and one .

    Author

    The authors are for producing the copy and all supporting documents, sources, images, and graphs. The author is responsible for delivering the research on time to ensure timely delivery of weekly updates to this website, a timely steady-state declaration, and on-time delivery of the final product submitted for approval to the network.

    Lead Author

    If multiple authors are nominated, one must be titled the Lead Researcher, acting as the project manager. The Lead is ultimately responsible for all duties listed above. The Lead Research received credit for this role in the publication.

    Editor

    The editor is responsible for quality assurance. The editor reads each iteration of thought, looking for logical fallacies, technical inaccuracies, grammar or spelling issues, confirmation bias, relevance to build3 scope, and other elements to ensure a minimum standard of care for the publication.

    The editor is responsible for merging all pull requests from the Author during the Research Development phase.

    Publication Request

    A Build3 Member-nominated request for publication. If accepted, Build3 lists this topic to the build3.network to help assemble an Authorship Team. Publication requests each have a unique identifier and are numbered in the order they are listed to the network (eg PR1, PR2, etc).

    The Publication Process

    The path toward publication will move along according to this cycle:

    Step 1. Publication Request

    A member submits publication requests for consideration into the curated list hosted on this page. Build3 adds approved publication requests to the next available nomination timeslot (each one week in length)

    Step 2. Author and Editor Nomination

    Build3 Members nominate authors and editors for each publication; self-nomination is permitted (this may change). The foundation lists the publication request for one week, removing it after one week if no author is nominated and accepted. If there are no new publication requests in the queue at the end of the nomination slot, Build3 Members may vote on a previously unsuccessful publication request.

    Step 3. Maximum Topics Listed Per Nomination Cycle

    Build3 limits the total publication requests to a maximum of 10 for each nomination slot.

    Step 4. Research Development

    The Build3 Foundation moves all successful proposals to the Active Research page, where the Authorship Team begins Research Development.

    1. The Authorship Team must update their progress weekly so that Build3 Members may review and comment.

    2. The authorship team is under no obligation to integrate the comments from the community.

    3. For the benefit of context for observing Members, the authorship team will respond to all rejected comments with their reasoning.

    Step 5. Steady-State

    The Authorship Team must declare their work in a Steady-State two or more weeks before the final submission deadline. The Authorship Team will not submit additional significant changes or conclusions for projects announced in Steady-State.

    Step 6. Finalizing the Publication

    The research team uses the time between steady-state and the deadline to formalize their findings in a technical white paper. The Authorship team submits its work on the pre-determined deadline.

    1. Pre-Final Vote: Build3 Members vote to approve or reject the pre-final draft. Approvals and rejection votes may include notes to authors. Authors are under no obligation to address or reply to comments. The Authorship Team determines what changes to incorporate and submits any revisions for the final vote.

      1. Build3 members may nominate dissenting opinions to be included in the addendum of the final publication. Build3 members then vote on the inclusion of those nominated opinions.

      2. When the Authorship Team sponsors a dissenting opinion, it is automatically added to the addendum.

    Runtime Events

    How to tell someone using your blockchain something happened.

    Users of the application need feedback about what happened when they clicked something or interacted on your chain through a public endpoint you've given them.

    Transactions can fail for any number of reasons, so your users need to know and that is handled through and Event. Confirmations are similar: tell your user it went okay with an Event.

    Right, so my pallet should be able to emit Events?

    Yep, pretty much without exception. Here's how:

    In the Pallet

    type Event

    Add Event type to the `Config:

    decl_module!

    And now add the decl_module! ("declare_module") macro to give access to the deposit_event() method.

    Reminder: the decl_module! macro is the same we used for creating Dispatchable Calls for a Pallet.

    decl_event!

    decl_event! ("declare event") macro is the way Rust implements an event

    We are showing generic types in these examples. The syntax for generic events requires the where.

    In the Runtime

    We've defined a trait in the Pallet for Config and so now it has to be implemented at runtime.

    In your runtime lib.rs file, add

    The code above is simply specifying the type for Event . Note the <T> is not shown and that is because we are defining the concrete type to be implemented by the Pallet we're configuring.

    Add the events to the runtime build macro construct_runtime! by adding:

    Publication Requests

    A list of research topics and how to contribute as an author or editor.

    Overview

    This page serves to curate the list of research requests and describe the publication workflows. Each item in the list of publication requests is temporarily open to the public for the nomination of Authorship Teams.

    To get started

    1. Join the as a member (no fees) to participate in authorship or nomination. Only members are authorized to nominate or become and for teams. Members may also submit more topics for consideration.

    2. Join the to get in touch with existing members.

    This page may be updated occasionally based on community input.

    And without further adieu, let's look at the topics open for authorship nomination:

    Publication Request List

    Publications that do not receive an and nomination are subject to expiry. New proposals will replace expired submissions.

    If there are ten or fewer PR's listed below, that means Members can submit publication requests. Reach out on Discord if you have topics for research if the queue is open for ideas!

    PR5 | Blockchain Makes Everything Worse for Everyone in Every Industry

    Authorship Team:

    Author // Ed Leite [awaiting acceptance]

    Editor // Kenneth Shultz [accepted]

    PR5 | Click to Expand | Submitted 12 April 2022

    Abstract

    This research aims to dig deeply into those advocating strongly against blockchain technology and web3 in general for ethical, economic, social, or other notable concerns. Relentlessly exploring dissenting opinions is vital to the rigor of the research and will shake loose existential threats overlooked due to confirmation bias. With those threats identified, Build3 can work to resolve or mitigate them within the protocol.

    Development

    An overview of building and configuring smart contracts with build3 foundation blockchain.

    Getting Setup

    The build3 framework is built using the contracts pallet and is compatible with the contract language .

    Install the most recent working build.

    Consensus

    Notes about the chain spec, and launching nodes..

    Separating Block Production and Finality

    The build3 chain adopts the concept of separating block production and block finality.

    The hash function used in this blockchain currently follows the BLAKE2 secure hashing function.

    Staking

    Used to manage funds as stake by network maintainers.

    Overview

    Manage funds at stake by network maintainers.

    This allows a user to voluntarily place funds under deposit. These funds are rewarded under normal operation but are slashed should the staked maintainer be found not to be discharging duties properly.

    Revised-Final Vote: The Build3 Members vote on the revised final; comments are optional.

    1. If approved, the Authorship Team may not modify the approved document.

    2. If not approved, Build3 Members may not vote again for the submission.

    3. A Build3 Member must submit the topic again as a research request and repeat the process to produce another voting round.

    become a member
    Discord server
    Publication Request
    author
    editor
    Pre-alpha release not ready. After all minimum features have been implemented, it will be posted. Stay tuned!

    Install the ink! CLI to aid in developing smart contracts.

    Develop

    Creating

    1. Ensure the ink! CLI is installed!

    2. Do not create contract projects in the node directory

    Navigate to a new directory outside of the node source code. This directory would ideally be dedicated to developing and compiling contracts.

    Create new a contract using:

    WARNING! The contract CLI tool may not build with the same parity scale index configuration. The Cargo.toml file will have to be updated to match the parity-scale-codec version and scale-info version from the installed node.

    The out of the box TOML file is confi

    Testing

    Testing contracts in the off-chain environment provided by ink! is easy with:

    Building

    To build (compile your contract to WASM), navigate to the contract directory and run:

    Reading

    metadata.json is distributed with each build and has information about

    • types - data types used

    • storage - storage values within the contract and how to access them

    • spec - information about callable functions

    Deploy

    Start the Node

    Navigate to the node directory where a working release is installed.

    Start the node in dev mode using:

    Use substrate_ Hosted UI

    Go to the substrate UI with your running local blockchain and follow the instructions to deploy the contract code.

    ink!
    Aura: Proof of Authority

    Aura (Authority Round) authors a block based on proof of authority protocol from substrate_'s aura pallet which also extends the consensus by allowing offline reporting.

    In Aura, each block is authored in a series of discrete steps of a given constant duration:

    The leader of each step is the only step permitted to issue the single block and is determined by calculating the remainder of the quotient between the step number and number of authors.

    The leader chooses the longest chain seen so far and authors a new block to it.

    This consensus mechanism follows the fork choice rules of GRANDPA finality.

    Proof of Authority networks are permissioned not public and only strictly defined authority nodes are allowed to seal blocks.

    Who Can Author Block for Build3?

    The authorship rights are granted to Build3 researchers in accordance with their commitment to research of the technology for the industry. The security is introduced through the idea that attacking a network you worked to build would do harm to your efforts to contribute to the technology.

    A layer of governance may be included to add a delegated proof of stake similar to the Polkadot network.

    GRANDPA: Finality Gadget

    The blockchain implements the GRANDPA (GHOST-based Recursive Ancestor Deriving Prefix Agreement) finality gadget discussed in the GRANDPA paper on deterministic finality.

    The GRANDPA gadget imports blocks produced from the Aura consensus production to determine the final state of the block production deterministically.

    With GRANDPA finality, the validators vote on the chains instead of the blocks. The chain with the highest block number and enough votes is considered to be final, finalizing several blocks in one round.

    The GRANDPA Round

    Primary Node Proposes Block

    A new round starts when the primary node broadcasts blocks they estimate might have been finalized within a specific chain from the previous round.

    Nodes Pre-Vote

    After a pre-determined time from the broadcast, validators broadcast a pre-vote. The validators cast a prevote for the head of the best chain containing the broadcasted blocks.

    If the primary node broadcasts a new finalized block that is at or before (or is) the header of the broadcasted chain but is after all estimated finalized blocks, then the nodes use the best chain containing that newly finalized block instead.

    Nodes Pre-Commit

    The pre-commit occurs after a fixed time when a supermajority is possible for any complete-able round. When a node observes a chain with the header block from the broadcasted chain any time later than all the estimated finalized blocks, it broadcasts a pre-commit.

    When a block header receives a pre-commit that extends the existing chain and contains a supermajority then it is finalized and becomes the new header.

    Running, Configuring, and Developing Nodes

    The CLI that ships with the installation is configured with chain specifications:

    • Development - A single validator network where the node that starts is a validator. This is convenient for a quick test of a new local feature because it starts producing blocks immediately.

    • LocalTestNet - A dual validator network that adds bob as a validator so producing blocks takes a bit more configuration. This setup is convenient for a test net to simulate a more accurate environment.

    Configuring Nodes

    Great documentation at the end of this tutorial, but the summary is:

    • Use a password to generate an Sr25519 Key for Producing Blocks Using aura

    • Use the secret phrase from the previous aura account to generate Ed25519 key for finalizing blocks using grandpa.

    • Polkadot's technical reasoning for these keys.

    • Export the spec to json format on CLI

    • Edit json to add the keys created earlier or to make further customizations.

    • Convert json to raw format.

    • purge old chain data if needed with

    • Fire up the nodes...

    This will start the validator, but it is not authorized to mine blocks yet. Add the aura and grandpa keys to authenticate the validation.

    StepNumber=UnixTimeDurationStepNumber=\frac{UnixTime}{Duration}StepNumber=DurationUnixTime​
    Leader=StepNumber(modN)Leader=StepNumber\pmod{N}Leader=StepNumber(modN)
    Validating

    A validator is responsible for validating the block. In this scenario, the block is the contributing work entry being claimed.

    Validators are chosen on rotation based on regular elections in each era.

    Nomination

    A nominator votes on a set of `validators to be elected. Once interest in nomination is stated by an account, it takes effect at the net election round. The funds in the nominator's stash account indicate the weight of its vote. The rewards and punishment that a validator earns are shared between the validator and its nominators.

    Since nominators and validators share punishment and rewards it incentivizes the nominator to NOT vote for misbehaving/offline validators as much as possible, simply because the nominators will also lose funds if they vote poorly.

    An account can become a nominator via the nominate call.

    Voting

    Actual validators are chosen from among all potential validators via election by the potential validators and nominators. The term voters is used to represent the union of potential validators and nominators all of whom participate in the election process.

    The current election algorithm is implemented based on Phragmén.

    The election algorithm's first priority is to elect validators with the most stake value and votes.

    Then it tries to divide the nominator votes among candidates in an equal manner.

    Optional post-processing can be applied to iteratively normalize the nominator staked values until the total difference among voters of a particular nominator is less than a threshold.

    Rewards and Slash

    The Pallet is attempting to embrace valid behavior while punishing any misbehavior or lack of availability.

    Rewards must be claimed for each era before it gets too old by $HISTORY_DEPTH using the payout_stakers call.

    Slash

    Slashing can occur at any point in time, once misbehavior is reported. Once slashing is determined, a value is deducted from the balance of the validator and all nominators who voted for this validator.

    The logic for slashing is further described in the slashing pallet documentation.

    Reward

    Validators and nominators are rewarded at the end of each era. The total reward is calculated using era duration and staking rate.

    t is $HISTORY_DEPTH

    points_{era(t)} are the reward points received by the team during an era

    $_{stakedn, stakedv} is the total validator and nominator stake

    $_{supply} is the total supply of the currency

    The total reward is split among validators and their nominators depending on the number of points received during the era.

    Reward points are issued to validators.

    • 20 points to the block producer for producing a (non-uncle) block in the delay chain,

    • 2 points to the block producer for each reference to a previous unreferenced uncle, and

    • 1 point to the producer of each referenced uncle block

    The validator and its nominator split their reward as follows:

    The validator sets commission which is paid to the validator only. The commission =is deducted from the total reward paid to validator and its nominators and the remainder is split among validator and all of the nominators proportional to the value staked behind the validator.

    Chilling

    Any role above can choose to step back temporarily and just chill for a while.

    points_{era(t)}+ \frac{$_{staked_n,staked_v}}{$_{supply}}=reward_{n,v}n
    // Note: this is the pallet-required `Configuration Trait`
    pub trait Config: frame_system::Config {
        
        // copy the line below exactly as shown into the `Config` section
        // of your `Pallet`. You'll eventually be able to interpret that
        // if you don't lnow. Just keep truckin'.
        type Event: From<Event> + Into<<Self as frame_system::Config>::Event>;
    
    }
    decl_module! {
    pub struct Module<T: Config> for enum Call where origin: T::Origin {
    
        // This line is new
        fn deposit_event() = default;
    
        // More dispatchable calls that you compose woud go here
        }
    }
    decl_event!(
        pub enum Event<T> where AccountId = <T as frame_system::Config>::AccountId {
            EmitInput(AccountId, u32),
        }
    );
    ./runtime/src/lib.rs
    impl simple_event::Config for Runtime {
        type Event = Event;
    }
    construct_runtime!(
        pub enum Runtime where
            Block = Block,
            NodeBlock = opaque::Block,
            UncheckedExtrinsic = UncheckedExtrinsic
        {
            // --snip--
            YourEventName: your_pallet_name,
        }
    );
    cargo contract new my_new_contract
    [package]
    name = "flipper"
    version = "0.1.0"
    authors = ["[your_name] <[your_email]>"]
    edition = "2021"
    rust-version = "1.56.1"
    
    [dependencies]
    ink_primitives = { version = "3.0.0-rc8", default-features = false }
    ink_metadata = { version = "3.0.0-rc8", default-features = false, features = ["derive"], optional = true }
    ink_env = { version = "3.0.0-rc8", default-features = false }
    ink_storage = { version = "3.0.0-rc8", default-features = false }
    ink_lang = { version = "3.0.0-rc8", default-features = false }
    
    # MAKE SURE THIS CODEC INFORMATION MATCHES THE BUILD. OUT OF THE BOX CLI IS 
    # CONFIGURED TO 2.1 WHICH CAUSES ERRORS!
    scale = { package = "parity-scale-codec", version = "3.0.0", default-features = false, features = ["derive"] }
    scale-info = { version = "2.0", default-features = false, features = ["derive"] }
    
    [lib]
    name = "flipper"
    path = "lib.rs"
    crate-type = [
    	# Used for normal contract Wasm blobs.
    	"cdylib",
    ]
    
    [features]
    default = ["std"]
    std = [
        "ink_metadata/std",
        "ink_env/std",
        "ink_storage/std",
        "ink_primitives/std",
        "scale/std",
        "scale-info/std",
    ]
    ink-as-dependency = []
    
    cargo +nightly test
    cargo +nightly contract build
    target/release/substrate-contracts-node --dev
    ./target/release/your-node-name build-spec --disable-default-bootnode --chain local > customSpec.json
    ./target/release/your-node-name build-spec --chain=customSpec.json --raw --disable-default-bootnode > customSpecRaw.json
    ./target/release/your-node-name purge-chain --base-path /tmp/node01 --chain local -y
    ./target/release/substrate-contracts-node \
    --base-path /tmp/blockchoy_1 \
    --chain ./customSpecRaw.json \
    --port 30333 \
    --ws-port 9945 \
    --rpc-port 9933 \
    --telemetry-url "wss://telemetry.polkadot.io/submit/ 0" \
    --validator \
    --rpc-methods Unsafe \
    --name BlockChoy_1
    Related Research
    • Line Goes Up - A two-hour documentary by Dan Olson with the general claim that blockchain technology is unnecessary financialization of everything that empowers capital holders fixes nothing, encourages fraud, and generally makes everything in the existing broken system much worse.

    • The Third Web - A well-articulated summary discussing negative freedom, censorship, code-is-law problems, "transactionalism", and ownership. It discusses primary issues, including scaling, The Oracle Problem, ownership fallacies, climate destruction, pyramid scheme / bigger fool, and the general claim that VCs will fundamentally re-centralize the decentralized system.

      • From the website, "Web3 is a web of ownership. Every object is owned by someone, every object can be traded to someone else."

      • The above claim is not necessarily valid. Build3 is about authorship, no ownership. This distinction is the fundamental difference between the criticisms (generally focused on flaws inherent to fintech and so claims typically reside in the claim that blockchain is the financialization of all things). The distinction is vital: Build3 is concerned with authorship for construction supervision authority.

    • - A curated timeline of fraud and scams in blockchain to emphasize the problem with scams and fraud.

    Build3 Foundation
    authors
    editors
    discord server
    author
    editor

    FRAME Pallet

    FRAMPallets are individual pieces of runtime logic for us in FRAME runtimes.

    substrate_ has a long list of pre-packages pallets, but you can also build your own or modify one built by the substrate_ team.

    Pallet Structure

    A pallet is composed of a few building blocks. These are:

    No Std

    The first line of code, always. It tells the rust compiler not to use Rust's standard library except when explicitly told so.

    Substrate runtimes are compiled to WASM and a regular native binary so you do not have access to rust's standard library.

    This means simple things like printing to the command line using println! will not compile.

    .

    This is where crates are imported, especially the substrate_ framework crates.

    All pallets will import frame-support and frame-system

    Declaration of the Pallet Type

    A placeholder to implement traits and methods.

    This is used to access features from other pallets, or constants that impact the pallet's behavior.

    This is the part of the code where you say "hey I'm going to create some functions that do with something I'll call coin and I'm going to have the be the coin that's defined in the other pallet....but I'm going to also cast votes, so my votes will be the ones defined in that other voting pallet"

    The Config trait allows you to do the above while keeping Generic Types so you can change define and use something called coin or votes from some other Pallet defined at runtime, but swapped with some other pallet with a runtime update later on.

    Have some custom data you want on the chain for users or otherwise?

    Runtime Storage is where you do that. You declare storage items you'd like to make accessible to runtime.

    Events are how you communicate back to people using the block chain like "transaction confirmed!" or "error! not enough cash!"

    This is where you'd build some logic that can be executed regularly in some context, for e.g. on_initialize.

    Basically, your blockchain's equivalent to handling webhooks.

    These are functions that blockchain users can call. This is often called a Dispatchable Call.

    decl_module!

    This is the macro where dispatchable calls are composed.

    A Little More on Each Topic

    Web3 is Going Great
    Imports
    Declaration of Pallet Type
    Runtime Configuration Trait
    Runtime Storage
    Runtime Events
    Hooks
    Extrinsics (Dispatchable Calls)
    Learn more here
    Imports
    Runtime Configuration Trait
    Runtime Storage
    Runtime Events
    Hooks
    Extrensics (Dispatchable Calls)
    ⬇️Imports
    ⚙️Runtime Configuration Trait
    💾Runtime Storage
    👍Runtime Events
    🏑Hook
    🙋Extrinsics (Dispatchable Calls)
    pub use pallet::*;
    // other global dependencies...
    
    #[frame_support::pallet]
    pub mod pallet {
        use frame_support::pallet_prelude::*;
        use frame_system::pallet_prelude::*;
        // other pallet dependencies...
        #[pallet::pallet]
        #[pallet::generate_store(pub(super) trait Store)]
        #[pallet::generate_storage_info]
        pub struct Pallet<T>(_);

    RD5 | Blockchain Makes Everything Worse for Everyone in Every Industry

    Due Date:

    Authorship Team:

    Author // Ed Leite [accepted]

    Editor // Kenneth Shultz [accepted]

    Abstract

    This research aims to dig deeply into those advocating strongly against blockchain technology and web3 in general for ethical, economic, social, or other notable concerns. Relentlessly exploring dissenting opinions is vital to the rigor of the research and will shake loose existential threats overlooked due to confirmation bias. With those threats identified, Build3 can work to resolve or mitigate them within the protocol.

    Related Research

    • - A two-hour documentary by Dan Olson with the general claim that blockchain technology is unnecessary financialization of everything that empowers capital holders fixes nothing, encourages fraud, and generally makes everything in the existing broken system much worse.

    • - A well-articulated summary discussing negative freedom, censorship, code-is-law problems, "transactionalism", and ownership. It discusses primary issues, including scaling, The Oracle Problem, ownership fallacies, climate destruction, pyramid scheme / bigger fool, and the general claim that VCs will fundamentally re-centralize the decentralized system.

      • From the website, "Web3 is a web of ownership. Every object is owned by someone, every object can be traded to someone else."

    Blockchain and the $1 T Ponzi scheme.

    Thirteen years ago, a group of people going by the name of Satoshi Nakamoto is believed to have released the open-sourced digital currency based on blockchain technology, Bitcoin. A distributed ledger system that validates transactions with no need for a centralized intermediary. With strong revolutionary and democratic intentions, aiming for security, cheap fees, neutrality, shared ownership, and governance, ruled by the algorithm. A powerful statement towards the Establishment, a message to the super-wealthy who play with the working class and end up bailed out by the government.

    After the 2008 economy fiasco caused by speculators, brokers, and banks, Bitcoin turned into a solution for the anti and hyper-capitalist movements, an option out of banks and centralized currency, with such complex jargon and mechanisms that proselytizes the conversation in the likes of a cult prepared to defend itself against all criticism and facts.

    Unfulfilled roles characterize the not-so-new hype for the masses, a medium by which Establishment operates. Bitcoin and blockchain are fully entwined, although there’s more to it than old Bitcoin blockchain, smart contract blockchains, DeFi, NFTs, DAOs, FOMO, YOLO… they all add up to the fundamental problems preventing blockchain as a whole from fulfilling its original role. Over a decade later, Bitcoin reached an impressive $1T market cap for a pyramid scheme, with transactions too slow and expensive to handle regular commerce. In reality, nothing but an overly speculative financial vehicle is better used for illicit activities such as purchasing illegal drugs, terrorism funding, and money laundering. It is not a surprise that Bitcoin and blockchain DeFi attract all sorts of celebrities and shady personalities such as the Jordan Belfort, aka the Wolf of Wall Street, Elon Musk, Bill Gates, and Justin Bieber name a few.

    The consensus mechanism of blockchain is the key to all the claims and promises of decentralization, security, and transparency for blockchain technology. By using the PoW or proof-of-work or just mining as a way of validating transactions, it’s required that different people using powerful computers compete to decrypt blocks in order to move the transaction from A to B, resulting in payment for the miner and a lot of wasted energy in the process. Bitcoin is believed to move the equivalent of electricity of a small European country. PoS or proof of stake solves the problem by appointing a node (a computer) owned by someone who invested a lot of money or put them on stake in order to have the opportunity to validate such transactions with the possibility of losing such stake in case their validation isn’t accurate, but making extra money or tokens when the validations are good. Both consensus mechanisms empower those who can afford powerful computers and those who can afford nodes in the blockchain. They have enough money to invest in the technology, favoring those already empowered and privileged. Not to mention blockchain can’t scale or perform, fails in bringing in security, presents negative freedom, is hardly decentralized or fair, doesn’t share ownership, isn’t transparent, and is just a glorified Ponzi scheme that is far from delivering on its promises, too dangerous to handle any amount or type of data whatsoever.

    The distributed ledger is such an exciting and revolutionary concept that would fit just extraordinarily well into the gap caused by the yearnings of the ordinary people (anti and hyper capitalists) feeling overwhelmed and left out of the internet and finance, flooded by fake news on Facebook, that sold their data in the past and still reigns the space with a formidably strong hand. Scammed by banks, Big Pharma, Monsanto, and big corporations, not even allowed to consume art created an optimal space for venture capitalists and enthusiasts who elected blockchain technology as their newest messiah, a good opportunity and the creation of a more sustainable and fair future. A very opportunistic capitalist, Mark Zuckerberg changed Facebook’s name to Meta to save face and insert his company into the future, into generations X and Z’s pockets, not to mention to reach the unbanked with the failed projects of Libra. This stable coin turned to Diem because changing Facebook’s name was not clear enough. It feels like Web3 is being re-invented by the same people who created the old web in the first place. NFTs and DAOs are part of the Web3 section within the blockchain. I know so many acronyms. NFTs or non-fungible tokens are simply a toy in the hands of speculators, a money laundry alternative for super bored wealthy criminals and very wealthy celebrities who will not let go of an opportunity to feel evermore exclusive and relevant.

    On the other hand, DAO stands for Decentralized Autonomous Organizations and plays a dirty game, fantasies of fair governance and shared ownership, organized DeFi poorly associated with real-life unions, all very offensive. Web3 is an attempt to give blockchain a heavy use other than speculative. Deeply anti-political, a new space for accumulation, a playground for NFT collectors, and delusions for venture capitalists and enthusiasts who believed they were about to make good money and save the world while having loads of fun collecting digital art. Blockchain has failed us, Bitcoin might never reach its full potential or even recover from this latest crash, but the world is not ending just yet. Blockchain brought negativity to this piece, a very heavy storm cloud during one winter in History. Blockchain will have its story told but most likely described as a fad, a hype that deluded many, promised a bunch only to create new problems that weren’t even there in the first place, and then just vanished like a bad husband who left for cigarettes one day and never returned. Hopefully, it leaves a significant mark on our generation, more like a catastrophic event that once we have recovered from the PTSD caused by it, we can re-route towards a brighter and more real place where we can learn to regulate and evolve the very habits and feelings that got us here in the first place.

    ED, I'm just throwing a few thoughts in here below...delete and change or add however you want - KMS

    Governance Problems with Proof of Stake

    This is still a problem because, fundamentally, if you have the money, you can buy the network.

    The concept is to solve the problem by making voting authority linearly proportional to the time put into the network (i.e. the industry).

    More information is found here on Phil's current work on the topic:

    NFT apes are about ownership, NFT supervision is about authorship.

    Build3 is not about selling or owning digital documents. It is about proving who the author of the document was and if they were qualified to direct the engineering.

    Build3 is an Underwriting Layer for the Industry

    Authorship proof has a value shared among regulators, lenders, and insurers when it comes to construction. Build3 does not disrupt any of the roles of the current actors. Build3 data serves as a layer to underwrite the truth for which each entity exists to serve or regulate: things that can be dangerous when designed by unqualified individuals.

    PR Archives

    An archive of original publication requests.

    PR1 | Build3 Roadmap for Blockchain-Based Construction Supervision

    Authorship Team:

    Proof of Supervision with Blockchain

    The proposed frames to handle stamping engineered

    Licensing Boards and Working Groups

    The licensing boards will be constructed from the collective pallet.

    We will also introduce a working group technical committee. Working groups define the standard of care for each category of work on the network.

  • The above claim is not necessarily valid. Build3 is about authorship, no ownership. This distinction is the fundamental difference between the criticisms (generally focused on flaws inherent to fintech and so claims typically reside in the claim that blockchain is the financialization of all things). The distinction is vital: Build3 is concerned with authorship for construction supervision authority.

  • Web3 is Going Great - A curated timeline of fraud and scams in blockchain to emphasize the problem with scams and fraud.

  • Line Goes Up
    The Third Web
    👷‍♀️RD2 | Labor-Based Based Voting Authority
    🪶RD3 | Authorship, not Ownership: Re-understanding and NFT
    Author //
    Omer Bozok
    [accepted]

    Editor // Kenneth Shultz [accpeted]

    PR1 | Click to Expand | Submitted 12 April 2022 | Nomination Accepted 12 April 2022

    Abstract

    This publication will discuss the roadmap for implementing a public utility supervision blockchain. This research would discover the complete road map logically from easiest to most difficult to implement. An example features road map may look like this (or some variation):

    1. Professional Licensure Authorship: Cryptographic Signatures representing Architectural and Engineering Seals. This functions as the start of the identity network (proof of licensee).

    2. Construction Submittals: Cryptographically signed by the issuer and signed by the reviewer(s)

    3. Permitting: Permits signed on-chain by the submitting parties and signed by the approving authority having jurisdiction.

      1. Note: topic also may include thoughts about the International Building Code, Chapter 1, or other written codes that address permitting requirements. Nothing technically changes about permit applications and approval other than adding the blockchain's underlying storage and authorship mechanism.

    4. Inspections & Occupancy Certificates: Similar to permitting, but for proof of the inspection authority.

    5. Operations and Maintenance: This concept is starting to look much longer into the future but is worth thought and documentation. Is O&M a standalone network interoperable through a Polkadot (or Polkadot-like) parachain? How does O&M tie to the original record of construction supervision, permitting, and occupancy approval?

    6. Property Identity: The contributions from the build3 network related to proof of supervision would be identity markers about a specific property. Each renovation from start to end of a building would contain evidence of the supervision process that helped to secure the safety of the building itself.

      1. This newly found record of building history may tie into COBie reports and digital twin applications.

      2. The incremental move into this phase of adoption would introduce conversations about insurance and lending, two major parties in the industry which rely heavily on underwriting risk.

    7. GIS Maps: Proof of supervision of land survey work tied directly to the public GIS map systems. This use case is quite an abstraction from our original use case of professional supervision. GIS Maps is included as an example to help stretch out as far as we can reach for our purpose of identifying code compliance at the start of a building lifecycle and how that can extend throughout until the end of life. The objective is to postulate the demolition of an ideally chain-documented building. The land remains, but the evidence of the building is gone or nearly gone; however, the blockchain persists as a historical artifact.

    Related Research

      • This NSPE paper points out the connection between a blockchain and risk calculus, specifically how that relates to insurance.

    PR2 | Labor-Based Based Voting Authority

    Authorship Team:

    Author // Phillip Brock [accepted]

    Editor // Kenneth Shultz, PE [accepted]

    PR2 | Click to Expand | Submitted 12 April 2022 | Nomination Accepted 12 April 2022

    Abstract

    Blockchain enthusiasts usually tout the benefits of decentralization. Unfortunately, many of the features baked into the technology ultimately lead to a re-centralization in myriad ways. A small central group of miner farms generally controls all rewards on the bitcoin network. When it comes to voting mechanisms, most involve the spending of coins, which makes voter authority directly proportional to their access to funds.

    A proposed solution to this problem involves removing or reducing the possibility of exponential relationships from voting power. Non-transferrable voting tokens are issues based on a user's contribution to the network. You earn voting tokens as you review, submit, or otherwise interact with the system. These tokens are non-transferrable, would be burned when used for voting, and may expire after some time. This paper will explore these ideas and propose technical standards for developers to implement as a pallet on the chain. This voting token introduces a new token that is not nonfungible (NFT) nor technically wholly fungible.

    PR3 | Authorship, not Ownership: Re-understanding and NFT

    Authorship Team:

    Lead Author // Kenneth Shultz, PE [accepted]

    Author // Bradley Edward Layton, PhD PE [pending acceptance]

    Editor // Ed Leite [nominated]

    PR3 | Click to Expand | Submitted 12 April 2022

    Abstract

    A common problem articulated for NFTs is that they do nothing to assure ownership. Anyone can claim any digital asset and mint it as an NFT. This research aims to demonstrate the wholly overlooked use for an NFT: authorship.

    Example: Shop Drawing Submittal Review

    Equipment manufacturers typically author these drawings. If necessary, the trade contractor then marks up the submittal to prepare the document for review. The licensed designer of record then authors their judgment against the submission and sends it back as either approved or denied (resubmission required). At no point in this chain was ownership relevant to the reason for this communication chain.

    That process exists to verify compliance with the construction documents. Compliance with construction documents represents compliance with the highly regulated architectural and engineering design process. The highly regulated design process is in place to ensure compliance with the code, and the code's fundamental purpose is to protect public safety and welfare.

    Ownership of these documents is entirely irrelevant within this context. Nothing is more important than proof of authorship and compliance with previously authored construction records.

    And so we ask ourselves, what is the name for proof of authorship on a blockchain? These authorship proofs belong to a contract. They are nonfungible in that no two authorship proofs can be considered equal. Unlike artwork or music, an authorship-based supervision compliance supply chain is strictly nontransferrable. The signed documents bind to the construction contract immutably, and the construction contract binds in perpetuity to the property.

    PR4 | Cryptographic Certificate of Occupancy

    Authorship Team:

    Author // [awaiting nomination]

    Editor // [awaiting nomination]

    PR4 | Click to Expand | Submitted 12 April 2022 | NOT ACCEPTED

    Abstract

    With architectural and engineering seals, Construction Administration, permit review and approval, and inspections authorship proofs resolved, it isn't a stretch of the mind to consider the Certificate of Occupancy itself as fundamental to the blockchain. The building design and construction cycle would be tied together with minimal disruption to existing workflows, directly to the Occupancy Certificate.

    This new cryptographic token will tie to the building identity and introduce new features for a certificate of occupancy that could never have previously existed. This topic encourages the authors' imagination to explore those new features and document them as formal technical specifications.

    PR6 | Turn a Nonprofit 503(c) into a Nonprofit DAO

    Authorship Team:

    Author // Kenneth Shultz, PE [accepted]

    Editor // Phil Brock [accepted]

    PR6 | Click to Expand | Submitted 12 April 2022 | Nomination Accepted 19 April 2022

    Abstract

    This paper will explore traditional bylaw language for registered 503(c) organizations and work to integrate them with on-chain governance. The board of directors will vote to approve or reject the newly proposed bylaws. If approved, The Build3 Foundation will submit the bylaws to the State Corporation Commission, included in the final product of this publication, and formally instantiate them on-chain through the substrate pallet configuration.

    Construct the paper-contract language such that blockchain governance authorizes all future bylaw changes. Consider conditions for catastrophic network failure. For example, members, a committee, or a board of directors may adopt new bylaws through traditional means. After network recovery, Build3 Foundation must register any off-chain measures adopted to the blockchain.

    The purpose is to finalize the Build3 Bylaws and publish findings for future organizations to use in consultation with their legal representation.

    Related Research

    Licensing Board

    Objective

    A board of directors with the same voting authorities issued by the local legislation, but now all voting would be on the blockchain, including approval and review of license applications.

    Working Group

    Scope<Standard of Care::Electrical>

    Discipline<Electrical>

    Objective

    A standard of care working group organized around the objective to establish a standard of care for a discipline type. In this case, Electrical.

    It is the responsibility of the working group to establish a minimum standard of care for electrical design in a manner that

    • helps assure public safety

    • without imposing erroneous administrative work on the community that would discourage engagement in compliance

    • members of the working group should propose a standard_of_care and internally vote on the final version.

    Professional Engineering License

    The professional engineering license is modeled using the identity pallet. This pallet allows a user to put forth a proposed identity and ask for a review by any number of registrars.

    Example Identity Records Representing a Professional and their Active Licensure Authority

    License Application and Issuance

    An engineering board of directors may become a registrar on the network.

    Adding registrars are currently done through the master admin (sudo); but will eventually be converted to a council decision.

    Registrar has the authority to review the identity and validate it.

    A user may assign an identity to their prime account which would represent their main user information (name, email, etc).

    When applying for a license, a user creates an account and adds it as a sub-account. The user then submits the sub-account to the board to make a judgment (approve) the identity. The board can change the state of the identity.

    Once the license (sub identity) is approved, the engineer uses this license address to seal drawings.

    Professional Supervision Record

    The contracts pallet allows for the distribution of generic smart contracts which deploy into the blockchain and represent the professional interactions for each licensed activity on the network.

    Construction Document Records

    Minimum Required Specification

    Each professional enters into a Contract of Supervision when they begin working on a project.

    This connects the licensed agents to the record of supervision for the project.

    Deploying Contract

    Because many jurisdictions require both the firm and the individual to be licensed, this contract may require authorization by both licensed parties: the firm and the individual.

    Each individually permitted document should be deployed as a separate contract.

    Description of Supervision

    This Contract of Supervision should also store the state of the work contract including

    • deliverables - the list of deliverables and their state (percent completion).

    • discipline - the discipline associated with the supervision (elec, mech, etc)

    • standard_of_care

    Record of Work

    • For the sake of practical implementation, we will limit the record of work to any substantial deliverable sent from professional outward which would increase the amount of completed effort by a minimum of 10 percent.

    • The Record of Work is a record of all major deliverable points, who performed the design, who checked the work, and who verified proof of the standard of care for the block entry.

    • For each record of work parties sign:

    Proposed Future Specification

    Record of Payment

    The contact may also be capable of recording payment history and terms. In the event of payment default, the contract would set the state of record drawings to invalid thereby prohibiting continued use of the construction documents (ie they would no longer be permitted for use in construction.

    Handling Payment Defaults

    In the event of default, any queries to construction document status would

    • return an Error: Invalid Contract, Payment Default. NOT FOR CONSTRUCTION and

    • the contract would also engage the IPFS storage utility to encrypt the data to prevent further download until payment is remedied.

    Construction Document Records

    Proposed Future Specification

    Record of Payment

    The contact may also be capable of recording payment history and terms. In the event of payment default, the contract would set the state of record drawings to invalid thereby prohibiting continued use of the construction documents (ie they would no longer be permitted for use in construction.

    Handling Payment Defaults

    In the event of default, any queries to construction document status would

    • return an Error: Invalid Contract, Payment Default. NOT FOR CONSTRUCTION and

    • the contract would also engage the IPFS storage utility to encrypt the data to prevent further download until payment is remedied.

    Off-Chain Worker

    Verify Document Authenticity

    A user submits files (or links to files) to check their authenticity. The off-chain worker downloads the file, hashes and compares it to the state on contract, and emits and Event describes the findings.

    Documentation on how to implement.

    Cross-Discipline Authorization

    Creates an origin that requires multiple parties to sign before authorizing a transaction.

    Project Kick-Off

    Kicking off a project may require a signature from the sales member as well as from the tehcnical director confirming all requirements are met for kicking the project off.

    Offenses

    This pallet tracks the reported offenses.

    Disciplinary Action by Board of Directors

    A supervisory board regulating some issued credentials could submit disciplinary action against the Validator in accordance with their own regulations.

    Failure to Comply to Standard of Care

    The community itself could check on the implemented standards of care and any violation would be reported as an Offense.

    example: PermitZIP requires checklists as part of the process for every project, every deliverable. If the reviewer Validated a design without completing the checklist, this would be an Offence.

    Recovering Lost of Stolen Licenses

    Allows account recovery if lost credentials based on M-of-N social recovery.

    Stolen Professional License

    When a license is lost or stolen, this Pallet provides for a means of recovery which also secures the license.

    Recovery Process

    The recovery process is protected by trusted "friends" and a specific threshold of that list is required to recover.

    This helps to address the idea of an engineer losing "control" of their license.

    • the board could temporarily lock the license

    • any use of an illegal or invalidated license would notify the board

    • the engineer could go through the recovery process, and notify the board when recovered

    ☮️Collective
    🆔Identity
    📃Contracts
    🌌Off-chain Worker
    🫂Multisig
    👩‍⚖️Offences
    🌄Recovery
    Adoption of Blockchain Technology through Digital Twins in the Construction Industry 4.0: A PESTELS Approach
    Blockchain Technology: Implications and Opportunities For Professional Engineers
    Click here to view this project's documentation progress
    (UN)CORPORATE CRYPTO-GOVERNANCE
    Smart Legal Contracts: Advice to Governments
  • this final version would then go to the network as the proposed standard of care for the network

  • submissions will implement the staking mechanism (ie the group would collectively bond the proposal, receiving the bond back if adopted by the community

  • only one formal standard_of_care may exist per category.

  • standard_of_care era is set to six months and is voted for adoption by network every six months. Any working group may submit an updated standard of care during that time if they have a better version. The network will vote on the standard of care.

  • - the standard of care implemented for the supervision
  • the designer submits work for review under a Minimum Standard of Care Configuration Trait

  • a reviewer checks work against theMinimum Standard of Care Configuration Trait

  • the professional signs that the document has been designed and backchecked per the Standard of Care

  • when the account is recovered, the engineer can request it to be re-authorized (paying board fees as needed)