Skip to content

Commit 8b81323

Browse files
authored
Merge pull request #15 from MetalPay/dec
Dec
2 parents a1fe5cf + 279a301 commit 8b81323

File tree

320 files changed

+11468
-3622
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

320 files changed

+11468
-3622
lines changed

.circleci/config.yml

Lines changed: 171 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,171 @@
1+
version: 2.1
2+
orbs:
3+
utils: ethereum-optimism/circleci-utils@0.0.7
4+
5+
executors:
6+
node20:
7+
docker:
8+
- image: cimg/node:20.11.1 # Prebuilt CircleCI image for Node.js 20.x
9+
resource_class: medium # Adjust resource allocation as needed
10+
ubuntu:
11+
machine:
12+
image: ubuntu-2204:current
13+
rust:
14+
docker:
15+
- image: cimg/rust:1.75.0 # CircleCI's Rust Docker image
16+
working_directory: ~/project
17+
18+
commands:
19+
setup-node:
20+
steps:
21+
- run:
22+
name: Install Node.js (20.x) and pnpm
23+
command: |
24+
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
25+
sudo apt-get install -y nodejs
26+
npm install -g pnpm
27+
pnpm --version
28+
- restore_cache:
29+
keys:
30+
- v1-pnpm-cache-{{ checksum "pnpm-lock.yaml" }}
31+
- run:
32+
name: Install dependencies
33+
command: npm install -g pnpm && pnpm install
34+
- save_cache:
35+
key: v1-pnpm-cache-{{ checksum "pnpm-lock.yaml" }}
36+
paths:
37+
- ~/.pnpm-store
38+
39+
jobs:
40+
algolia:
41+
description: Create and upload Algolia search index
42+
executor: ubuntu
43+
steps:
44+
- checkout
45+
- setup-node
46+
- run:
47+
name: Create and upload index
48+
command: |
49+
# index:docs requires the following environment variables, coming from the algolia-search context
50+
# ALGOLIA_APPLICATION_ID
51+
# ALGOLIA_WRITE_API_KEY
52+
# ALGOLIA_INDEX_NAME
53+
pnpm run index:docs
54+
55+
breadcrumbs:
56+
description: Check breadcrumbs in documentation
57+
executor: ubuntu
58+
steps:
59+
- checkout
60+
- setup-node
61+
- run:
62+
name: Run breadcrumb check
63+
command: pnpm check-breadcrumbs
64+
lint:
65+
description: Lint Markdown files
66+
executor: ubuntu
67+
steps:
68+
- checkout
69+
- setup-node
70+
- run:
71+
name: Lint Markdown files
72+
command: pnpm lint
73+
74+
links:
75+
executor: rust
76+
steps:
77+
- checkout:
78+
path: docs
79+
- run:
80+
name: Checkout lycheeverse/lychee
81+
command: |
82+
git clone https://github.com/lycheeverse/lychee.git lychee
83+
84+
- restore_cache:
85+
keys:
86+
- v1-rust-cache-{{ checksum "lychee/Cargo.lock" }}
87+
- v1-rust-cache-
88+
89+
- run:
90+
name: Build Lychee
91+
command: |
92+
cd lychee
93+
cargo build --release
94+
95+
- save_cache:
96+
key: v1-rust-cache-{{ checksum "lychee/Cargo.lock" }}
97+
paths:
98+
- ~/.cargo/registry
99+
- ~/.cargo/git
100+
- lychee/target
101+
102+
- run:
103+
name: Run Lychee link checker
104+
command: |
105+
export PATH=$PATH:$HOME/project/lychee/target/release
106+
cd docs
107+
lychee --config ./lychee.toml --quiet "./pages"
108+
109+
developer-metrics:
110+
description: Monthly Metrics Report
111+
executor: ubuntu
112+
parameters:
113+
repo:
114+
type: string
115+
default: $CIRCLE_PROJECT_USERNAME/$CIRCLE_PROJECT_REPONAME
116+
steps:
117+
- utils/get-github-access-token:
118+
private-key-str: GITHUB_APP_KEY
119+
app-id: GITHUB_APP_ID
120+
repo: << parameters.repo >>
121+
- run:
122+
name: Get Dates for Last Month
123+
command: |
124+
# Calculate the first day of the previous month
125+
first_day=$(date -d "last month" +%Y-%m-01)
126+
127+
128+
# Calculate the last day of the previous month
129+
last_day=$(date -d "$first_day +1 month -1 day" +%Y-%m-%d)
130+
131+
# Export the last_month variable for subsequent steps
132+
echo "export LAST_MONTH=${first_day}..${last_day}" >> $BASH_ENV
133+
- utils/generate-issue-metrics-file:
134+
SEARCH_QUERY: 'repo:ethereum-optimism/docs is:issue closed:${LAST_MONTH} -reason:\"not planned\" -label:monthly-report'
135+
file-path: "./closed_issue_metrics.md"
136+
- utils/create-github-issue-from-file:
137+
repo: << parameters.repo >>
138+
file-path: "./closed_issue_metrics.md"
139+
issue-title: "${LAST_MONTH} metrics report for closed issues"
140+
issue-labels: "monthly-report"
141+
assignees: "sbvegan"
142+
- utils/generate-issue-metrics-file:
143+
SEARCH_QUERY: "repo:ethereum-optimism/docs is:pr created:${LAST_MONTH}"
144+
file-path: "./pr_issue_metrics.md"
145+
- utils/create-github-issue-from-file:
146+
repo: << parameters.repo >>
147+
file-path: "./pr_issue_metrics.md"
148+
issue-title: "${LAST_MONTH} metrics report for opened prs"
149+
issue-labels: "monthly-report"
150+
assignees: "sbvegan"
151+
152+
workflows:
153+
merge-workflow:
154+
jobs:
155+
- algolia:
156+
name: Algolia Index Update
157+
context: algolia-search
158+
filters:
159+
branches:
160+
only: main
161+
pr-workflow:
162+
jobs:
163+
- breadcrumbs
164+
- links
165+
- lint
166+
monthly-workflow:
167+
when:
168+
equal: [build_monthly, <<pipeline.schedule.name>>]
169+
jobs:
170+
- developer-metrics:
171+
context: circleci-repo-docs

