Skip to content

Add content for the "Built-in options" section#274

Merged
alexander-yevsyukov merged 16 commits intomasterfrom
doc-set-6
Mar 2, 2026
Merged

Add content for the "Built-in options" section#274
alexander-yevsyukov merged 16 commits intomasterfrom
doc-set-6

Conversation

@alexander-yevsyukov
Copy link
Copy Markdown
Collaborator

@alexander-yevsyukov alexander-yevsyukov commented Feb 27, 2026

This PR adds the content of the "Built-in options" documentation section.

Other notable changes

  • Bump minimatch from 10.1.1 to 10.2.4 in /docs/_preview as suggested by Dependabot.

Copilot AI review requested due to automatic review settings February 27, 2026 20:42
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds the missing “Built-in options” documentation section for Spine Validation and updates the snapshot version references.

Changes:

  • Adds a new “Built-in options” doc section (landing page + 4 focused subpages) and wires it into the docs sidenav.
  • Bumps snapshot version from 2.0.0-SNAPSHOT.399 to .400 across Gradle/Maven and the generated dependency report.
  • Archives the built-in-options documentation plan task after completion.

Reviewed changes

Copilot reviewed 13 out of 13 changed files in this pull request and generated no comments.

Show a summary per file
File Description
version.gradle.kts Bumps validationVersion snapshot to .400.
pom.xml Bumps Maven project version to .400.
docs/data/docs/validation/2-0-0-snapshot/sidenav.yml Turns “Built-in options” into a nav group with child pages.
docs/content/docs/validation/03-built-in-options/_index.md Adds landing page content and links to child pages.
docs/content/docs/validation/03-built-in-options/field-level-options.md New page documenting field-level validation options.
docs/content/docs/validation/03-built-in-options/oneof-fields.md New page documenting oneof-level choice requirement.
docs/content/docs/validation/03-built-in-options/message-level-options.md New page documenting message-level (require) rules.
docs/content/docs/validation/03-built-in-options/repeated-and-map-fields.md New page documenting collection-specific options.
docs/_examples Updates docs examples submodule pointer.
dependencies.md Updates generated dependency report to .400 and regenerates timestamps.
.agents/tasks/validation-documentation-plan.md Marks “Built-in options” task as DONE.
.agents/tasks/built-in-options-plan.md Removes the active plan file (moved to archive).
.agents/tasks/archive/built-in-options-plan.md Adds archived plan content for traceability.
Comments suppressed due to low confidence (4)

docs/data/docs/validation/2-0-0-snapshot/sidenav.yml:42

  • This nav entry will render a parent item titled “Built-in options” that contains a child item also titled “Built-in options”, which is confusing/duplicative in the sidebar. Consider making the parent item the clickable landing page (add file_path: 03-built-in-options at the parent level) and remove/rename the child (e.g., rename it to “Overview”), or drop the duplicate child entirely.
    - page: Built-in options
      key: 03-built-in-options
      children:
        - page: Built-in options
          file_path: 03-built-in-options

docs/content/docs/validation/03-built-in-options/_index.md:34

  • These intra-site links use .md extensions. If this site is built with Hugo (as the front matter suggests), rendered page URLs typically won’t include .md, which can lead to broken links in the published docs. Prefer linking to the page permalink (e.g., field-level-options/) or using Hugo relref/ ref shortcodes if the project uses them.
- **Most field constraints** (presence, bounds, patterns, nested validation, dependencies):  
  [Field-level options](field-level-options.md)
- **Enforce “one of these fields must be set” in a `oneof`:**  
  [Options for `oneof` fields](oneof-fields.md)
- **Cross-field rules on a message (“at least one group is set”):**  
  [Message-level options](message-level-options.md)
- **Collections (`repeated` / `map`) — non-empty, uniqueness, per-element validation:**  
  [Options for `repeated` and `map` fields](repeated-and-map-fields.md)

docs/content/docs/validation/03-built-in-options/oneof-fields.md:51

  • Same issue as the landing page: linking to message-level-options.md may not resolve on the published site if URLs don’t include source file extensions. Link to the page permalink or use the site’s standard internal-link mechanism.
  [Message-level options](message-level-options.md) with `(require).fields` and include `oneof`

docs/content/docs/validation/03-built-in-options/_index.md:42

  • The “Source of truth” section links to the same spine/options.proto URL twice with nearly identical wording. Consider consolidating into a single sentence/link to reduce redundancy and future edit surface.
