You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Nov 4, 2026. It is now read-only.
Repository navigation
This repository was archived by the owner on Nov 4, 2026. It is now read-only.
[finding] ObjectForm.tsx opens one doc comment with a doubled /** #4661
Tripped over while renaming ObjectFormProps for #4650 (PR #4660). Recorded, not claimed
and not swept in — #4650's surface is the rename, and this is unrelated to it.
The line
packages/plugin-form/src/ObjectForm.tsx, the doc comment above foldFormButtons, opens with
two /** lines in a row. On origin/main @ a99233fff that is line 67; anchor by the foldFormButtons declaration rather than by line number, since #4660 shifts it.
/**
/**
* Fold the structured, spec-aligned `buttons`/`defaults` surface
* (`@objectstack/spec` FormViewSchema; framework#1894 / #2998) down onto the
...
*/
function foldFormButtons(...)
Why it is observation-class, and may well be WONTFIX
Nothing is broken and nothing renders wrong. A block comment opened by the first /** runs to
the first */, so the second /** is just characters inside it; the JSDoc still attaches to foldFormButtons, and editors show the intended text. tsc, ESLint and Prettier all pass over
it today — it survived precisely because no tool has an opinion about it.
The only cost is to a reader who meets a malformed-looking comment opener and stops to work out
whether something was lost in a bad merge. Filed plainly rather than judged: it is a one-line
deletion if anyone agrees it is worth a commit, and a fair close if not.
Dispatched by the repo:objectui PM seat (session session_01RnQd8iMMUwXQEV1crFmQiQ), branch claude/issue-4661-doubled-doc-opener. First-touch grading: accepted, trivial class — verified on current origin/main: the doubled /** now sits at ObjectForm.tsx:82-83 (shifted by #4660 exactly as the card predicted; anchor by foldFormButtons, not line number).
Adjudication. Delete the one redundant opener line. Nothing else in this file is in scope.
Suggested route. Also run one cheap repo-wide grep for consecutive /** openers and report the count in the PR body — fix only this file per the card; if other instances exist, file them as one follow-up finding instead of sweeping them in. Changeset: run check-changeset-presence and comply with its verdict (a comment-only edit under a released package's src/ may still owe a patch changeset — the gate's word is final either way). No skip-changeset mechanism exists in objectui.
{
"issue": 4661,
"branch": "claude/issue-4661-doubled-doc-opener",
"pr_number": 4733,
"pr": "https://github.com/objectstack-ai/objectui/pull/4733",
"head_sha": "00825b5a5a26f6663e221b1f432ccef55befcaf3",
"status": "done",
"premise_still_valid": true,
"summary": "Deleted the one redundant `/**` opener line above `foldFormButtons` in packages/plugin-form/src/ObjectForm.tsx — a single-line deletion, nothing else in the file touched. Anchored by the declaration, not the line number: on merge-base baa89a1ea the doubled opener sat at 82-83 with the declaration at 96, matching the dispatch note exactly. The repo-wide sweep found this was the ONLY instance in the repository, so no follow-up finding was filed. The changeset gate failed the branch until a changeset was added, so one was added in the empty-frontmatter 'declares no release' form.",
"mechanism_assumptions_checked": [
"PM-mechanism: 'doubled /** now at 82-83, anchor by foldFormButtons' — CONFIRMED verbatim on merge-base baa89a1ea: bare `/**` at 82, real opener at 83, declaration at 96. The card's line 67 was the pre-#4660 position, shifted exactly as the card predicted.",
"PM-mechanism: 'a comment-only edit under a released package src/ may still owe a patch changeset; the gate's word is final' — CONFIRMED, and it is not hypothetical: check-changeset-presence.mjs exited 1 on this comment-only diff ('1 source file(s) of 1 released package(s) changed, and this change adds no changeset'). Complied.",
"Changeset FORM: chose the empty-frontmatter route the gate itself and AGENTS.md name as a first-class pass, not a workaround — foldFormButtons is module-private (reaches no published .d.ts) and comments are stripped from emitted JS, so the built output is byte-unchanged. Gate then confirmed: 'Every one of them has an EMPTY frontmatter — declared as releasing nothing, which is the explicit exemption and a complete answer to this gate.'",
"PM-mechanism: 'objectui has NO skip-changeset label' — CONFIRMED by construction; none applied, none exists. Sole label on the PR is `plugin`, applied by repo automation, not by me.",
"Sweep instruction: 'if other instances exist, file them as ONE follow-up finding' — precondition did NOT hold. Zero other instances repo-wide, so nothing was filed.",
"Sweep TRUSTWORTHINESS (self-imposed): an empty grep is indistinguishable from a broken pattern, so the pattern was validated against the pre-fix origin/main blob before its emptiness was believed — it does report `82:/**` / `83:/**` there. The zero is a real zero.",
"AGENTS.md test-invocation trap: ran the repo-root path-filter form, NOT `pnpm --filter @object-ui/plugin-form test` — the latter is the documented cwd trap that runs @object-ui/console's 22 files and reports green while running none of plugin-form's."
],
"gates": {
"plugin_form_tests": "PASS — `pnpm exec vitest run packages/plugin-form/` (repo root): Test Files 43 passed (43), Tests 422 passed (422), exit 0",
"type_check": "PASS — `pnpm exec turbo run type-check --filter=@object-ui/plugin-form`: 13 tasks successful, 13 total, exit 0",
"lint": "PASS — `pnpm exec turbo run lint --filter=@object-ui/plugin-form`: 2 tasks successful, exit 0; 550 problems / 0 errors (all pre-existing no-explicit-any warnings, none in the touched hunk)",
"check_changeset_presence": "PASS — 1 changeset declared, empty frontmatter accepted as the explicit exemption",
"check_changeset_no_major": "PASS — no changeset declares a major bump",
"check_control_bytes": "PASS — 4249 tracked text files scanned, OK",
"gate_union_head": "00825b5a5 — the whole union above was re-run AFTER the final commit, at this head; working tree confirmed clean (git status --porcelain empty) so the gated tree is exactly the pushed commit",
"ci": "in_progress at report time (mergeable_state: unstable). Not waited on, per the report-at-draft-PR-time rule."
},
"deviations": [
"Commit trailer: the harness default Co-Authored-By trailer carries a model identifier, which this dispatch forbids in commits/PR/code. Resolved by keeping attribution but dropping the model name — `Co-Authored-By: Claude <noreply@anthropic.com>` plus the session URL. No model identifier appears in the commit, PR or code.",
"Contract conflict surfaced, not silently resolved: the standing dev contract's 'scope tests with pnpm --filter <pkg>' is exactly the form objectui's AGENTS.md forbids as a documented false-green (vitest cwd trap). Followed AGENTS.md, which is binding in-repo, and used the repo-root path filter.",
"`gh` CLI is not on PATH in this shell (`gh: command not found`); all GitHub operations went through the GitHub MCP tools instead. No impact on the result."
],
"followups_filed": [],
"out_of_scope_findings": []
}
Sweep result in one line: consecutive /** opener lines, repo-wide — 1 instance total (this one), 0 remaining after the fix, so there is nothing to file as a follow-up.
Activity
yinlianghui commentedon Aug 15, 2026
Dispatched by the
repo:objectuiPM seat (sessionsession_01RnQd8iMMUwXQEV1crFmQiQ), branchclaude/issue-4661-doubled-doc-opener. First-touch grading: accepted, trivial class — verified on currentorigin/main: the doubled/**now sits atObjectForm.tsx:82-83(shifted by #4660 exactly as the card predicted; anchor byfoldFormButtons, not line number).Adjudication. Delete the one redundant opener line. Nothing else in this file is in scope.
Suggested route. Also run one cheap repo-wide grep for consecutive
/**openers and report the count in the PR body — fix only this file per the card; if other instances exist, file them as one follow-up finding instead of sweeping them in. Changeset: runcheck-changeset-presenceand comply with its verdict (a comment-only edit under a released package'ssrc/may still owe a patch changeset — the gate's word is final either way). No skip-changeset mechanism exists in objectui.Generated by Claude Code
yinlianghui commentedon Aug 15, 2026
{ "issue": 4661, "branch": "claude/issue-4661-doubled-doc-opener", "pr_number": 4733, "pr": "https://github.com/objectstack-ai/objectui/pull/4733", "head_sha": "00825b5a5a26f6663e221b1f432ccef55befcaf3", "status": "done", "premise_still_valid": true, "summary": "Deleted the one redundant `/**` opener line above `foldFormButtons` in packages/plugin-form/src/ObjectForm.tsx — a single-line deletion, nothing else in the file touched. Anchored by the declaration, not the line number: on merge-base baa89a1ea the doubled opener sat at 82-83 with the declaration at 96, matching the dispatch note exactly. The repo-wide sweep found this was the ONLY instance in the repository, so no follow-up finding was filed. The changeset gate failed the branch until a changeset was added, so one was added in the empty-frontmatter 'declares no release' form.", "mechanism_assumptions_checked": [ "PM-mechanism: 'doubled /** now at 82-83, anchor by foldFormButtons' — CONFIRMED verbatim on merge-base baa89a1ea: bare `/**` at 82, real opener at 83, declaration at 96. The card's line 67 was the pre-#4660 position, shifted exactly as the card predicted.", "PM-mechanism: 'a comment-only edit under a released package src/ may still owe a patch changeset; the gate's word is final' — CONFIRMED, and it is not hypothetical: check-changeset-presence.mjs exited 1 on this comment-only diff ('1 source file(s) of 1 released package(s) changed, and this change adds no changeset'). Complied.", "Changeset FORM: chose the empty-frontmatter route the gate itself and AGENTS.md name as a first-class pass, not a workaround — foldFormButtons is module-private (reaches no published .d.ts) and comments are stripped from emitted JS, so the built output is byte-unchanged. Gate then confirmed: 'Every one of them has an EMPTY frontmatter — declared as releasing nothing, which is the explicit exemption and a complete answer to this gate.'", "PM-mechanism: 'objectui has NO skip-changeset label' — CONFIRMED by construction; none applied, none exists. Sole label on the PR is `plugin`, applied by repo automation, not by me.", "Sweep instruction: 'if other instances exist, file them as ONE follow-up finding' — precondition did NOT hold. Zero other instances repo-wide, so nothing was filed.", "Sweep TRUSTWORTHINESS (self-imposed): an empty grep is indistinguishable from a broken pattern, so the pattern was validated against the pre-fix origin/main blob before its emptiness was believed — it does report `82:/**` / `83:/**` there. The zero is a real zero.", "AGENTS.md test-invocation trap: ran the repo-root path-filter form, NOT `pnpm --filter @object-ui/plugin-form test` — the latter is the documented cwd trap that runs @object-ui/console's 22 files and reports green while running none of plugin-form's." ], "gates": { "plugin_form_tests": "PASS — `pnpm exec vitest run packages/plugin-form/` (repo root): Test Files 43 passed (43), Tests 422 passed (422), exit 0", "type_check": "PASS — `pnpm exec turbo run type-check --filter=@object-ui/plugin-form`: 13 tasks successful, 13 total, exit 0", "lint": "PASS — `pnpm exec turbo run lint --filter=@object-ui/plugin-form`: 2 tasks successful, exit 0; 550 problems / 0 errors (all pre-existing no-explicit-any warnings, none in the touched hunk)", "check_changeset_presence": "PASS — 1 changeset declared, empty frontmatter accepted as the explicit exemption", "check_changeset_no_major": "PASS — no changeset declares a major bump", "check_control_bytes": "PASS — 4249 tracked text files scanned, OK", "gate_union_head": "00825b5a5 — the whole union above was re-run AFTER the final commit, at this head; working tree confirmed clean (git status --porcelain empty) so the gated tree is exactly the pushed commit", "ci": "in_progress at report time (mergeable_state: unstable). Not waited on, per the report-at-draft-PR-time rule." }, "deviations": [ "Commit trailer: the harness default Co-Authored-By trailer carries a model identifier, which this dispatch forbids in commits/PR/code. Resolved by keeping attribution but dropping the model name — `Co-Authored-By: Claude <noreply@anthropic.com>` plus the session URL. No model identifier appears in the commit, PR or code.", "Contract conflict surfaced, not silently resolved: the standing dev contract's 'scope tests with pnpm --filter <pkg>' is exactly the form objectui's AGENTS.md forbids as a documented false-green (vitest cwd trap). Followed AGENTS.md, which is binding in-repo, and used the repo-root path filter.", "`gh` CLI is not on PATH in this shell (`gh: command not found`); all GitHub operations went through the GitHub MCP tools instead. No impact on the result." ], "followups_filed": [], "out_of_scope_findings": [] }Sweep result in one line: consecutive
/**opener lines, repo-wide — 1 instance total (this one), 0 remaining after the fix, so there is nothing to file as a follow-up.Generated by Claude Code
Generated by Claude Code