Files
the-custodian/canon/standards/contrib-templates/upr-template.md
tegwick 0d978b1417 feat(canon): add contribution-convention v0.1, contrib/ templates, and first UPR artifact
- 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>
2026-02-28 17:28:13 +01:00

63 lines
1.2 KiB
Markdown

---
id: upr-YYYY-MM-DD--org--repo--slug
type: upr
target_org: <github-org-or-owner>
target_repo: <repository-name>
title: "Short description of the upstream PR"
status: draft
domain: custodian # change to your domain
related_workstream: null
state_hub_contribution_id: null
created: "YYYY-MM-DD"
updated: "YYYY-MM-DD"
local_component_path: "relative/path/in/this/repo/component.js"
target_upstream_file: "path/in/upstream/repo/component.js"
upstream_pr_url: null
---
# Upstream PR: <short description>
## Summary
_What this PR adds or fixes in the upstream project._
## Motivation
_Why we want this upstream rather than keeping it as a local fork.
What maintenance burden does upstreaming remove?_
## Local Component
**Path in this repo**: `<local_component_path>`
**Origin story**: _How/when this component was created locally._
## Target Upstream Location
**Repo**: `<target_org>/<target_repo>`
**File**: `<target_upstream_file>`
## Draft PR Body
```markdown
## Summary
_Fill in the PR summary for the upstream project here._
## Motivation
_Explain why the upstream project would benefit._
## Changes
-
## Testing
- [ ] Tests added
- [ ] Existing tests pass
```
## Notes
_Any upstream discussion, review feedback, or open questions._