CodeSampleX

Пример

yaml 2.9.0: Parse YAML configurations with yaml v2 avoiding silent truthiness traps from unquoted yes/no/on/off strings, unmerged << merge keys, and decimal-parsed leading-zero permissions

Проверенный пример — npm yaml 2.9.0: Parse YAML configurations with yaml v2 avoiding silent truthiness traps from unquoted yes/no/on/off strings, unmerged <<…

sha256:82cb4df6ef197197d50a5f2da59ac8c68181ad3387e06b4a023e6aaac0ed58a9

Эта сеть предлагает одно: образец, который собирается. Она запустила его в песочнице и сохранила подписанную квитанцию. Она ничего не оценивает и ничего не гарантирует — собирается ли тот же код у вас, она не измеряла. Сколько различных ключей подписи подали пройденную квитанцию контракта. Один — только автор; больше одного — значит, кто-то ещё тоже собрал. Ключ создаётся сам и не имеет зарегистрированной личности, поэтому считаются ключи, а не люди. MIT-0

Свидетельства выполнения

Заявленное окружение и подписанные запуски разделены, чтобы вы точно видели, что этот образец запускал и где.

Основа свидетельства
Подписанный контракт пройден
Квитанции проверки
2
Ключи подписи, собравшие его
2
Заявленная среда node linux x64 node node npm

Среды запусков проверки

Окружение Контракт Этапы Запуск
node 22 · linux alpine/x64 · docker ed25519:d91480838ac982c9 PASS compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · node-typescript@1
2026-08-16
node 22 · linux alpine/x64 · docker ed25519:2175b912ea1c23b1 PASS compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · node-typescript@1
2026-08-18

Кейс

HOW
Цель
Parse YAML configurations with yaml v2 avoiding silent truthiness traps from unquoted yes/no/on/off strings, unmerged << merge keys, and decimal-parsed leading-zero permissions
Пакеты
Символы
  • yaml.Document
  • yaml.parse
  • yaml.parseDocument
  • yaml.stringify
Окружение
node
Создан
2026-08-16T07:08:33Z

Контракт

  1. assert yaml.parse and yaml.parseDocument under default YAML 1.2 Core schema parse unquoted yes, no, on, off, y, and n as strings instead of YAML 1.1 booleans
  2. assert evaluating parsed 'no' or 'off' in JavaScript conditionals is truthy because non-empty strings are truthy in JS, silently inverting disabled config flags
  3. assert unquoted country code NO and province code ON parse as strings 'NO' and 'ON' in v2 Core schema rather than false and true in YAML 1.1
  4. assert yaml.parse under default YAML 1.2 Core schema leaves '<<' merge keys unmerged as a literal '<<' property key instead of merging parent map keys
  5. assert passing merge: true or schema: 'yaml-1.1' explicitly enables YAML 1.1 merge key resolution in yaml v2
  6. assert unquoted leading-zero numeric strings like 0644 parse as decimal integer 644 in Core schema, requiring '0o644' for octal 420
  7. assert sexagesimal time strings like 12:30 parse as strings in YAML 1.2 Core rather than base-60 integers
  8. assert doc.toJS() converts a parsed Document AST into plain JavaScript objects
  9. assert yaml.stringify on string value 'no' omits quotes in YAML 1.2 Core schema but quotes '"no"' when configured with schema: 'yaml-1.1'

Файлы

  • NOTES.md
  • csx.json
  • package-lock.json
  • package.json
  • src/config.mjs
  • test/contract.mjs

Скачать артефакт с исходным кодом (tar.gz)

Исходный сидер

csx-seed