Skip to content

Define deterministic dashboard custom-link semantics - #56056

Merged
pelikhan merged 2 commits into
mainfrom
copilot/dashboard-language-spec-define-custom-link-semanti
Aug 26, 2026
Merged

Define deterministic dashboard custom-link semantics#56056
pelikhan merged 2 commits into
mainfrom
copilot/dashboard-language-spec-define-custom-link-semanti

Conversation

Copilot AI commented Aug 26, 2026

Copy link
Copy Markdown
Contributor

The dashboard language spec left custom href rendering ambiguous: source rows mixed singular link fields with multi-link semantics, and validators had no closed rule for invalid link references.

  • Source link model

    • Replace generic link fields on findings and outcomes with relation-specific fields: issue-link, pull-request-link, run-link, and external-link.
    • Define each link-bearing field as exactly one Section 9.1 link object.
  • Custom href semantics

    • Require href.field to reference a link-typed source field.
    • Define absent link fields as valid data that renders without a fabricated link.
    • Require presenters to use the referenced link object's href as the target and label as the accessible link label.
    • Map ambiguous or non-link href references to DLS-E009.
  • Compliance coverage

    • Add positive and negative custom-view fixture requirements for deterministic link rendering and validation.
encoding:
  columns:
    - field: finding-summary
    - field: finding-severity
  href:
    field: pull-request-link

Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Copilot AI changed the title [WIP] Define deterministic custom-link semantics in dashboard Define deterministic dashboard custom-link semantics Aug 26, 2026
Copilot AI requested a review from pelikhan August 26, 2026 14:14
@pelikhan
pelikhan marked this pull request as ready for review August 26, 2026 14:15
Copilot AI balanced review requested due to automatic review settings August 26, 2026 14:15
@pelikhan
pelikhan merged commit f9923db into main Aug 26, 2026
@pelikhan
pelikhan deleted the copilot/dashboard-language-spec-define-custom-link-semanti branch August 26, 2026 14:16

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Defines deterministic link fields and custom href behavior in the dashboard language specification.

Changes:

  • Adds relation-specific source link fields.
  • Defines rendering, validation, and accessibility semantics.
  • Adds compliance fixture requirements and DLS-E009 coverage.
Show a summary per file
File Description
docs/src/content/docs/specs/dashboard-language-specification.md Updates normative link, custom-view, validation, and compliance rules.

Review details

💡 Add a code-review agent skill for context-aware, tailored reviews. Learn more in the docs.

  • Files reviewed: 1/1 changed files
  • Comments generated: 2
  • Review effort level: Balanced

- **DLS-VIEW-011:** A custom view **MUST NOT** contain scripts, joins, formulas, expressions, templates, plugins, or undeclared transforms.
- **DLS-VIEW-012:** A custom view **MUST** apply defaults, filtering, aggregation, ordering, and limiting in the order defined by Sections 6, 7, and 11.2.
- **DLS-VIEW-013:** A custom view **MUST** expose its source provenance, freshness, completeness, effective scope, effective time range, and effective filters.
- **DLS-VIEW-014:** A presenter rendering `href` **MUST** use the referenced link object's `href` as the navigation target and **MUST** expose the link object's `label` as the accessible link label. If the referenced link field is absent for a datum, the datum **MUST** remain valid and **MUST** render without a link.
### 9.1 Link Model

A link has `relation`, `href`, and `label`. Allowed relations are `organization`, `repository`, `workflow`, `run`, `issue`, `pull-request`, `evidence`, and `external`.
A link has `relation`, `href`, and `label`. Allowed relations are `organization`, `repository`, `workflow`, `run`, `issue`, `pull-request`, `evidence`, and `external`. When a relation-specific link field from Section 5.1 is present on a source row, it contains exactly one link object whose `relation` matches the field name.
@github-actions

Copy link
Copy Markdown
Contributor

🎉 This pull request is included in a new release.

Release: v0.87.8

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.

[dashboard-language-spec] Dashboard Language Specification: define deterministic custom-link semantics

3 participants