Skip to content

Recognize a Compose Mapping Key Containing # Before a Block Scalar in the Prose Gate #3717

Closed

Description

@ptr727

Raised by the review of promotion #3715 on the change #3712 made, listed without a thread.

The prose gate's Compose reader now treats a key line ending in a YAML block-scalar indicator (| or >) as opening opaque text. Copilot reports that a valid mapping key containing # is not recognized as such a key, so the block scalar after it is not skipped. A # is a comment only after whitespace, so x-a#b: | is a valid key. Constructed shape:

services:
  app:
    x-a#b: |
      volumes:
        - cache:/home/zed/data

If the reader strips from the first # before matching the key, the indicator is lost and the mount-shaped text is read as a volume entry. This is to be confirmed by running the gate on that case before any fix.

Backlog burndown claim. Branch: feature/burndown-compose-hash-key. Predicted file set: .github/actions/prose-gate/prose_lint.py, tests/test_prose_lint.py.

Activity

  1. ptr727 commented on Oct 31, 2026

    @ptr727
    OwnerAuthor

    Claim released: feature/burndown-compose-hash-key merged to develop as #3721 and its branch and worktree are cleaned up. It joins promotion #3715, which closes this issue when it merges.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions