Skip to content

Plain slash-separated prose is misclassified as local file references #450

Description

@Tomauskasz

Problem

SkillSpector 2.10 treats ordinary slash-separated prose as local file references. Examples include reads/writes, environment/profile, operation/node, and model/provider.

The unresolved-reference ledger then marks an otherwise fully inspected scan as partial. The report has 100% file coverage, no findings, and execution_successful: true, but analysis_completeness.is_complete is false and the recommendation is raised from SAFE to CAUTION.

Root cause

The plain relative-path pattern accepts a multi-segment token when both the explicit ./ prefix and final file extension are absent. There is no reliable syntax signal that distinguishes reads/writes from an extensionless local path.

Proposed behavior

For unquoted plain-text references, require either:

  • an explicit ./ prefix; or
  • a final file extension.

Markdown destinations remain unchanged. Extensionless paths remain available through explicit ./... syntax.

Reproduction

Call resolve_bundle_references() with the sentence:

Compare reads/writes, environment/profile settings, and operation/node behavior.

The current resolver returns three unresolved local-reference records. The expected result is no reference records.

Scope

The proposed fix changes one regular expression and adds focused regression coverage. It does not change Markdown-link resolution, external-reference rejection, parent-path rejection, or explicit local paths.

AI assistance disclosure: Codex helped inspect the parser, reproduce the defect, draft the proposed patch, and run the focused tests. I reviewed the root cause, scope, and proposed behavior.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions