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
feat: add optional help text to field definitions (#34)
Add a helpText property to field definitions that displays an info icon
next to field labels. Clicking the icon opens a popover with guidance
text that supports **bold** and [links](url) via inline markdown.
Surfaces in: person detail, team detail, manager dashboard column
headers, field definition settings, and edit modals.
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: docs/DATA-FORMATS.md
+3Lines changed: 3 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -471,6 +471,7 @@ Stores custom field definitions for person-level and team-level fields. Created
471
471
"required": false,
472
472
"visible": true,
473
473
"primaryDisplay": true,
474
+
"helpText": "The primary area this person is currently focused on.",
474
475
"allowedValues": null,
475
476
"optionsRef": null,
476
477
"deleted": false,
@@ -488,6 +489,7 @@ Stores custom field definitions for person-level and team-level fields. Created
488
489
"required": false,
489
490
"visible": true,
490
491
"primaryDisplay": false,
492
+
"helpText": null,
491
493
"allowedValues": null,
492
494
"optionsRef": null,
493
495
"deleted": false,
@@ -507,6 +509,7 @@ Stores custom field definitions for person-level and team-level fields. Created
507
509
-`deleted` supports soft-delete — deleted fields are hidden from the UI but values are preserved.
508
510
-`allowedValues` is an array of strings for `constrained` fields (the set of selectable options), or `null` for other field types. Maximum 100 items, each up to 200 characters. When `optionsRef` is set, `allowedValues` is `null` in storage and resolved at runtime from the referenced field option set.
509
511
-`optionsRef` is an optional string referencing a named field option set (e.g., `"components"`). When set, the field's allowed values are sourced dynamically from `data/team-data/field-options/<optionsRef>.json` instead of from the static `allowedValues` array. The `GET /structure/field-definitions` API response resolves `optionsRef` fields by injecting the option values into `allowedValues` (with a `_resolvedFromOptions: true` flag). Defaults to `null`.
512
+
-`helpText` is an optional string (or `null`) providing guidance displayed to users via an info icon. Supports a minimal inline-markdown subset: `**bold**` and `[text](https://...)` links. Defaults to `null`.
510
513
- At most one person field can have `primaryDisplay: true`.
511
514
512
515
## Field Options — `data/team-data/field-options/<name>.json`
Copy file name to clipboardExpand all lines: fixtures/team-data/field-definitions.json
+7Lines changed: 7 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -8,6 +8,7 @@
8
8
"required": false,
9
9
"visible": true,
10
10
"primaryDisplay": true,
11
+
"helpText": "The primary area this person is currently focused on. This could be a **project name**, a **technical domain**, or a [team objective](https://example.com). Update this when focus shifts significantly.",
0 commit comments