Skip to content

Add PR template, CODEOWNERS, and issue templates#6

Merged
bb-connor merged 1 commit into
mainfrom
feat/contribution-flow-templates
May 7, 2026
Merged

Add PR template, CODEOWNERS, and issue templates#6
bb-connor merged 1 commit into
mainfrom
feat/contribution-flow-templates

Conversation

@bb-connor
Copy link
Copy Markdown
Contributor

Summary

Adds the contribution-flow scaffolding referenced from CONTRIBUTING.md: PR template, CODEOWNERS for load-bearing surfaces, and three issue templates (bug, feature, ADR). This PR also serves as the first verification that the eval workflow's PR-comment path actually fires — pushes to main correctly skip that step, so it's only exercised by a real PR.

Linked issue

None — direct follow-up to CONTRIBUTING.md (086fd8d). Will file an issue if the templates need iteration based on first-week usage.

ADRs

None — change is not load-bearing. The PR template, CODEOWNERS, and issue templates are repo plumbing under .github/ and don't touch the engine, schema, or eval surface.

Eval result

Local `make kb-eval-outcomes` from this branch:

```
4 eval(s) blocked. Phase 0 incomplete — see PHASE-0.md.
wrote ../vault/_meta/dashboards/eval-outcomes.md
```

Same as on `main` — this PR doesn't touch the eval surface. The CI run will post the same table as a comment shortly.

Pre-merge checklist

  • Linked issue ("None" justified above)
  • ADR referenced ("None" justified above)
  • `make kb-eval-outcomes` run locally; output pasted above
  • No new top-level vault folders without an ADR
  • Frontmatter validates on any new vault notes (no new vault notes)
  • Change is one coherent thing (.github/ repo plumbing)

Closes the loop on the contribution flow CONTRIBUTING.md describes.

(a) .github/PULL_REQUEST_TEMPLATE.md: bakes the four pieces
CONTRIBUTING.md asks for — linked issue, ADR reference, local
make kb-eval-outcomes result, pre-merge checklist. The kb-gate: ack
escape hatch is documented in an HTML comment but the literal
ack-marker string is intentionally NOT in the template (so the
Phase 2A gate doesn't false-positive on every PR).

(b) .github/CODEOWNERS: auto-requests @bb-connor review on changes to
load-bearing surfaces — PLAN/AGENTS/CLAUDE/CONTRIBUTING/README/LICENSE,
decisions/, chio-pack/eval/, kb-engine/, chio-pack-{pyproject.toml,
__init__.py}, .github/, Makefile, chio-pr-gate/, infra/, .env.example.
Vault content (spec/, episodes/, playbooks/, daily/, _meta/queries/)
is intentionally NOT covered — auto-requesting review on every typo
fix is noise.

(c) .github/ISSUE_TEMPLATE/{bug-report,feature-request,adr-proposal}.md:
match CONTRIBUTING's "open an issue first" advice. Bug template asks
for kb-status output and reminds the user to check Phase awareness.
Feature template asks for the phase mapping and whether an ADR is
required. ADR template mirrors decisions/ADR-NNNN structure (context,
decision, consequences, alternatives) and tells the user to file the
real ADR at decisions/ADR-NNNN-title.md after the issue converges.

(d) is this PR itself: opened as a draft to verify the eval workflow's
PR-comment path actually fires. The eval-outcomes table should appear
as an automated comment below shortly after CI completes.

Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 7, 2026

Outcome evals — 2026-05-07 17:25 UTC

Generated by chio-pack-eval Phase 0 skeleton. No real runners yet — see PHASE-0.md.

Eval Fixtures Status Notes
time-to-first-correct-fix 0 BLOCKED — fixtures have 0, need ≥ 8 (PHASE-0.md)
repeated-mistake-rate 0 BLOCKED — runner no fixtures glob; runner is Phase 1 deliverable
conformance-harness-recall 0 BLOCKED — fixtures have 0, need ≥ 20 (PHASE-0.md)
capability-error-explanation 0 BLOCKED — fixtures have 0, need ≥ 10 (PHASE-0.md)

Deferred (block on Phase 2)

  • signed-retrieval — blocked until phase-2b: Requires kb-engine/kb_engine/receipt/envelope.py — see PLAN.md Moonshot 2.
  • pr-impact-gate-precision-recall — blocked until phase-2a: Requires chio-pr-gate/ — see PLAN.md Moonshot 1.

bb-connor added a commit that referenced this pull request May 7, 2026
…ugin

(a) Two seeded episodes matching the post-`make kb-migrate-seeds` shape:

    vault/episodes/capability-revocation-architecture.md
      - referenced by spec/capability-revocation.md
      - typed authoritative_files + tests, summary as opening prose,
        constraints as `## Constraints` section.

    vault/episodes/guard-policy-fail-closed.md
      - referenced by BOTH spec/guard-pipeline.md AND spec/policy-compiler.md
        (shared lineage — the fail-closed obligation runs across both).
      - type: episode-workflow-constraint (from the seed's
        type: workflow_constraint).

    Plus a third (mcp-sdk-conformance.md) for completeness — referenced
    by the new spec below.

(b) vault/spec/sdk-conformance.md — the fifth worked spec, completing the
    Capability/Receipt/Guard/Policy/Standard quintet of chio-node labels.
    chio-node: Standard. Five normative claims (verdict-matrix as the
    only canonical source; transport-roundtrip + behavioral coverage
    both required; cross-language harness identical; protocol changes
    update verdict-matrix in same PR; conformance failures must receipt).
    Cites real arc paths from chio-mcp-adapter/, chio-mcp-edge/,
    chio-conformance/verdict_matrix/, tests/conformance/peers/{python,js}/.
    Lineage from episode.mcp-sdk-conformance.

(d) Second custom Obsidian plugin: kb-staleness-badge.
    - Reads `last-validated:` from the active note's frontmatter.
    - Renders a colored pill (green/yellow/orange/red) in the title
      bar based on day-age. Hover for the threshold reminder.
    - Thresholds (30/90/180) match stale-specs.md, the morning brief,
      and release-qualification's release-blocker rule.
    - Works in real time: re-renders on active-leaf-change and on
      metadataCache changes to the active file.
    - Read-only. Does NOT bump last-validated automatically — that's
      a deliberate human action.
    - File layout mirrors episode-promoter exactly (manifest.json,
      package.json, tsconfig, esbuild.config.mjs, src/main.ts,
      versions.json, version-bump.mjs, README.md, .gitignore).
    - Added to .obsidian/community-plugins.json (now 10 plugins) and
      un-ignored in .gitignore (manifest.json + versions.json tracked).

(c) PR #6 merge + delete-branch in a follow-up after this push.

Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
@bb-connor bb-connor marked this pull request as ready for review May 7, 2026 18:12
@bb-connor bb-connor merged commit 400af3b into main May 7, 2026
1 check passed
@bb-connor bb-connor deleted the feat/contribution-flow-templates branch May 7, 2026 18:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant