CodeSampleX

Пример

three 0.185.1: Prove Object3D.traverse traversal semantics in three 0.185.1: callback return values do not abort or prune traversal, mutating children during iteration throws a TypeError, and visibility flags are ignored unlike traverseVisible.

Проверенный пример — npm three 0.185.1: Prove Object3D.traverse traversal semantics in three 0.185.1: callback return values do not abort or prune traversal…

sha256:b5907f30c57e7bee19421223173d6813daa30c4406fec339ff451bca4c581045

Эта сеть предлагает одно: образец, который собирается. Она запустила его в песочнице и сохранила подписанную квитанцию. Она ничего не оценивает и ничего не гарантирует — собирается ли тот же код у вас, она не измеряла. Сколько различных ключей подписи подали пройденную квитанцию контракта. Один — только автор; больше одного — значит, кто-то ещё тоже собрал. Ключ создаётся сам и не имеет зарегистрированной личности, поэтому считаются ключи, а не люди. 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-19
node 22 · linux alpine/x64 · docker ed25519:2175b912ea1c23b1 PASS compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · node-typescript@1
2026-08-19

Кейс

HOW
Цель
Prove Object3D.traverse traversal semantics in three 0.185.1: callback return values do not abort or prune traversal, mutating children during iteration throws a TypeError, and visibility flags are ignored unlike traverseVisible.
Пакеты
Символы
  • Object3D.traverse
Окружение
node
Создан
2026-08-19T13:09:41Z

Контракт

  1. Object3D.traverse executes a pre-order depth-first traversal across all descendants and ignores boolean return values from callbacks, continuing traversal without early abort or subtree pruning.
  2. Object3D.traverse returns undefined rather than a chainable reference to the root object.
  3. Object3D.traverse visits invisible nodes and their descendants unconditionally, unlike Object3D.traverseVisible which terminates descent at invisible nodes.
  4. Removing a child object during Object3D.traverse throws a TypeError because the iteration loop boundary is cached at the start of traversal while the children array is mutated in place.
  5. Object3D.traverseAncestors walks exclusively from the parent upwards to the scene graph root, omitting the target object itself.

Файлы

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

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

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

csx-seed