.coderabbit.yaml

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,18 +4,25 @@ reviews:
44
high_level_summary: false
55
poem: false
66
review_status: false
7-
collapse_walkthrough: false
7+
collapse_walkthrough: true
8+
changed_files_summary: false
89
path_instructions:
910
- path: "**/*.mdx"
1011
instructions: |
1112
"ALWAYS review Markdown content THOROUGHLY with the following criteria:
1213
- Use proper nouns in place of personal pronouns like 'We' and 'Our' to maintain consistency in communal documentation.
1314
- Avoid gender-specific language and use the imperative form.
14-
- Monitor capitalization for emphasis. Use **bold** for prominence instead of all caps or italics.
15+
- Monitor capitalization for emphasis. Avoid using all caps, italics, or bold for emphasis.
1516
- Ensure proper nouns are capitalized in sentences.
1617
- Apply the Oxford comma.
17-
- Use proper title case for headers, buttons, tab names, page names, and links. Sentence case should be used for body content and short phrases, even in links.
18+
- Use proper title case for buttons, tab names, page names, and links. Sentence case should be used for body content and short phrases, even in links.
1819
- Use correct spelling and grammar at all times (IMPORTANT).
20+
- For H1, H2, and H3 headers:
21+
1. Use sentence case, capitalizing only the first word.
22+
2. Preserve the capitalization of proper nouns, technical terms, and acronyms as defined in the 'nouns.txt' file located in the root directory of the project.
23+
3. Do not automatically lowercase words that appear in the 'nouns.txt' file, regardless of their position in the header.
24+
- Flag any headers that seem to inconsistently apply these rules for manual review.
25+
- When reviewing capitalization, always refer to the 'nouns.txt' file for the correct capitalization of proper nouns and technical terms specific to the project.
1926
"
2027
auto_review:
2128
enabled: true

