- canon/standards/contribution-convention_v0.1.md: master spec for BR/FR/EP/UPR artifact types, directory layout, frontmatter schema, ID schemes (EP-DOMAIN-NNN for extension points), status lifecycle, and relationship to State Hub - canon/standards/contrib-templates/: four template files (br, fr, ep, upr) - contrib/upstream-prs/2026-02-26--observablehq--framework--toc-sidebar-inject.md: first real UPR artifact — proposes injectTocTop() to Observable Framework Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
51 lines
1.1 KiB
Markdown
51 lines
1.1 KiB
Markdown
---
|
|
id: EP-DOMAIN-NNN
|
|
type: ep
|
|
ep_id: EP-DOMAIN-NNN
|
|
target_org: <github-org-or-owner>
|
|
target_repo: <repository-name>
|
|
title: "Short description of the extension point"
|
|
status: draft
|
|
domain: custodian # change to your domain
|
|
related_workstream: null
|
|
state_hub_contribution_id: null
|
|
created: "YYYY-MM-DD"
|
|
updated: "YYYY-MM-DD"
|
|
location: "src/file.ts:42"
|
|
upstream_issue_url: null
|
|
---
|
|
|
|
# Extension Point Proposal: EP-DOMAIN-NNN
|
|
|
|
## Summary
|
|
|
|
_One-paragraph description of the extension point: where in the upstream codebase
|
|
it would live, what it would enable, and who would benefit._
|
|
|
|
## Location
|
|
|
|
**File**: `<path/in/upstream/repo>`
|
|
**Line**: _approximate location where the hook/callback would be inserted_
|
|
|
|
## Proposed Interface
|
|
|
|
```typescript
|
|
// or Python, Rust, etc. — match the upstream project's language
|
|
interface ExtensionPoint {
|
|
// …
|
|
}
|
|
```
|
|
|
|
## Rationale
|
|
|
|
_Why this extension point is valuable. What use cases does it unlock?
|
|
Why should upstream accept it rather than keeping it local?_
|
|
|
|
## Implementation Sketch
|
|
|
|
_Brief notes on how upstream might implement this, if relevant._
|
|
|
|
## Notes
|
|
|
|
_References to related upstream issues, PRs, or discussions._
|