Skip to main content
← Back to list
01Issue
BugShippedSwamp CLIPublic
Assigneesskunk-ape

Relationships

#3659 Windows CI: data_writer vary-suffix test writes a data name with a double quote, which #3568 refuses on Windows

Opened by skunk-ape · 10/20/2026· Shipped 10/20/2026

Windows Compatibility on swamp main has failed on every push since #3633 merged (dbcd9639, 2026-10-19). One test fails:

src/domain/models/data_writer_test.ts:2161 "createResourceWriter: a vary suffix outside the verbatim form is hashed to a fixed-length key segment"

Error: Data name 'creds-{"region":"us"}' in behavior 'swamp/test' contains '"', which Windows does not allow in file names, so this Windows host cannot store it. Use a different name.
    at checkDataNamePortability (src/domain/models/data_writer.ts:626)
    at writeResource (src/domain/models/data_writer.ts:832)
    at varyKeySegment (src/domain/models/data_writer_test.ts:2124)

Run: https://github.com/swamp-club/swamp/actions/runs/39357422303

Two changes meet here. #3568 (62b6ad42) makes writers refuse, on Windows, data names that Windows can't store. #3633's test then writes vary suffixes that include {"region":"us"}, and the data name creds-{"region":"us"} is refused on Windows before the vault key is generated.

Decide which side is wrong:

  • If refusing that data name on Windows is intended, the test should leave out vectors whose data name Windows refuses (or skip them on Windows). The test is about the vault key segment, not the data name.
  • If a vary value from user input should never make a data name Windows can't store, then that is a product bug: the vary suffix in the data name needs the same treatment the vault key gets.

Done when: Windows Compatibility is green on main.

02Bog Flow
✓OPEN✓TRIAGED✓IN PROGRESS✓SHIPPED+ 1 MOREASSIGNED+ 2 MOREREVIEW+ 7 MOREPR_MERGED+ 2 MORESESSION_SUMMARIZED

Shipped

10/20/2026, 4:11:57 PM

Click a lifecycle step above to view its details.

03Sludge Pulse
skunk-ape assigned skunk-ape10/20/2026, 1:55:38 PM

Sign in to post a ripple.