.github/CODEOWNERS

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
# Code reviewers
2-
* @squdgy @paulgnz
2+
* @squdgy @paulgnz
Lines changed: 152 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,152 @@
1+
---
2+
name: Docs audit results
3+
about: Template for a formal technical documentation audits run by OP Labs
4+
title: "[2024 Q4 Audit] [page-path]"
5+
labels: ['docs-audit-2024-Q4', 'op-labs']
6+
---
7+
8+
<!-- this template is intended for internal OP Labs usage -->
9+
10+
## Description of the updates required
11+
12+
<!-- Write a description of the current state of the page. -->
13+
14+
### Acceptance criteria
15+
16+
<!-- Definition of done for the assignee -->
17+
18+
### Resources
19+
20+
<!-- Supporting docs, points of contact, and any additional helpful info -->
21+
22+
### Action items
23+
24+
<!-- The process for working through this issue for example:
25+
1. Read through resources and meet with SME
26+
2. Write the first draft
27+
3. Share draft with SMEs and implement feedback
28+
4. Peer review
29+
5. Final SME review
30+
6. Publish -->
31+
32+
## Github issue label criteria
33+
34+
> Choose the appropriate github issue labels for each page.
35+
36+
<details>
37+
38+
<summary>Priority</summary>
39+
40+
- `p-on-hold`: (Defer) Tasks that are currently not actionable due to various reasons like waiting for external inputs, dependencies, or resource constraints. These are reviewed periodically to decide if they can be moved to a more active status.
41+
- `p-low`: (Nice to do) Tasks that have minimal impact on core operations and no immediate deadlines. These tasks are often more about quality of life improvements rather than essential needs.
42+
- `p-medium`: (Could do) Tasks that need to be done but are less critical than high-priority tasks. These often improve processes or efficiency but can be postponed if necessary without immediate severe repercussions.
43+
- `p-high`: (Should do) Important tasks that contribute significantly to long-term goals but may not have an immediate deadline. Delaying these tasks could have considerable negative effects but are not as immediate as critical tasks.
44+
- `p-critical`: Tasks that have immediate deadlines or significant consequences if not completed on time. These are non-negotiable and often linked to core business functions or legal requirements.
45+
</details>
46+
47+
<details>
48+
49+
<summary>T-shirt size</summary>
50+
51+
- `s-XS`: (< 1 day) Very simple tasks that require minimal time and effort.
52+
- `s-S`: (few days) Tasks that are straightforward but require a bit more time to complete.
53+
- `s-M`: (1-2 weeks) Tasks that involve a moderate level of complexity and collaboration.
54+
- `s-L`: (several weeks) Complex tasks that require significant time investment and coordination across multiple teams.
55+
- `s-XL`: (> 1 month) Very large and complex projects that involve extensive planning, execution, and testing.
56+
</details>
57+
58+
<details>
59+
60+
<summary>Content evaluation</summary>
61+
- `a-delete`: don't need this page
62+
- `a-duplicate`: some content lives elsewhere
63+
- `a-minor`: needs small revisions
64+
- `a-moderate`: needs moderate revisions
65+
- `a-critical`: needs a lot of work
66+
</details>
67+
68+
## MDX Metadata format
69+
70+
> We will be adding better metadata to the header of each page.
71+
> If I was actively searching for this page on google and this description was the search result, would I know it's the correct page?
72+
> Parse the component and feature tags to add.
73+
74+
```mdx
75+
---
76+
title: "Your Title Here"
77+
tags: ["tag1", "tag2"]
78+
description: "A short description of the content."
79+
---
80+
```
81+
82+
<details>
83+
<summary>Component tags</summary>
84+
85+
```
86+
op-node
87+
op-geth
88+
op-reth
89+
op-erigon
90+
op-nethermind
91+
batcher
92+
standard-bridge
93+
sequencer
94+
l1-contracts
95+
l2-contracts
96+
precompiles
97+
predeploys
98+
preinstalls
99+
op-proposer
100+
op-challenger
101+
op-gov-token
102+
op-supervisor
103+
op-conductor
104+
fp-contracts
105+
cannon
106+
op-program
107+
asterisk
108+
kona
109+
superchain-registry
110+
supersim
111+
dev-console
112+
opsm
113+
mcp
114+
mcp-l2
115+
deputy-guardian
116+
liveness-guard
117+
dispute-mon
118+
op-beat
119+
op-signer
120+
monitorism
121+
blockspace-charters
122+
op-workbench
123+
kubernetes-infrastructure
124+
devops-tooling
125+
artifacts-packaging
126+
sequencer-in-a-box
127+
devnets
128+
performance-tooling
129+
peer-management-service
130+
proxyd
131+
zdd-service
132+
snapman
133+
security-tools
134+
superchain-ops
135+
op-deployer
136+
```
137+
</details>
138+
139+
<details>
140+
<summary>Engineering tags</summary>
141+
142+
```
143+
eng-platforms
144+
eng-growth
145+
eng-devx
146+
eng-protocol
147+
eng-proofs
148+
eng-evm
149+
eng-security
150+
```
151+
</details>
152+

.github/ISSUE_TEMPLATE/general_docs_request.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ labels: 'community-request,documentation'
99
<!-- please fill out the following the best to your ability and properly label the issue -->
1010

1111
## Brief Description of the Docs Request
12-
Write a clear and concise description of the docs request. For example, is the request related to an existing page or are you suggesting a brand new docs page?
12+
Write a clear and concise description of the docs request. For example, is the request related to an existing page or are you suggesting a brand-new docs page?
1313

1414
## Description of the Documentation You'd Like
1515
Explain what the final documentation page or pages should look like. Do you need a guide, tutorial, FAQ, troubleshooting page or more than one page? Do you have any source/content information to provide for the requested page(s)?

0 commit comments

Comments
 (0)