This catalog is based on the non-deprecated, validation-related options defined in
[spine/options.proto](https://github.com/SpineEventEngine/base-libraries/blob/master/base/src/main/proto/spine/options.proto).

For the canonical option definitions, see `spine/options.proto` in the Spine base libraries
on GitHub: [spine/options.proto](https://github.com/SpineEventEngine/base-libraries/blob/master/base/src/main/proto/spine/options.proto).

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@alexander-yevsyukov alexander-yevsyukov marked this pull request as ready for review February 27, 2026 20:44
@alexander-yevsyukov alexander-yevsyukov self-assigned this Feb 27, 2026
Copilot AI review requested due to automatic review settings February 27, 2026 20:54
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 14 out of 15 changed files in this pull request and generated no new comments.

Files not reviewed (1)
  • docs/_preview/package-lock.json: Language not supported
Comments suppressed due to low confidence (5)

docs/data/docs/validation/2-0-0-snapshot/sidenav.yml:42

  • The parent nav item for “Built-in options” no longer has a file_path, which can prevent the landing page from being reachable/clickable in the sidebar (depending on the nav renderer). Consider keeping file_path: 03-built-in-options on the parent item and keeping children under it, rather than duplicating “Built-in options” as the first child.
    - page: Built-in options
      key: 03-built-in-options
      children:
        - page: Built-in options
          file_path: 03-built-in-options

docs/content/docs/validation/03-built-in-options/_index.md:34

  • These links point to *.md files, but the sidebar file_path entries use extension-less paths (e.g., 03-built-in-options/field-level-options). If the site generator serves pages by permalinks (common), *.md links may 404. Prefer using the site’s canonical internal-link format (e.g., relref/ref shortcodes) or link to the generated page paths instead of the source filenames.
- **Most field constraints** (presence, bounds, patterns, nested validation, dependencies):  
  [Field-level options](field-level-options.md)
- **Enforce “one of these fields must be set” in a `oneof`:**  
  [Options for `oneof` fields](oneof-fields.md)
- **Cross-field rules on a message (“at least one group is set”):**  
  [Message-level options](message-level-options.md)
- **Collections (`repeated` / `map`) — non-empty, uniqueness, per-element validation:**  
  [Options for `repeated` and `map` fields](repeated-and-map-fields.md)

docs/content/docs/validation/03-built-in-options/oneof-fields.md:52

  • This cross-page link uses a .md filename; if the docs are routed by permalinks, this may break for the rendered site. Use the same internal-link approach as other docs pages (e.g., canonical page path or relref/ref) to ensure the link resolves after build.
  [Message-level options](message-level-options.md) with `(require).fields` and include `oneof`
  group names.

docs/content/docs/validation/03-built-in-options/repeated-and-map-fields.md:27

  • These headings include trailing whitespace at line end, which tends to create noisy diffs and can trip markdown linters. Remove the trailing spaces after the closing backticks.
## Presence: `(required)` 

docs/content/docs/validation/03-built-in-options/repeated-and-map-fields.md:39

  • These headings include trailing whitespace at line end, which tends to create noisy diffs and can trip markdown linters. Remove the trailing spaces after the closing backticks.
## Uniqueness: `(distinct)` and `(if_has_duplicates)` 

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copilot AI review requested due to automatic review settings March 2, 2026 15:19
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 14 out of 15 changed files in this pull request and generated no new comments.

Files not reviewed (1)
  • docs/_preview/package-lock.json: Language not supported
Comments suppressed due to low confidence (4)

docs/data/docs/validation/2-0-0-snapshot/sidenav.yml:42

  • The sidenav entry appears to define “Built-in options” twice: once as the parent node (page: Built-in options) and again as the first child with the same title pointing to the same landing page. This is likely to render a duplicate nav item. Consider either (a) removing the first child and keeping the parent as the clickable landing page, or (b) making the parent a pure grouping node (no duplicate ‘Built-in options’ child) and keep only children for navigable pages.
    - page: Built-in options
      key: 03-built-in-options
      children:
        - page: Built-in options
          file_path: 03-built-in-options

docs/content/docs/validation/03-built-in-options/_index.md:34

  • These intra-site links use direct .md filenames. In many Hugo setups (pretty URLs / no UglyURLs), linking to *.md can produce broken links in the rendered site. Prefer Hugo-aware linking (e.g., relref/ref shortcodes) or link to the page’s permalink form (typically field-level-options/, oneof-fields/, etc.). The same pattern also appears in the child pages (e.g., oneof-fields.mdmessage-level-options.md, field-level-options.mdrepeated-and-map-fields.md).
- **Most field constraints** — presence, bounds, patterns, nested validation, dependencies:  
  [Field-level options](field-level-options.md)
- **Enforce “one of these fields must be set” in a `oneof`:**  
  [Options for `oneof` fields](oneof-fields.md)
- **Cross-field rules on a message (“at least one group is set”):**  
  [Message-level options](message-level-options.md)
- **Collections (`repeated` / `map`) — non-empty, uniqueness, per-element validation:**  
  [Options for `repeated` and `map` fields](repeated-and-map-fields.md)

docs/content/docs/validation/03-built-in-options/repeated-and-map-fields.md:27

  • There’s trailing whitespace at the end of these heading lines. Consider removing it to avoid noisy diffs and to keep markdown formatting consistent across the docs.
## Presence: `(required)` 

docs/content/docs/validation/03-built-in-options/repeated-and-map-fields.md:39

  • There’s trailing whitespace at the end of these heading lines. Consider removing it to avoid noisy diffs and to keep markdown formatting consistent across the docs.
## Uniqueness: `(distinct)` and `(if_has_duplicates)` 

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copilot AI review requested due to automatic review settings March 2, 2026 15:25
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 14 out of 15 changed files in this pull request and generated no new comments.

Files not reviewed (1)
  • docs/_preview/package-lock.json: Language not supported
Comments suppressed due to low confidence (4)

docs/data/docs/validation/2-0-0-snapshot/sidenav.yml:50

  • The new parent nav item for “Built-in options” has key + children but no file_path. In this same sidenav schema, entries are typically keyed by page + file_path; without file_path the parent item may not be clickable or could be omitted depending on the nav renderer. Consider adding file_path: 03-built-in-options to the parent (and optionally dropping the duplicated first child), or reverting to a single file_path entry if the renderer doesn’t support key-only parents.
    - page: Built-in options
      key: 03-built-in-options
      children:
        - page: Built-in options
          file_path: 03-built-in-options
        - page: Field-level options
          file_path: 03-built-in-options/field-level-options
        - page: "Options for `oneof` fields"
          file_path: 03-built-in-options/oneof-fields
        - page: Message-level options
          file_path: 03-built-in-options/message-level-options
        - page: "Options for `repeated` and `map` fields"
          file_path: 03-built-in-options/repeated-and-map-fields

docs/content/docs/validation/03-built-in-options/_index.md:42

  • This section links to the same spine/options.proto URL twice in close proximity, which is redundant and makes the page harder to scan. Suggest keeping a single canonical link and removing the duplicate paragraph (or merging the two sentences into one).
This catalog is based on the non-deprecated, validation-related options defined in
[spine/options.proto](https://github.com/SpineEventEngine/base-libraries/blob/master/base/src/main/proto/spine/options.proto).

For the canonical option definitions, see `spine/options.proto` in the Spine base libraries
on GitHub: [spine/options.proto](https://github.com/SpineEventEngine/base-libraries/blob/master/base/src/main/proto/spine/options.proto).

docs/content/docs/validation/03-built-in-options/repeated-and-map-fields.md:27

  • These headings include trailing whitespace. Trailing spaces commonly trigger markdown linters (and can create noisy diffs). Please remove the trailing spaces after the closing backticks.
## Presence: `(required)` 

docs/content/docs/validation/03-built-in-options/repeated-and-map-fields.md:39

  • These headings include trailing whitespace. Trailing spaces commonly trigger markdown linters (and can create noisy diffs). Please remove the trailing spaces after the closing backticks.
## Uniqueness: `(distinct)` and `(if_has_duplicates)` 

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copilot AI review requested due to automatic review settings March 2, 2026 15:28
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 14 out of 15 changed files in this pull request and generated no new comments.

Files not reviewed (1)
  • docs/_preview/package-lock.json: Language not supported
Comments suppressed due to low confidence (4)

docs/data/docs/validation/2-0-0-snapshot/sidenav.yml:42

  • The parent sidenav item page: Built-in options no longer has a file_path, and the clickable page is duplicated as the first child. If the sidenav schema expects file_path for navigable nodes, this can make the top-level item non-clickable or render duplicated entries. Consider either (a) adding file_path: 03-built-in-options to the parent and removing the duplicate first child, or (b) removing the parent page node and keeping only a single navigable entry with children per the site's nav conventions.
    - page: Built-in options
      key: 03-built-in-options
      children:
        - page: Built-in options
          file_path: 03-built-in-options

docs/content/docs/validation/03-built-in-options/_index.md:42

  • The same spine/options.proto link is repeated twice back-to-back. Consolidating this into a single sentence/link would reduce redundancy and keep the landing page tighter.
This catalog is based on the non-deprecated, validation-related options defined in
[spine/options.proto](https://github.com/SpineEventEngine/base-libraries/blob/master/base/src/main/proto/spine/options.proto).

For the canonical option definitions, see `spine/options.proto` in the Spine base libraries
on GitHub: [spine/options.proto](https://github.com/SpineEventEngine/base-libraries/blob/master/base/src/main/proto/spine/options.proto).

docs/content/docs/validation/03-built-in-options/repeated-and-map-fields.md:27

  • These headings include trailing whitespace at the end of the line. Removing trailing spaces helps avoid noisy diffs and keeps markdown formatting consistent.
## Presence: `(required)` 

docs/content/docs/validation/03-built-in-options/repeated-and-map-fields.md:39

  • These headings include trailing whitespace at the end of the line. Removing trailing spaces helps avoid noisy diffs and keeps markdown formatting consistent.
## Uniqueness: `(distinct)` and `(if_has_duplicates)` 

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@alexander-yevsyukov alexander-yevsyukov merged commit de56853 into master Mar 2, 2026
11 of 12 checks passed
@alexander-yevsyukov alexander-yevsyukov deleted the doc-set-6 branch March 2, 2026 15:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants