# Changelog

> **This is the PUBLIC form of this artifact. Findings are listed in full, but the details of SECURITY findings — which rule fired, in which file, on which line, and how to fix it — are deliberately withheld, and any secret-scanner results are excluded entirely. Where detail is absent here it was REMOVED FOR PUBLICATION; it is not missing from the analysis. The complete artifact is available from the repository owner.**

## Score

- CAI 54 → 42 (-12.4)
- Rubric changed (rubric-2026.08.18 → rubric-2026.08.15) — scores are not directly comparable.

## Lenses

- Code Health 100 (new)
- Architecture 98 → 69 (-28.6)
- Maturity 56 → 52 (-3.7)
- Readiness 60 → 25 (-35.7)
- Security 60 → 50 (-10.0)

## Resolved (18)

- Boundary-crossing change coupling: CachedDAppCTX.scala ↔ package.scala (node/src/main/scala/com/wavesplatform/state/diffs/invoke/CachedDAppCTX.scala)
- Boundary-crossing change coupling: EvaluatorV2.scala ↔ InvokeScriptTransactionDiff.scala (lang/shared/src/main/scala/com/wavesplatform/lang/v1/evaluator/EvaluatorV2.scala)
- Boundary-crossing change coupling: Functions.scala ↔ ErrorMessageEnvironment.scala (lang/shared/src/main/scala/com/wavesplatform/lang/v1/evaluator/ctx/impl/waves/Functions.scala)
- Boundary-crossing change coupling: Functions.scala ↔ WebEnvironment.scala (lang/shared/src/main/scala/com/wavesplatform/lang/v1/evaluator/ctx/impl/waves/Functions.scala)
- Boundary-crossing change coupling: WavesContext.scala ↔ ErrorMessageEnvironment.scala (lang/shared/src/main/scala/com/wavesplatform/lang/v1/evaluator/ctx/impl/waves/WavesContext.scala)
- Boundary-crossing change coupling: WavesEnvironment.scala ↔ ErrorMessageEnvironment.scala (node/src/main/scala/com/wavesplatform/transaction/smart/WavesEnvironment.scala)
- Boundary-crossing change coupling: WavesEnvironment.scala ↔ WebEnvironment.scala (node/src/main/scala/com/wavesplatform/transaction/smart/WavesEnvironment.scala)
- Boundary-crossing change coupling: package.scala ↔ ErrorMessageEnvironment.scala (lang/shared/src/main/scala/com/wavesplatform/lang/utils/package.scala)
- Change coupling: Common.scala ↔ ErrorMessageEnvironment.scala (lang/testkit/src/main/scala/com/wavesplatform/lang/Common.scala)
- Change coupling: Common.scala ↔ WebEnvironment.scala (lang/testkit/src/main/scala/com/wavesplatform/lang/Common.scala)
- Concentrated knowledge decay
- Coverage not included — suite not readable by the collector
- Dependency hygiene not measured — dependency manifest found but not parsed for hygiene
- Largest orphaned file (lang/shared/src/main/scala/com/wavesplatform/lang/v1/compiler/ExpressionCompiler.scala)
- Largest orphaned file (lang/shared/src/main/scala/com/wavesplatform/lang/v1/evaluator/ctx/impl/PureContext.scala)
- Largest orphaned file (lang/shared/src/main/scala/com/wavesplatform/lang/v1/evaluator/ctx/impl/waves/Functions.scala)
- Off-boarding risk: anonymized user #1
- complexity unreadable for .scala — churn × complexity hotspots could not be measured

## New (15)

- Change coupling: swagger-ui-bundle.js ↔ swagger-ui-standalone-preset.js (node/src/main/resources/swagger-ui/swagger-ui-bundle.js)
- Change coupling: swagger-ui-bundle.js ↔ swagger-ui.js (node/src/main/resources/swagger-ui/swagger-ui-bundle.js)
- Change coupling: swagger-ui-standalone-preset.js ↔ swagger-ui.js (node/src/main/resources/swagger-ui/swagger-ui-standalone-preset.js)
- Coverage not measured — test suite did not build
- Dimension evaluation failed
- High IaC: DS-0002 (docker/node-sbt-builder.Dockerfile)
- High IaC: DS-0002 (docker/private/Dockerfile)
- Low IaC: DS-0026 (docker/node-sbt-builder.Dockerfile)
- Low IaC: DS-0026 (docker/private/Dockerfile)
- Medium: security finding (details withheld)
- Medium: security finding (details withheld)
- No artifact signing
- No tests found
- Secret: generic-api-key (node/src/main/resources/swagger-ui/openapi.yaml)
- Secret: generic-api-key (node/src/main/scala/com/wavesplatform/crypto/bls/BlsUtils.scala)
