-
Notifications
You must be signed in to change notification settings - Fork 59
chore: add CLAUDE.md and .gitignore #179
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1 @@ | ||
| .DS_Store |
| Original file line number | Diff line number | Diff line change | ||
|---|---|---|---|---|
| @@ -0,0 +1,57 @@ | ||||
| # CLAUDE.md | ||||
|
|
||||
| This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository. | ||||
|
|
||||
| ## Overview | ||||
|
|
||||
| This is the **Dash Improvement Proposals (DIPs)** repository — a collection of technical specification documents for the Dash cryptocurrency protocol. Similar to Bitcoin's BIPs, each DIP describes a new feature, protocol change, or informational specification unique to Dash. This is a documentation-only repo with no application code. | ||||
|
|
||||
| ## Repository Structure | ||||
|
|
||||
| - Each DIP is a markdown file at the root: `dip-NNNN.md` (zero-padded 4-digit number) | ||||
|
Check failure on line 11 in CLAUDE.md
|
||||
| - Some DIPs have companion directories `dip-NNNN/` containing images, JSON schemas, supplementary documents, or scripts | ||||
|
Check failure on line 12 in CLAUDE.md
|
||||
| - `README.md` contains the master table of all DIPs with their number, layer, title, owner, type, and status | ||||
|
Check failure on line 13 in CLAUDE.md
|
||||
| - Gaps in numbering are intentional (e.g., no DIP 17-19) | ||||
|
Check failure on line 14 in CLAUDE.md
|
||||
|
|
||||
| ## DIP Document Format | ||||
|
|
||||
| Every DIP begins with a metadata header in `<pre>` tags: | ||||
|
|
||||
| ``` | ||||
|
Check failure on line 20 in CLAUDE.md
|
||||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Add a language specifier to the fenced code block — MD040 The code fence at line 20 has no language tag, triggering an MD040 violation. Since the content is a raw 🐛 Proposed fix- ```
+ ```text
<pre>📝 Committable suggestion
Suggested change
🧰 Tools🪛 GitHub Check: lint[failure] 20-20: Fenced code blocks should have a language specified 🤖 Prompt for AI Agents |
||||
| <pre> | ||||
| DIP: NNNN | ||||
| Title: ... | ||||
| Author(s): ... | ||||
| Comments-Summary: ... | ||||
| Status: Proposed | Final | Withdrawn | ||||
| Type: Standard | Informational | ||||
| Created: YYYY-MM-DD | ||||
| License: MIT License | ||||
| </pre> | ||||
| ``` | ||||
|
|
||||
| Some DIPs include additional fields like `Chain`, `Special-Thanks`, or `Requires`. The body follows BIP 2 style conventions with sections like Abstract, Motivation, Specification, and Copyright. | ||||
|
|
||||
| ## Linting | ||||
|
|
||||
| Markdown linting runs on PRs via GitHub Actions (`.github/workflows/markdownlint.yml`). Only changed `.md` files are linted. | ||||
|
|
||||
| ```bash | ||||
| # Run locally (requires markdownlint-cli2) | ||||
| npx markdownlint-cli2 "dip-0031.md" --config .markdownlint.json | ||||
| ``` | ||||
|
|
||||
| ### Markdownlint Configuration (`.markdownlint.json`) | ||||
|
|
||||
| Key rule overrides: | ||||
| - **MD004**: List style must use asterisks (`*`), not dashes | ||||
|
Check failure on line 47 in CLAUDE.md
|
||||
|
Comment on lines
+46
to
+47
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Add a blank line before the list — MD032 The list at line 47 starts immediately after "Key rule overrides:" without a blank line, triggering an MD032 violation. 🐛 Proposed fix Key rule overrides:
+
* **MD004**: List style must use asterisks (`*`), not dashes🧰 Tools🪛 GitHub Check: lint[failure] 47-47: Lists should be surrounded by blank lines [failure] 47-47: Unordered list style 🤖 Prompt for AI Agents |
||||
| - **MD013**: Line length limit is **disabled** (long lines are allowed) | ||||
|
Check failure on line 48 in CLAUDE.md
|
||||
| - **MD033**: Inline HTML is **allowed** (needed for `<pre>` headers and images) | ||||
|
Check failure on line 49 in CLAUDE.md
|
||||
| - **MD041**: First-line-heading rule is **disabled** (DIPs start with `<pre>` block) | ||||
|
Check failure on line 50 in CLAUDE.md
|
||||
|
|
||||
| ## Editing Guidelines | ||||
|
|
||||
| - When adding a new DIP, also add its entry to the summary table in `README.md` | ||||
| - DIP numbers are assigned by editors — drafts should use an alias name, not a self-assigned number | ||||
| - Place supporting assets (images, JSON, scripts) in a `dip-NNNN/` directory matching the DIP number | ||||
| - Use asterisks for unordered lists, not dashes (enforced by MD004) | ||||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
CI-breaking: all unordered list items must use asterisks (
*), not dashes — MD004The entire file uses dashes for bullet lists, violating the MD004 rule that is enforced by
.markdownlint.jsonand is now blocking themarkdownlintGitHub Actions check. Notably, line 57 itself states "Use asterisks for unordered lists, not dashes" while using a dash.🐛 Proposed fix — convert all dashes to asterisks
Lines 11–14 (
Repository Structure):Lines 47–50 (
Markdownlint Configuration):Lines 54–57 (
Editing Guidelines):Also applies to: 47-50, 54-57
🧰 Tools
🪛 GitHub Actions: .github/workflows/markdownlint.yml
[error] 11-11: markdownlint MD004/ul-style Unordered list style (Expected: asterisk; Actual: dash) on CLAUDE.md:11. Please convert dash to asterisk for unordered list items.
🪛 GitHub Check: lint
[failure] 14-14: Unordered list style
CLAUDE.md:14:1 MD004/ul-style Unordered list style [Expected: asterisk; Actual: dash] https://github.com/DavidAnson/markdownlint/blob/v0.38.0/doc/md004.md
[failure] 13-13: Unordered list style
CLAUDE.md:13:1 MD004/ul-style Unordered list style [Expected: asterisk; Actual: dash] https://github.com/DavidAnson/markdownlint/blob/v0.38.0/doc/md004.md
[failure] 12-12: Unordered list style
CLAUDE.md:12:1 MD004/ul-style Unordered list style [Expected: asterisk; Actual: dash] https://github.com/DavidAnson/markdownlint/blob/v0.38.0/doc/md004.md
[failure] 11-11: Unordered list style
CLAUDE.md:11:1 MD004/ul-style Unordered list style [Expected: asterisk; Actual: dash] https://github.com/DavidAnson/markdownlint/blob/v0.38.0/doc/md004.md
🤖 Prompt for AI Agents