A repository for all concrete decisions made about how to implement the cardano blockchain. This repository contains all the technical details and improvements that are needed for the developers. The repository contains git submodules that pin down specific versions of the formal specifications which these concrete technical decisions refer to. Changes to this need to be reflected in the different documents.
The "RFC" (request for comments) process is intended to provide a consistent and controlled path for new features to enter the blockchain and standard APIs, so that all stakeholders can be confident about the direction the blockchain is evolving in. It's also intended as an explicit list of concrete decisions that are outside the scope of the abstract specifications, and therefore the weight of the decision making should lie with the party making the proposal (who will more than likely be involved in a concrete implementation at the time of making it).
Currently we only accept proposals and comments from within the IOHK organization.
Proposals are to be made if:
idx
from the set of Idx
.
However it doesn't specify wether it is acceptable to have negative indices
or if it is bounded (32bits? 64bits?), of if it is from 0 or from 1. A
proposal can be made to pin this down and guarantee that we are all talking
about the same thing.text/0000-my-feature.md
(where "my-feature" is
descriptive. don't assign an RFC number yet).RFC PR:
section in
<./XXXX-template.md>. As a pull request the RFC will receive design feedback,
and the author should be prepared to revise it in responseWriters of formal-specifications referred in this document should check that
when these specifications are updated, all changes affecting RFC
's in this
repository should be accounted for. In practical terms this means that if a
change in the specifications affects a previous RFC
the writer should:
RFC
which refers to the RFC
that the changes in the spec is
affecting.RFC
is rendered obsolete by the new RFC
, or
whether the latter is just an addendum to the former.This repository is currently in the process of being licensed under either of
Apache License, Version 2.0, (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0) MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT) at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.