This commit is contained in:
TheRON 2025-08-28 13:26:46 -04:00
parent f0596451a5
commit f635e2cb02
1 changed files with 180 additions and 0 deletions

180
CONVENTIONS.md Normal file
View File

@ -0,0 +1,180 @@
# ipfs.kane-il.us — Content & Path Conventions
## 0. Scope
- Public-only repository for IPFS gateway publishing.
- Text formats only: `*.md`, `*.txt`, `*.jsonl`.
- No binaries (pdf, images, video, archives) — describe them in markdown for accessibility.
- All timestamps are **UTC**.
## 1. Top-level categories (roots)
```
/legal
/civics
/naics
/barter
/w3pbs
/onet
/_log # public minimal publish log
```
## 2. Naming rules (files & dirs)
- **Lowercase**, **ASCII**, **underscores** for word separators.
- Filenames must start with **digits-only ISO UTC timestamp**:
- `YYYYMMDDThhmmssZ_<slug>.md` (e.g., `20250828T132200Z_order_summary.md`)
## 3. Immutability
- No “latest” aliases, no mutable pointers.
- No per-directory index files; rely on gateway directory listing.
- Every publish is additive; removals are exceptional (court/admin error).
## 4. LEGAL
### 4.1 research (jurisdiction-first, typed entities)
Path template:
```
/legal/research/{scope}/{segment}/{subject}/...
```
- `scope ∈ {county|town|township|individual|organization}`
- If `scope=organization` or `individual`, use typed entity layering:
```
/legal/research/{scope}/{kind}/{name}/{subject}/...
kind ∈ {governance|economic|domestic|technical|infrastucture|virtual}
```
- Otherwise:
```
/legal/research/{scope}/{jurisdiction_name}/{subject}/...
```
Examples:
```
/legal/research/county/kane/hoa_governance/20250828T131010Z_summary.md
/legal/research/organization/governance/abc_hoa/dues_policy/20250828T131200Z_notes.md
```
### 4.2 court → cases
Path template:
```
/legal/court/{court_id}/{case_id}/(filings|evidence|orders|docket|notes|transcripts|exhibits)/
```
- `court_id` will follow Kane County authoritative naming.
- `case_id` sanitized to lowercase/underscores; original case identifier stored inside the markdown.
## 5. Other categories
- **civics/**: governance, policy, licenses, standards → plain markdown.
- **naics/**: subdirectories by NAICS code (e.g., `/naics/541611/...`).
- **barter/**: web2py assets and git-oriented text/config (no binaries).
- **w3pbs/**: mailing lists, streaming, chat, forums; html/gemini **as text** or markdown summaries.
- **onet/**: O*NET taxonomy (latest), directory names derived from current O*NET categories.
## 6. Publish log (public, minimal)
- Location: `/_log/publish.jsonl`
- One JSON object per line with fields:
- `utc` (ISO 8601 UTC string), `repo`, `commit`, `tag` (if any),
- `manifest_cid`, `paths` (array), `signature` (GPG/SSH-sig).
- Past entries retained forever.
## 7. Guardrails (deny)
- Private/staging content never enters this repo.
- Deny common tool dirs: `.git/`, `.github/`, `.vscode/`, caches, temp files.
- Deny binaries by extension (see `.gitignore`).
## 8. Accessibility
- For any non-text source (e.g., a PDF elsewhere), store a **descriptive .md**:
- what it is, where it exists, date, and an accessible summary.
## 9. Examples
```
/legal/research/county/kane/zoning/20250828T140000Z_buffer_requirements.md
/legal/court/il_kane_circuit/23_ch_000123/filings/20250828T142500Z_plaintiff_motion.md
/naics/541611/20250828T150000Z_procurement_policy.md
/onet/architecture_and_engineering/20250828T160000Z_job_function_overview.md
```
# ipfs.kane-il.us — Content & Path Conventions
## 0. Scope
- Public-only repository for IPFS gateway publishing.
- Text formats only: `*.md`, `*.txt`, `*.jsonl`.
- No binaries (pdf, images, video, archives) — describe them in markdown for accessibility.
- All timestamps are **UTC**.
## 1. Top-level categories (roots)
```
/legal
/civics
/naics
/barter
/w3pbs
/onet
/_log # public minimal publish log
```
## 2. Naming rules (files & dirs)
- **Lowercase**, **ASCII**, **underscores** for word separators.
- Filenames must start with **digits-only ISO UTC timestamp**:
- `YYYYMMDDThhmmssZ_<slug>.md` (e.g., `20250828T132200Z_order_summary.md`)
## 3. Immutability
- No “latest” aliases, no mutable pointers.
- No per-directory index files; rely on gateway directory listing.
- Every publish is additive; removals are exceptional (court/admin error).
## 4. LEGAL
### 4.1 research (jurisdiction-first, typed entities)
Path template:
```
/legal/research/{scope}/{segment}/{subject}/...
```
- `scope ∈ {county|town|township|individual|organization}`
- If `scope=organization` or `individual`, use typed entity layering:
```
/legal/research/{scope}/{kind}/{name}/{subject}/...
kind ∈ {governance|economic|domestic|technical|infrastucture|virtual}
```
- Otherwise:
```
/legal/research/{scope}/{jurisdiction_name}/{subject}/...
```
Examples:
```
/legal/research/county/kane/hoa_governance/20250828T131010Z_summary.md
/legal/research/organization/governance/abc_hoa/dues_policy/20250828T131200Z_notes.md
```
### 4.2 court → cases
Path template:
```
/legal/court/{court_id}/{case_id}/(filings|evidence|orders|docket|notes|transcripts|exhibits)/
```
- `court_id` will follow Kane County authoritative naming.
- `case_id` sanitized to lowercase/underscores; original case identifier stored inside the markdown.
## 5. Other categories
- **civics/**: governance, policy, licenses, standards → plain markdown.
- **naics/**: subdirectories by NAICS code (e.g., `/naics/541611/...`).
- **barter/**: web2py assets and git-oriented text/config (no binaries).
- **w3pbs/**: mailing lists, streaming, chat, forums; html/gemini **as text** or markdown summaries.
- **onet/**: O*NET taxonomy (latest), directory names derived from current O*NET categories.
## 6. Publish log (public, minimal)
- Location: `/_log/publish.jsonl`
- One JSON object per line with fields:
- `utc` (ISO 8601 UTC string), `repo`, `commit`, `tag` (if any),
- `manifest_cid`, `paths` (array), `signature` (GPG/SSH-sig).
- Past entries retained forever.
## 7. Guardrails (deny)
- Private/staging content never enters this repo.
- Deny common tool dirs: `.git/`, `.github/`, `.vscode/`, caches, temp files.
- Deny binaries by extension (see `.gitignore`).
## 8. Accessibility
- For any non-text source (e.g., a PDF elsewhere), store a **descriptive .md**:
- what it is, where it exists, date, and an accessible summary.
## 9. Examples
```
/legal/research/county/kane/zoning/20250828T140000Z_buffer_requirements.md
/legal/court/il_kane_circuit/23_ch_000123/filings/20250828T142500Z_plaintiff_motion.md
/naics/541611/20250828T150000Z_procurement_policy.md
/onet/architecture_and_engineering/20250828T160000Z_job_function_overview.md
```