Skip to content

Commit 43b4715

Browse files
docs(github): add issue forms that ask for the ObjectOS edition (#26173)
<!-- claude-projects-attribution: {"github_login":"os-steve"} --> _Requested by **Steve** · [project thread](https://claude.ai/code/project/chan_01FdL1XeUyvVNxLreh3F4Qi9?thread=cmsg_01FdL1XeUyvVNxLreh3F4Qi9BsoHYhn9dhaC43DMJY7Ff1)_ Fixes #26157 Clause-②: no Metadata-protocol: none ## What changed This repository is the one public issue tracker for every ObjectOS edition, so a report now says which edition it comes from. Three new files under `.github/ISSUE_TEMPLATE/` (none existed at `601c7738`) and one paragraph in `CONTRIBUTING.md`. No labels are added by either form and no label is created; the triage seat labels. ### Rendered: `bug-report.yml` ("Bug report", "Something in ObjectOS does not work the way it should.") | # | Element | id | Label | Required | |---|---|---|---|---| | 1 | dropdown | `edition` | Edition | **yes** | | 2 | input | `version` | Version | no | | 3 | textarea | `what-happened` | What happened / What you expected | no | | 4 | textarea | `steps` | Steps (placeholder 1. 2. 3.) | no | Edition options, in order: `ObjectOS Community (self-hosted, this repository's code)` · `ObjectOS Cloud (cloud.objectos.ai)` · `ObjectOS Enterprise (licensed, self-managed)` · `Not sure`. Version's help text names `os --version` (oclif's built-in flag on the `os` bin) and the build shown under About in the Console's help menu (`ui/packages/app-shell/src/layout/AboutDialog.tsx`). ### Rendered: `feature-request.yml` ("Feature request", "Something ObjectOS should do that it does not do today.") The same four fields with the same ids, labels, options and `required` flags; only the descriptions are worded for a request (what ObjectOS does today and what you expected; the steps that reach the place where the feature is missing). ### Rendered: `config.yml` `blank_issues_enabled: true` (seats keep filing through the relay with their own body shape) and one contact link, **Documentation** → `https://objectstack.ai/docs`. That address is the repository's own docs site: `SITE_ORIGIN` in `apps/docs/lib/site.ts` is `https://objectstack.ai`, and `README.md` and `CONTRIBUTING.md` already link `/docs` as the published docs site. ### `CONTRIBUTING.md` One paragraph at the end of **Community**: this repository is the public tracker for every edition (Community, Cloud, Enterprise); say the edition, the forms ask for it; Cloud and Enterprise reports are triaged by the cloud seat and may be moved to the repository where that code lives. ## How it was verified (head `9ce387ca`) - **YAML parse + schema.** Each file parsed with `yaml@2.9.1` (`parseDocument`, zero errors) and validated with `ajv@8.20.0` against SchemaStore's `github-issue-forms.json` (the two forms) and `github-issue-config.json` (`config.yml`): `VERDICT PASS (0 bad)`, exit 0. Negative control on mutated copies (top-level `description` dropped, `type: dropdwn`, `blank_issues_enabled: "yes"`): `VERDICT FAIL (3 bad)`, exit 1, one named error per file. - **Field-by-field against GitHub's docs**, read from `github/docs` main (`syntax-for-issue-forms.md`, `syntax-for-githubs-form-schema.md` with its `form-schema` reusables, `configuring-issue-templates-for-your-repository.md`): - top level: `name`, `description` and `body` are the three required keys and all are present; none of the optional `labels`, `assignees`, `title`, `type`, `projects` is used; - every element `type` is in the documented set (`dropdown`, `input`, `textarea`) and carries the required `attributes.label`; - `id`: "Can only use alpha-numeric characters, `-`, and `_`. Must be unique in the form definition." (`edition`, `version`, `what-happened`, `steps`); - dropdown `options`: "Cannot be empty and all choices must be distinct" (4 distinct); no `default` is set, so the "None"/"n/a" restriction does not arise; - `validations.required` "Prevents form submission until element is completed. Only for public repositories." It is set on Edition alone, and the repository reads `visibility: public`; - `config.yml`: `blank_issues_enabled: true` shows the Blank issue option to everyone; the contact link carries `name`, `url`, `about`; both forms and the config take effect only once merged to the default branch. - **The live acceptance** (New issue offers Bug report / Feature request / blank; the Bug report form refuses submission without an Edition) is read only from the default branch, so it is observable after merge, not from this PR. - **Governed surface:** `node scripts/pm/check-governed-merges.mjs --test` on the four paths: `0 of 4 path(s) hit the register`, exit 0. - **Gates:** `node scripts/pm/dispatch-gates.mjs --commands --repo objectstack-ai/objectstack` derived 20 commands; all 20 exit 0, each exit taken before any pipe; `--ran` reconciliation: `20 run, 0 NOT-MEASURED, 0 UNRUN`. Also `node scripts/pr-labels.mjs --self-test` (its roster sits under `.github`): `VERDICT: pr-labels self-test PASSED`. - **Changeset:** none. Repository config and docs only, nothing ships in any package's `files[]`, so this carries `skip-changeset`. ## Acceptance notes - Only Edition is `required: true`, as the card lists. If triage wants What happened required on the bug form too, it is a one-line follow-up. - A second docs host, `https://docs.objectos.ai`, is named in `LICENSING.md` for the commercial editions. The contact link points at this repository's own docs site; a second link for the commercial docs is a one-line change if the seat wants it. --- _Generated by [Claude Code](https://claude.ai/code/session_01Qo38qkqPonKzLDqgv8GqU1)_ --------- Co-authored-by: Claude <noreply@anthropic.com>
1 parent fa33378 commit 43b4715

4 files changed

Lines changed: 79 additions & 0 deletions

File tree

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
name: Bug report
2+
description: Something in ObjectOS does not work the way it should.
3+
body:
4+
- type: dropdown
5+
id: edition
6+
attributes:
7+
label: Edition
8+
description: Which ObjectOS edition did you see this in?
9+
options:
10+
- ObjectOS Community (self-hosted, this repository's code)
11+
- ObjectOS Cloud (cloud.objectos.ai)
12+
- ObjectOS Enterprise (licensed, self-managed)
13+
- Not sure
14+
validations:
15+
required: true
16+
- type: input
17+
id: version
18+
attributes:
19+
label: Version
20+
description: The output of `os --version`, or the build shown under About in the Console's help menu.
21+
- type: textarea
22+
id: what-happened
23+
attributes:
24+
label: What happened / What you expected
25+
description: What you saw, and what you expected to see instead. Paste error messages as text.
26+
- type: textarea
27+
id: steps
28+
attributes:
29+
label: Steps
30+
description: The steps that make it happen, starting from a fresh start if you can.
31+
placeholder: |
32+
1.
33+
2.
34+
3.

‎.github/ISSUE_TEMPLATE/config.yml‎

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
blank_issues_enabled: true
2+
contact_links:
3+
- name: Documentation
4+
url: https://objectstack.ai/docs
5+
about: The published documentation site. Check it before you file an issue.
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
name: Feature request
2+
description: Something ObjectOS should do that it does not do today.
3+
body:
4+
- type: dropdown
5+
id: edition
6+
attributes:
7+
label: Edition
8+
description: Which ObjectOS edition do you want this in?
9+
options:
10+
- ObjectOS Community (self-hosted, this repository's code)
11+
- ObjectOS Cloud (cloud.objectos.ai)
12+
- ObjectOS Enterprise (licensed, self-managed)
13+
- Not sure
14+
validations:
15+
required: true
16+
- type: input
17+
id: version
18+
attributes:
19+
label: Version
20+
description: The output of `os --version`, or the build shown under About in the Console's help menu.
21+
- type: textarea
22+
id: what-happened
23+
attributes:
24+
label: What happened / What you expected
25+
description: What ObjectOS does today, and what you expected it to do instead.
26+
- type: textarea
27+
id: steps
28+
attributes:
29+
label: Steps
30+
description: The steps that take you to the place where the feature is missing.
31+
placeholder: |
32+
1.
33+
2.
34+
3.

‎CONTRIBUTING.md‎

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -313,6 +313,12 @@ verified it.
313313
and feature requests
314314
- **[Documentation](https://objectstack.ai/docs)** — the published docs site
315315

316+
This repository is the one public issue tracker for every ObjectOS edition: Community
317+
(the code in this repository), Cloud and Enterprise. Say which edition you run when you
318+
open an issue; the Bug report and Feature request forms ask for it. Cloud and Enterprise
319+
reports are triaged by the ObjectOS Cloud team and may be moved to the repository where
320+
that code lives.
321+
316322
## License
317323

318324
By contributing, you agree that your contributions will be licensed under the

0 commit comments

Comments
 (0)