Skip to content

Commit 539385f

Browse files
authored
Merge pull request #1683 from Plutonomicon/dshuiski/attest
Add missing md files; Prepare for self-attestation
2 parents 0d58ea3 + e7c38fb commit 539385f

File tree

9 files changed

+215
-8
lines changed

9 files changed

+215
-8
lines changed

CODEOWNERS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
* @errfrom

CODE_OF_CONDUCT.md

Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
# Contributor Covenant 3.0 Code of Conduct
2+
3+
## Our Pledge
4+
5+
We pledge to make our community welcoming, safe, and equitable for all.
6+
7+
We are committed to fostering an environment that respects and promotes the dignity, rights, and contributions of all individuals, regardless of characteristics including race, ethnicity, caste, color, age, physical characteristics, neurodiversity, disability, sex or gender, gender identity or expression, sexual orientation, language, philosophy or religion, national or social origin, socio-economic position, level of education, or other status. The same privileges of participation are extended to everyone who participates in good faith and in accordance with this Covenant.
8+
9+
## Encouraged Behaviors
10+
11+
While acknowledging differences in social norms, we all strive to meet our community's expectations for positive behavior. We also understand that our words and actions may be interpreted differently than we intend based on culture, background, or native language.
12+
13+
With these considerations in mind, we agree to behave mindfully toward each other and act in ways that center our shared values, including:
14+
15+
1. Respecting the **purpose of our community**, our activities, and our ways of gathering.
16+
2. Engaging **kindly and honestly** with others.
17+
3. Respecting **different viewpoints** and experiences.
18+
4. **Taking responsibility** for our actions and contributions.
19+
5. Gracefully giving and accepting **constructive feedback**.
20+
6. Committing to **repairing harm** when it occurs.
21+
7. Behaving in other ways that promote and sustain the **well-being of our community**.
22+
23+
24+
## Restricted Behaviors
25+
26+
We agree to restrict the following behaviors in our community. Instances, threats, and promotion of these behaviors are violations of this Code of Conduct.
27+
28+
1. **Harassment.** Violating explicitly expressed boundaries or engaging in unnecessary personal attention after any clear request to stop.
29+
2. **Character attacks.** Making insulting, demeaning, or pejorative comments directed at a community member or group of people.
30+
3. **Stereotyping or discrimination.** Characterizing anyone’s personality or behavior on the basis of immutable identities or traits.
31+
4. **Sexualization.** Behaving in a way that would generally be considered inappropriately intimate in the context or purpose of the community.
32+
5. **Violating confidentiality**. Sharing or acting on someone's personal or private information without their permission.
33+
6. **Endangerment.** Causing, encouraging, or threatening violence or other harm toward any person or group.
34+
7. Behaving in other ways that **threaten the well-being** of our community.
35+
36+
### Other Restrictions
37+
38+
1. **Misleading identity.** Impersonating someone else for any reason, or pretending to be someone else to evade enforcement actions.
39+
2. **Failing to credit sources.** Not properly crediting the sources of content you contribute.
40+
3. **Promotional materials**. Sharing marketing or other commercial content in a way that is outside the norms of the community.
41+
4. **Irresponsible communication.** Failing to responsibly present content which includes, links or describes any other restricted behaviors.
42+
43+
44+
## Reporting an Issue
45+
46+
Tensions can occur between community members even when they are trying their best to collaborate. Not every conflict represents a code of conduct violation, and this Code of Conduct reinforces encouraged behaviors and norms that can help avoid conflicts and minimize harm.
47+
48+
When an incident does occur, it is important to report it promptly. To report a possible violation, **contact us at info@mlabs.city**.
49+
50+
Community Moderators take reports of violations seriously and will make every effort to respond in a timely manner. They will investigate all reports of code of conduct violations, reviewing messages, logs, and recordings, or interviewing witnesses and other participants. Community Moderators will keep investigation and enforcement actions as transparent as possible while prioritizing safety and confidentiality. In order to honor these values, enforcement actions are carried out in private with the involved parties, but communicating to the whole community may be part of a mutually agreed upon resolution.
51+
52+
53+
## Addressing and Repairing Harm
54+
55+
If an investigation by the Community Moderators finds that this Code of Conduct has been violated, the following enforcement ladder may be used to determine how best to repair harm, based on the incident's impact on the individuals involved and the community as a whole. Depending on the severity of a violation, lower rungs on the ladder may be skipped.
56+
57+
1) Warning
58+
1) Event: A violation involving a single incident or series of incidents.
59+
2) Consequence: A private, written warning from the Community Moderators.
60+
3) Repair: Examples of repair include a private written apology, acknowledgement of responsibility, and seeking clarification on expectations.
61+
2) Temporarily Limited Activities
62+
1) Event: A repeated incidence of a violation that previously resulted in a warning, or the first incidence of a more serious violation.
63+
2) Consequence: A private, written warning with a time-limited cooldown period designed to underscore the seriousness of the situation and give the community members involved time to process the incident. The cooldown period may be limited to particular communication channels or interactions with particular community members.
64+
3) Repair: Examples of repair may include making an apology, using the cooldown period to reflect on actions and impact, and being thoughtful about re-entering community spaces after the period is over.
65+
3) Temporary Suspension
66+
1) Event: A pattern of repeated violation which the Community Moderators have tried to address with warnings, or a single serious violation.
67+
2) Consequence: A private written warning with conditions for return from suspension. In general, temporary suspensions give the person being suspended time to reflect upon their behavior and possible corrective actions.
68+
3) Repair: Examples of repair include respecting the spirit of the suspension, meeting the specified conditions for return, and being thoughtful about how to reintegrate with the community when the suspension is lifted.
69+
4) Permanent Ban
70+
1) Event: A pattern of repeated code of conduct violations that other steps on the ladder have failed to resolve, or a violation so serious that the Community Moderators determine there is no way to keep the community safe with this person as a member.
71+
2) Consequence: Access to all community spaces, tools, and communication channels is removed. In general, permanent bans should be rarely used, should have strong reasoning behind them, and should only be resorted to if working through other remedies has failed to change the behavior.
72+
3) Repair: There is no possible repair in cases of this severity.
73+
74+
This enforcement ladder is intended as a guideline. It does not limit the ability of Community Managers to use their discretion and judgment, in keeping with the best interests of our community.
75+
76+
77+
## Scope
78+
79+
This Code of Conduct applies within all community spaces, and also applies when an individual is officially representing the community in public or other spaces. Examples of representing our community include using an official email address, posting via an official social media account, or acting as an appointed representative at an online or offline event.
80+
81+
82+
## Attribution
83+
84+
This Code of Conduct is adapted from the Contributor Covenant, version 3.0, permanently available at [https://www.contributor-covenant.org/version/3/0/](https://www.contributor-covenant.org/version/3/0/).
85+
86+
Contributor Covenant is stewarded by the Organization for Ethical Source and licensed under CC BY-SA 4.0. To view a copy of this license, visit [https://creativecommons.org/licenses/by-sa/4.0/](https://creativecommons.org/licenses/by-sa/4.0/)
87+
88+
For answers to common questions about Contributor Covenant, see the FAQ at [https://www.contributor-covenant.org/faq](https://www.contributor-covenant.org/faq). Translations are provided at [https://www.contributor-covenant.org/translations](https://www.contributor-covenant.org/translations). Additional enforcement and community guideline resources can be found at [https://www.contributor-covenant.org/resources](https://www.contributor-covenant.org/resources). The enforcement ladder was inspired by the work of [Mozilla’s code of conduct team](https://github.com/mozilla/inclusion).
89+

CONTRIBUTING.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# Contributing
2+
3+
You are welcome to contribute by opening issues or submitting pull requests.
4+
All contributions are greatly appreciated and will be reviewed promptly.
5+
6+
For details on setting up a development environment, see [Development Workflows for CTL](doc/development.md).
7+
Refer to other sections of the documentation for additional insight into the
8+
project.
9+
10+
If you have any questions, don’t hesitate to reach out through the support
11+
channels listed in [SUPPORT.md](SUPPORT.md).

GOVERNANCE.md

Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
# Project Governance
2+
3+
## Project Overview
4+
5+
cardano-transaction-lib (CTL) is developed and maintained by [MLabs](https://www.mlabs.city/).
6+
7+
## Team Structure
8+
### Co-Maintainers
9+
**Dzmitry Shuiski** (@errfrom)
10+
- **Role**: Developer
11+
- **Email**: <dzmitryshuiski@mlabs.city>
12+
13+
**Marcus Fernandes** (@marcusbfs)
14+
- **Role**: Developer
15+
- **Email**: <marcus@mlabs.city>
16+
17+
### Shared Responsibilities
18+
- Code review and approval
19+
- Issue triage and management
20+
- Release planning and execution
21+
22+
## Decision Making Process
23+
### Consensus Required
24+
Both maintainers must agree on:
25+
- Major architectural changes
26+
- Breaking API changes
27+
- New feature additions
28+
- Release timing
29+
- Contributor guidelines changes
30+
31+
### Individual Authority
32+
Each maintainer can independently:
33+
- Merge small bug fixes and improvements
34+
- Respond to issues and community questions
35+
- Create and assign issues
36+
- Update documentation
37+
38+
### Conflict Resolution
39+
When we disagree:
40+
1. **Discussion**: Extended discussion to understand perspectives
41+
2. **Research**: Gather community input if needed
42+
3. **Compromise**: Find middle ground or alternative solution
43+
4. **Escalation**: If needed, seek input from trusted community members
44+
5. **Temporary Decision**: If urgent, implement temporary solution with plan to revisit
45+
46+
## Communication
47+
### Internal Team Communication
48+
- **Ad-hoc**: #ctl channel at MLabs' Slack
49+
50+
### Community Communication
51+
- **Issues**: Bug reports and feature requests
52+
- **Discussions**: General project discussion
53+
- **Pull Requests**: Code contributions
54+
- **Email**: <info@mlabs.city> for private matters
55+
56+
## Contribution Guidelines
57+
### Community Contributions
58+
1. **Small Changes**: Single maintainer approval required
59+
2. **Medium/Large Changes**: Both maintainers should review
60+
61+
## Response Times
62+
We aim to respond to:
63+
- Security issues: Within 24 hours (one of us)
64+
- Urgent bugs: Within 24-48 hours
65+
- General issues: Within 3-5 days
66+
- Pull requests: Within 1 week
67+
- Community discussions: Within 1 week
68+
69+
## Release Process
70+
1. **Planning**: Decide features and timeline together
71+
2. **Development**: Divide work based on expertise
72+
3. **Review**: Cross-review all significant changes
73+
4. **Testing**: Shared responsibility for testing
74+
5. **Release**: Both approve final release
75+
76+
## Code of Conduct
77+
This project follows the [Contributor Covenant](CODE_OF_CONDUCT.md). Both
78+
maintainers are responsible for enforcement.
79+
80+
---
81+
*This governance reflects our current project structure, which may evolve in
82+
the future.*

MAINTAINERS.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
# Active CTL Maintainers
2+
3+
* Dzmitry Shuiski <dzmitryshuiski@mlabs.city>
4+
* Marcus Fernandes <marcus@mlabs.city>

README.md

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121

2222
- [Documentation](#documentation)
2323
- [Additional resources/tools:](#additional-resourcestools)
24-
- [Available support channels info](#available-support-channels-info)
24+
- [Available support channels](#available-support-channels)
2525
- [Funding acknowledgements](#funding-acknowledgements)
2626
- [Use in production](#use-in-production)
2727

@@ -67,12 +67,9 @@ You can also access [PureScript documentation for CTL and its dependencies](http
6767
- [CIP-30](https://github.com/cardano-foundation/CIPs/tree/master/CIP-0030) (wallet interface)
6868
- [Alonzo CDDL spec](https://github.com/input-output-hk/cardano-ledger/blob/0738804155245062f05e2f355fadd1d16f04cd56/alonzo/impl/cddl-files/alonzo.cddl)
6969

70-
## Available support channels info
70+
## Available support channels
7171

72-
You can find help, more information and ongoing discusion about the project here:
73-
74-
- [Plutonomicon Discord](https://discord.gg/JhbexnV9Pc)
75-
- #ctl channel at MLabs' Slack
72+
See [SUPPORT.md](SUPPORT.md).
7673

7774
## Funding acknowledgements
7875

@@ -82,7 +79,7 @@ CTL is being developed by MLabs. The following companies/funds have contributed
8279
- [Catalyst Fund8](https://cardano.ideascale.com/c/idea/396607)
8380
- [Catalyst Fund9](https://cardano.ideascale.com/c/idea/420791)
8481
- [Catalyst Fund10](https://cardano.ideascale.com/c/idea/101478)
85-
- [Intersect MBO](https://docs.intersectmbo.org/intersect-community-grants/grant-projects)
82+
- [Intersect MBO](https://www.intersectmbo.org/grants)
8683
- [MLabs](https://mlabs.city/)
8784
- [Indigo Protocol](https://indigoprotocol.io/)
8885
- [Equine](https://www.equine.gg/)

SECURITY.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
# Security Policy
2+
3+
## Reporting a Vulnerability
4+
5+
Please report any (suspected) security vulnerabilities to <info@mlabs.city>.
6+
If the issue is confirmed, we will release a patch as soon as possible.
7+
8+
Please provide a clear and concise description of the vulnerability, including:
9+
10+
* the affected version(s) of cardano-transaction-lib,
11+
* steps that can be followed to exercise the vulnerability,
12+
* any workarounds or mitigations
13+
14+
If you have developed any code or utilities that can help demonstrate the
15+
suspected vulnerability, please mention them in your email but ***DO NOT***
16+
attempt to include them as attachments as this may cause your Email to be
17+
blocked by spam filters.

SUPPORT.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# Available support channels
2+
3+
You can find help, more information and ongoing discusion about the project here:
4+
5+
- [Plutonomicon Discord](https://discord.gg/JhbexnV9Pc)
6+
- #ctl channel at MLabs' Slack

doc/ctl-as-dependency.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ Do note that `runLocalTestnetTest` in `overlays.purescript` requires the presenc
2626
To see an example project that uses both `overlays`, please refer to our [scaffolding template](../templates/ctl-scaffold/flake.nix). You can also use this template to conveniently initialize a new CTL-based project (`nix flake init -t github:Plutonomicon/cardano-transaction-lib` in a new directory). It will take a significant amount of time for spago to download the dependencies.
2727

2828
## Upgrading CTL
29-
Unfortunately, upgrading CTL remains a relatively involved process. However, it has been partially simplified with the introduction of our [Cardano domain PureScript package set](https://github.com/mlabs-haskell/purescript-cardano-package-set) and the aggregate [NPM package](https://www.npmjs.com/package/@mlabs-haskell/ctl-npm-meta). This complexity arises partly from the scale of the project itself and in part due to features inherent to Spago's approach to dependency management. The following assumes that you are using a project based on Nix flakes and using our overlays as outlined above.
29+
Unfortunately, upgrading CTL remains a relatively involved process. However, it has been partially simplified with the introduction of our [Cardano domain PureScript package set](https://github.com/mlabs-haskell/purescript-cardano-package-set) and the aggregate @mlabs-haskell/ctl-npm-meta NPM package. This complexity arises partly from the scale of the project itself and in part due to features inherent to Spago's approach to dependency management. The following assumes that you are using a project based on Nix flakes and using our overlays as outlined above.
3030

3131
Make sure to perform **all** of the following steps, otherwise you **will** encounter difficult-to-debug issues:
3232

0 commit comments

Comments
 (0)