Skip to content

chore(#3430): fix openspec validate warnings across boost specs#3431

Open
fullsend-ai-coder[bot] wants to merge 1 commit into
mainfrom
chore/boost-openspec-validate-3430
Open

chore(#3430): fix openspec validate warnings across boost specs#3431
fullsend-ai-coder[bot] wants to merge 1 commit into
mainfrom
chore/boost-openspec-validate-3430

Conversation

@fullsend-ai-coder

Copy link
Copy Markdown
Contributor

Run openspec validate --changes and fix all 49 validation errors across 23 spec files in 5 change directories.

Two categories of fixes:

  1. Add RFC 2119 language (MUST/SHALL) to requirement descriptions
    under ADDED and MODIFIED delta sections. The validator requires
    requirement text to contain normative keywords. Affected 9 spec
    files with existing delta sections.

  2. Add ADDED Requirements delta section to 14 spec files that only
    had EXISTING Requirements. The validator requires at least one
    delta section (ADDED/MODIFIED/REMOVED) in specs/ files. Added a
    minimal "Specification Coverage" requirement establishing the
    baseline.

Also added missing requirement description text to 3 requirements in fine-grained-permissions/spec.md (Infrastructure Permissions, Permission Registration Best Practices, Functional Area Permissions).

All 5 changes now pass: openspec validate --changes reports 5 passed, 0 failed.


Closes #3430

Post-script verification

  • Branch is not main/master (chore/boost-openspec-validate-3430)
  • Secret scan passed (gitleaks — ff5b234442d685a6b2e28bc2b1137aa233132855..HEAD)
  • Pre-commit hooks passed (authoritative run on runner)
  • Tests ran inside sandbox

Run `openspec validate --changes` and fix all 49 validation errors
across 23 spec files in 5 change directories.

Two categories of fixes:

1. Add RFC 2119 language (MUST/SHALL) to requirement descriptions
   under ADDED and MODIFIED delta sections. The validator requires
   requirement text to contain normative keywords. Affected 9 spec
   files with existing delta sections.

2. Add ADDED Requirements delta section to 14 spec files that only
   had EXISTING Requirements. The validator requires at least one
   delta section (ADDED/MODIFIED/REMOVED) in specs/ files. Added a
   minimal "Specification Coverage" requirement establishing the
   baseline.

Also added missing requirement description text to 3 requirements
in fine-grained-permissions/spec.md (Infrastructure Permissions,
Permission Registration Best Practices, Functional Area Permissions).

All 5 changes now pass: `openspec validate --changes` reports
5 passed, 0 failed.

Closes #3430
@fullsend-ai-coder fullsend-ai-coder Bot requested review from a team, durandom and gabemontero as code owners June 17, 2026 12:08
@sonarqubecloud

Copy link
Copy Markdown

@codecov

codecov Bot commented Jun 17, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 53.55%. Comparing base (ff5b234) to head (9557cf6).
✅ All tests successful. No failed tests found.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #3431   +/-   ##
=======================================
  Coverage   53.55%   53.55%           
=======================================
  Files        2251     2251           
  Lines       85723    85723           
  Branches    24171    24171           
=======================================
  Hits        45908    45908           
  Misses      38296    38296           
  Partials     1519     1519           
Flag Coverage Δ *Carryforward flag
adoption-insights 83.70% <ø> (ø) Carriedforward from ff5b234
ai-integrations 67.95% <ø> (ø) Carriedforward from ff5b234
app-defaults 69.79% <ø> (ø) Carriedforward from ff5b234
augment 46.39% <ø> (ø) Carriedforward from ff5b234
bulk-import 72.46% <ø> (ø) Carriedforward from ff5b234
cost-management 14.10% <ø> (ø) Carriedforward from ff5b234
dcm 61.79% <ø> (ø) Carriedforward from ff5b234
extensions 61.53% <ø> (ø) Carriedforward from ff5b234
global-floating-action-button 71.18% <ø> (ø) Carriedforward from ff5b234
global-header 59.71% <ø> (ø) Carriedforward from ff5b234
homepage 49.84% <ø> (ø) Carriedforward from ff5b234
install-dynamic-plugins 56.23% <ø> (ø) Carriedforward from ff5b234
konflux 91.49% <ø> (ø) Carriedforward from ff5b234
lightspeed 68.57% <ø> (ø) Carriedforward from ff5b234
mcp-integrations 85.46% <ø> (ø) Carriedforward from ff5b234
orchestrator 37.30% <ø> (ø) Carriedforward from ff5b234
quickstart 63.99% <ø> (ø) Carriedforward from ff5b234
sandbox 79.56% <ø> (ø) Carriedforward from ff5b234
scorecard 83.83% <ø> (ø) Carriedforward from ff5b234
theme 61.26% <ø> (ø) Carriedforward from ff5b234
translations 6.55% <ø> (ø) Carriedforward from ff5b234
x2a 78.68% <ø> (ø) Carriedforward from ff5b234

*This pull request uses carry forward flags. Click here to find out more.


Continue to review full report in Codecov by Harness.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update ff5b234...9557cf6. Read the comment docs.

🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@fullsend-ai-review

fullsend-ai-review Bot commented Jun 17, 2026

Copy link
Copy Markdown

🤖 Finished Review · ✅ Success · Started 12:09 PM UTC · Completed 12:20 PM UTC
Commit: ff5b234 · View workflow run →

@fullsend-ai-review

Copy link
Copy Markdown

Review

Findings

Low

  • [internal consistency] workspaces/boost/openspec/changes/platform-operations-deployment/specs/runtime-config/spec.md:85 — The mechanical insertion of MUST changes the semantics of the requirement description. The original "New features require additional runtime configuration fields" means "the new features listed below need config fields to function." The changed text "New features MUST have additional runtime configuration fields" reads as a universal mandate that all new features must always include runtime config fields, which is a broader and different requirement than intended. The scenarios below list specific features (agent approval, skills marketplace, token exchange, credential encryption) — they are the "new features" that need config, not a general rule.
    Remediation: Reword to preserve the original intent while using RFC 2119 language, e.g., "The following new features MUST have runtime configuration fields as specified below."

Info

  • [internal consistency] workspaces/boost/openspec/changes/security-safety-governance/specs/fine-grained-permissions/spec.md:46 — The requirement description for "Tool Lifecycle Permissions" had RFC 2119 MUST added to only the first sentence. The remainder of the description is definitional/clarifying text establishing scope boundaries (what boost-tool represents vs. MCP servers/tools), which reasonably does not require RFC 2119 keywords.

  • [internal consistency] workspaces/boost/openspec/changes/security-safety-governance/specs/access-control/spec.md:144 — The "Security Mode Naming" requirement mixes MUST and SHALL NOT in the same description. Per RFC 2119 these are semantically equivalent to MUST/MUST NOT, so technically correct but stylistically inconsistent with the rest of the PR which exclusively uses MUST.

### Requirement: New Config Categories

New features require additional runtime configuration fields.
New features MUST have additional runtime configuration fields.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

[low] internal consistency

The mechanical insertion of MUST changes the semantics of the requirement description. The original 'New features require additional runtime configuration fields' means 'the new features listed below need config fields.' The changed text 'New features MUST have additional runtime configuration fields' reads as a universal mandate that all new features must always include runtime config fields, which is broader than intended.

Suggested fix: Reword to preserve the original intent while using RFC 2119 language, e.g., 'The following new features MUST have runtime configuration fields as specified below.'

### Requirement: Tool Lifecycle Permissions (Resource-Based)

RBAC policies govern Kagenti tool lifecycle transitions. The `boost-tool` resource type represents Kagenti tools (K8s workloads with lifecycle governance) — not MCP servers or MCP tools. MCP servers are registered endpoints without lifecycle permissions; MCP tools are runtime-discovered children of MCP servers with no independent lifecycle.
RBAC policies MUST govern Kagenti tool lifecycle transitions. The `boost-tool` resource type represents Kagenti tools (K8s workloads with lifecycle governance) — not MCP servers or MCP tools. MCP servers are registered endpoints without lifecycle permissions; MCP tools are runtime-discovered children of MCP servers with no independent lifecycle.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

[info] internal consistency

The requirement description for 'Tool Lifecycle Permissions' had RFC 2119 MUST added to only the first sentence. The remainder is definitional text establishing scope boundaries, which reasonably does not require RFC 2119 keywords.

### Requirement: Security Mode Naming

The development security mode uses an explicit name that communicates its purpose. The legacy name `none` is not accepted.
The development security mode MUST use an explicit name that communicates its purpose. The legacy name `none` SHALL NOT be accepted.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

[info] internal consistency

The 'Security Mode Naming' requirement mixes MUST and SHALL NOT in the same description. Per RFC 2119 these are semantically equivalent, but stylistically inconsistent with the rest of the PR which exclusively uses MUST.

@fullsend-ai-review fullsend-ai-review Bot added the ready-for-merge All reviewers approved — ready to merge label Jun 17, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ready-for-merge All reviewers approved — ready to merge

Projects

None yet

Development

Successfully merging this pull request may close these issues.

chore(boost): run openspec validate and fix warnings

0 participants