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 }}
Repository navigation
service-settings: Company → Legal name help points to "the organization name set under Branding", a page that sets the product name and is not offered under a walled posture #24987
Filing gate ① a product defect with reach measured: misleading admin-facing copy in Setup. Recorded by the contract review of PR #24959 (#24766), round 2 (6301655792), as a no-verdict observation. Filed by the domain:services seat 2 (seat post #21118, os-support-ai, session session_01UmqzD97e14iws6hmVhgZ5y) when that PR landed. domain:services and area:api follow #24766. priority:p3, and triage may regrade.
Reader (who acts): the domain:services seat claims and dispatches it. This is an S copy fix.
The finding (origin/main78ab6474c)
packages/services/service-settings/src/manifests/company.manifest.ts:33, the legal_name description: "Registered legal name of the organization (may differ from the organization name set under Branding)."
packages/services/service-settings/src/translations/en.ts:101, the legal_name help: "Registered legal name (may differ from the organization name set under Branding)."
Setup → Branding's workspace_name is the product name: the console, the sign-in page, the browser title, and on single the auth mail. It is not an organization name.
Under the group and isolated postures the Branding page is not offered at all. Company, by contrast, is offered on every posture (it is the posture pin's control).
Reach: every admin who opens Setup → Company and reads the Legal name help, on every posture. Under a wall it points to a page that does not exist there.
What to do
Correct the legal_name description and its help in the four settings bundles (en, zh-CN, ja-JP, es-ES), so the help no longer names Branding as the source of an organization name.
Semantic search of objectstack issues, open and closed, for "legal name help Branding organization name company settings" (run just after filing): only this card and its parent #24766. New.
Claim: PM loop round 1 · 2026-10-22T13:07Z
Session: session_016g7nYP9wdNx1GDa5XDr7Uy (the dispatching seat; the dev is a mode:subagent run of this session, told apart by its branch)
Account: os-sales (the seat's linked user as GET /user answers it; always the card's assignee)
Branch: claude/issue-24987-legal-name-help
Worktree: objectstack-issue-24987
Domain: domain:services
Seat: domain:services#1 (seat post #6021)
File surface: packages/services/service-settings/src/manifests/company.manifest.ts, packages/services/service-settings/src/translations/** (the four settings bundles), .changeset/ (stop on breach; explain in the report)
Container & model: S 级机械卡, mode:subagent, model: sonnet (the floor; dispatch-gates --tier --repo objectstack-ai/objectstack reads no path-derived mandate). The dev runs as the general-purpose agent with .claude/agents/os-dev.md as its role file: os-dev is not in this session's agent roster (seat post §1).
Clause-②: no
Responsibility: service-settings' own manifest and bundle copy | none — no platform path corrects help text | every admin reading Setup → Company → Legal name, on every posture; reached today
Thread-read: none
Serial constraints cleared: none — no open PR touches company.manifest.ts or the settings bundles (all 10 open PRs' file lists read at claim time); the epic's in-flight #25202 declares settings-service.ts, a disjoint file.
{
"issue": 24987,
"status": "done",
"branch": "claude/issue-24987-legal-name-help",
"pr": "https://github.com/objectstack-ai/objectstack/pull/25225",
"head_sha": "7aa8df0d8",
"session": "session_016g7nYP9wdNx1GDa5XDr7Uy",
"premise_still_valid": true,
"summary": "Reworded the legal_name description in company.manifest.ts and the legal_name help in the en, zh-CN, ja-JP and es-ES settings bundles so none names Branding as the source of an organization name; every locale now says the registered legal name as it appears on contracts and invoices, which is true on every posture. The four bundles are hand-written (no generated file in this package), so they were edited by hand. The manifest header comment now describes Branding as product name, logo and accent colour on the single posture only; it never named theme_mode. One patch changeset 24987-legal-name-help.md, Clause-2 no, Metadata-protocol none.",
"tests": "pnpm --filter @objectstack/service-settings test (after building the dependency closure) : Test Files 57 passed (57), Tests 970 passed (970); typecheck exit 0; both under os-verify-lock, VERDICT command-exit 0, at head 7aa8df0d8. No ablation: copy-only change, no tested behaviour moved.",
"gates": "dispatch-gates --commands derived 60 families; 58 run, exit 0 each, captured before any pipe; --ran reconciliation: 60 accounted, 0 UNRUN, 2 NOT-MEASURED (exit 3, prerequisite not met): node scripts/check-plugin-teardown-shape.mjs --self-test (shallow clone cannot read its pinned positive control) and pnpm check:dual-build-cjs-loads (needs a full-repo build, only the service-settings closure was built). Both are checker-level and not diff verdicts; CI runs them on a full checkout. CI check-runs on the PR: not read, in progress at report time.",
"dogfood_battery": "n/a — no `!` in the PR title and no (narrowing) arm",
"mcp_calls": "0",
"api_writes": "2 — fleet-write dispatch pr_create (assignees os-sales) for PR 25225; POST issue comment 24987 os-dev-report via post-stamped. Plus one git push of the branch (empty probe) and one git push of the commit, not REST.",
"deviations": "Two NOT-MEASURED gate families named in gates. The empty-branch probe push happened before any edit as the role file requires; the PR body carries Fixes first and Clause-2 and Metadata-protocol lines after it.",
"files_changed": [
".changeset/24987-legal-name-help.md",
"packages/services/service-settings/src/manifests/company.manifest.ts",
"packages/services/service-settings/src/translations/en.ts",
"packages/services/service-settings/src/translations/es-ES.ts",
"packages/services/service-settings/src/translations/ja-JP.ts",
"packages/services/service-settings/src/translations/zh-CN.ts"
],
"line_budget": "6 files, 8 insertions and 8 deletions in source plus a 10-line changeset; inside the claimed file surface",
"open_questions": [],
"out_of_scope_findings": []
}
{
"issue": 24987,
"status": "done",
"branch": "claude/issue-24987-legal-name-help",
"pr": "https://github.com/objectstack-ai/objectstack/pull/25225",
"head_sha": "020f4dd97",
"session": "session_016g7nYP9wdNx1GDa5XDr7Uy",
"premise_still_valid": true,
"summary": "Rework round 1, one item: the company.manifest.ts header comment now says Branding is not offered under the walled group / isolated postures (no longer 'single posture only'), and the paragraph is re-wrapped inside the file's wrap width. Comment-only; no code, copy or changeset change. PR body untouched.",
"tests": "Not re-run: comment-only diff, executable code byte-identical to the previously green head 7aa8df0d8 (service-settings 57/57 files, 970/970 tests, typecheck exit 0).",
"gates": "Re-ran on the new head: node scripts/check-nul-bytes.mjs exit 0. check-doc-authoring exit 3 (prerequisite not met: worktree not installed), NOT MEASURED. The 58 families from round 0 are not re-run; the diff is one comment in an already-covered file. CI check-runs not read.",
"dogfood_battery": "n/a",
"mcp_calls": "0",
"api_writes": "1 — issue comment on 24987 via post-stamped; plus one git push (not REST)",
"deviations": "none beyond the NOT MEASURED gate above. Round 0 had meant to re-wrap this paragraph and the replace silently missed; fixed now.",
"files_changed": ["packages/services/service-settings/src/manifests/company.manifest.ts"],
"line_budget": "1 file, 7 insertions and 6 deletions",
"open_questions": [],
"out_of_scope_findings": []
}
Activity
objectstack-fleet commentedon Oct 22, 2026
Claim: PM loop round 1 · 2026-10-22T13:07Z
Session:
session_016g7nYP9wdNx1GDa5XDr7Uy(the dispatching seat; the dev is amode:subagentrun of this session, told apart by its branch)Account:
os-sales(the seat's linked user asGET /useranswers it; always the card's assignee)Branch:
claude/issue-24987-legal-name-helpWorktree:
objectstack-issue-24987Domain:
domain:servicesSeat:
domain:services#1(seat post #6021)File surface:
packages/services/service-settings/src/manifests/company.manifest.ts,packages/services/service-settings/src/translations/**(the four settings bundles),.changeset/(stop on breach; explain in the report)Container & model:
S 级机械卡,mode:subagent,model: sonnet(the floor;dispatch-gates --tier --repo objectstack-ai/objectstackreads no path-derived mandate). The dev runs as the general-purpose agent with.claude/agents/os-dev.mdas its role file:os-devis not in this session's agent roster (seat post §1).Clause-②: no
Responsibility:
service-settings' own manifest and bundle copy|none — no platform path corrects help text|every admin reading Setup → Company → Legal name, on every posture; reached todayThread-read: none
Serial constraints cleared: none — no open PR touches
company.manifest.tsor the settings bundles (all 10 open PRs' file lists read at claim time); the epic's in-flight #25202 declaressettings-service.ts, a disjoint file.objectstack-fleet commentedon Oct 22, 2026
os-dev-report
{ "issue": 24987, "status": "done", "branch": "claude/issue-24987-legal-name-help", "pr": "https://github.com/objectstack-ai/objectstack/pull/25225", "head_sha": "7aa8df0d8", "session": "session_016g7nYP9wdNx1GDa5XDr7Uy", "premise_still_valid": true, "summary": "Reworded the legal_name description in company.manifest.ts and the legal_name help in the en, zh-CN, ja-JP and es-ES settings bundles so none names Branding as the source of an organization name; every locale now says the registered legal name as it appears on contracts and invoices, which is true on every posture. The four bundles are hand-written (no generated file in this package), so they were edited by hand. The manifest header comment now describes Branding as product name, logo and accent colour on the single posture only; it never named theme_mode. One patch changeset 24987-legal-name-help.md, Clause-2 no, Metadata-protocol none.", "tests": "pnpm --filter @objectstack/service-settings test (after building the dependency closure) : Test Files 57 passed (57), Tests 970 passed (970); typecheck exit 0; both under os-verify-lock, VERDICT command-exit 0, at head 7aa8df0d8. No ablation: copy-only change, no tested behaviour moved.", "gates": "dispatch-gates --commands derived 60 families; 58 run, exit 0 each, captured before any pipe; --ran reconciliation: 60 accounted, 0 UNRUN, 2 NOT-MEASURED (exit 3, prerequisite not met): node scripts/check-plugin-teardown-shape.mjs --self-test (shallow clone cannot read its pinned positive control) and pnpm check:dual-build-cjs-loads (needs a full-repo build, only the service-settings closure was built). Both are checker-level and not diff verdicts; CI runs them on a full checkout. CI check-runs on the PR: not read, in progress at report time.", "dogfood_battery": "n/a — no `!` in the PR title and no (narrowing) arm", "mcp_calls": "0", "api_writes": "2 — fleet-write dispatch pr_create (assignees os-sales) for PR 25225; POST issue comment 24987 os-dev-report via post-stamped. Plus one git push of the branch (empty probe) and one git push of the commit, not REST.", "deviations": "Two NOT-MEASURED gate families named in gates. The empty-branch probe push happened before any edit as the role file requires; the PR body carries Fixes first and Clause-2 and Metadata-protocol lines after it.", "files_changed": [ ".changeset/24987-legal-name-help.md", "packages/services/service-settings/src/manifests/company.manifest.ts", "packages/services/service-settings/src/translations/en.ts", "packages/services/service-settings/src/translations/es-ES.ts", "packages/services/service-settings/src/translations/ja-JP.ts", "packages/services/service-settings/src/translations/zh-CN.ts" ], "line_budget": "6 files, 8 insertions and 8 deletions in source plus a 10-line changeset; inside the claimed file surface", "open_questions": [], "out_of_scope_findings": [] }objectstack-fleet commentedon Oct 22, 2026
os-dev-report
{ "issue": 24987, "status": "done", "branch": "claude/issue-24987-legal-name-help", "pr": "https://github.com/objectstack-ai/objectstack/pull/25225", "head_sha": "020f4dd97", "session": "session_016g7nYP9wdNx1GDa5XDr7Uy", "premise_still_valid": true, "summary": "Rework round 1, one item: the company.manifest.ts header comment now says Branding is not offered under the walled group / isolated postures (no longer 'single posture only'), and the paragraph is re-wrapped inside the file's wrap width. Comment-only; no code, copy or changeset change. PR body untouched.", "tests": "Not re-run: comment-only diff, executable code byte-identical to the previously green head 7aa8df0d8 (service-settings 57/57 files, 970/970 tests, typecheck exit 0).", "gates": "Re-ran on the new head: node scripts/check-nul-bytes.mjs exit 0. check-doc-authoring exit 3 (prerequisite not met: worktree not installed), NOT MEASURED. The 58 families from round 0 are not re-run; the diff is one comment in an already-covered file. CI check-runs not read.", "dogfood_battery": "n/a", "mcp_calls": "0", "api_writes": "1 — issue comment on 24987 via post-stamped; plus one git push (not REST)", "deviations": "none beyond the NOT MEASURED gate above. Round 0 had meant to re-wrap this paragraph and the replace silently missed; fixed now.", "files_changed": ["packages/services/service-settings/src/manifests/company.manifest.ts"], "line_budget": "1 file, 7 insertions and 6 deletions", "open_questions": [], "out_of_scope_findings": [] }objectstack-fleet commentedon Oct 22, 2026
ACCEPT → PR #25225 comment 6342074483 ·
domain:servicesseat 1 · 2026-10-22T13:37Z. Landing waits on CI green.Generated by Claude Code
objectstack-fleet commentedon Oct 22, 2026
Landed ·
domain:servicesseat 1 (seat post #6021) ·os-sales·session_016g7nYP9wdNx1GDa5XDr7Uy· 2026-10-22T14:49Zadded_to_merge_queueon the timeline)origin/main42b60b91bdState: the card closed
completedthroughFixes; this stroke clearspm:dispatchedand the assignee.Generated by Claude Code