Issues: templates, routing, and priority labels - #6
Conversation
The tracker had no template, so every report arrived in whatever shape the reporter chose and the maintainer asked the same questions back. issue_template was also the one thing community/profile still listed as missing. Forms rather than markdown templates. The outcome this milestone is judged on is that an issue arrives already carrying what it needs, and a markdown template cannot enforce that — the reporter can delete it and type one line. A form can mark a field required, and it can apply the type label itself, which removes the triage step rather than documenting it. What the forms mostly do is route. Nine limitations are documented in README on purpose, DECISIONS records what was already rejected, FINDINGS records what is measured versus guessed, and vulnerabilities belong in email, not the tracker. Left alone, all four arrive here as issues. CONTRIBUTING already told contributors to check DECISIONS and FINDINGS before a large change; the proposal form is that sentence made mechanical. The bug form asks for a commit SHA because there are no tags yet — milestone 4 fixes that, and until then the SHA is the only way to name a version. It asks for the OS because durability stops at fsync with no platform write barrier, so persistence bugs genuinely differ by platform. Blank issues stay enabled. There is no Discussions tab and no chat channel by choice, so the tracker is the only place left to ask a question, and a form would close that door. Labels: priority high, medium and low. The nine GitHub defaults already cover type, and priority was the only axis the PRD asked for that did not exist. No area labels — with zero external issues, splitting six packages into labels would be a taxonomy invented ahead of any evidence about what people actually file.
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 76d6716934
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
The form asks for a reproduction someone can run, then showed one that cannot compile: Document's identifier is Key rather than ID, its vectors are []float32, Add returns a DocID alongside the error, and engine.NewIndex does not exist — the constructor is New. Worse than the compile errors, the example did not demonstrate what it claimed. Add only records the corpus width when a document actually carries a vector, so a text-only first document leaves vecDim at zero and the second add sets it rather than colliding with it. Someone following the example would have watched it succeed and concluded they had misread the error. The replacement was compiled and run before being pasted here: two vectors of different non-zero widths, and the second Add returns an error satisfying errors.Is(err, engine.ErrDimMismatch). Asking reporters for runnable evidence while shipping an unrunnable sample is the kind of thing that teaches people not to trust the rest of the form.
|
@codex review |
|
Codex Review: Didn't find any major issues. Another round soon, please! Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
Summary
The issue tracker had no template, so reports arrived in whatever shape the reporter chose and the maintainer asked the same questions back.
issue_templatewas also the only itemcommunity/profilestill listed as missing.Changes
bug.ymlandproposal.yml— rather than markdown templates. The milestone is judged on issues arriving with what they need; a markdown template cannot enforce that, since the reporter can delete it and type one line. Forms mark fieldsrequiredand apply the type label themselves, which removes the triage step instead of documenting it.config.ymlroutes the four things that would otherwise arrive as issues: vulnerabilities to SECURITY.md, documented limitations to README, rejected designs to DECISIONS.md, unverified numbers to FINDINGS.md.high/medium/low). The nine GitHub defaults already cover type.CONTRIBUTING.md— "Before a large change" now links the proposal form it was describing, and says what apriority:label does and does not promise.Validation
make all— passespython3 -c "yaml.safe_load(...)"on all three files — parse cleangh label list— 12 (9 defaults + 3 priority)SECURITY.md,README.md#limitations,docs/DECISIONS.md,docs/FINDINGS.mdReview Focus
Risks / Notes
health_percentagewas already 100 before this PR whilefiles.issue_templatewas stillnull— the percentage is not computed over all seven items. Judge this by thefilesentry, not the number.