Validation implementation checklist¶
Reference: Powertools TypeScript v2.35.0, installed AJV v8.20.0. The default Go engine is jsonschema/v6 v6.0.3. All documentation and code comments remain English. Completion of a scoped item does not establish full AJV parity.
- V-01: Implement manual validation, reusable compiled schemas, an injected compiler/validator contract, and typed compilation/validation errors. Verify schema/options snapshots, 32 concurrent callers, cancellation, operational error identity and invalid JSON handling.
- V-02: Implement Draft 7 adaptation for nullable, reference siblings, registered string/numeric formats, standard JMESPath extraction, optional extended query functions and explicitly registered references. All 502 exact TypeScript result/error cases passed, including four invalid-schema regressions that prevent adaptation from hiding an invalid original schema.
- V-03: Implement typed inbound/outbound wrappers with shared invocation context, JSON input snapshots, output envelope bypass, staged errors, handler result/error/panic preservation and the reference's literal-false wrapper behavior. Verify native typed event isolation and handler rejection paths.
- V-04: Verify the final 502 reference cases, all 19 packaged module tests/vet/tidy checks, sixteen standalone consumers, the native Lambda example, both CGO-disabled Linux builds and 316/316 local Docker assertions. All five invocations completed and containers/network were cleaned. The same artifacts passed 14/14 Batch checks. Evidence: MODULE_ACCEPTANCE.json, LOCAL_ACCEPTANCE.json and BATCH_ACCEPTANCE.json (2026-09-16, Asia/Shanghai). Docker executed amd64; arm64 was cross-compiled only. No AWS deployment occurred.
- V-05: Complete the public export/options/default/error audit, strict-schema rules, custom format/plugin forms, injected-engine options and middleware/decorator behavior mapping.
- V-05d: Control conditional compilation without deleting reference targets, preserve nested dialect annotations, globally index nested resource IDs and expose ordered external schema registration. Verify 1,104 new exact reference cases (23,071 Validation total), snapshots, 32 concurrent callers and exactly-once callbacks. All 19 modules/16 consumers, both CGO-disabled Linux builds, 442/442 Docker assertions and 14/14 Batch checks passed (2026-09-16, Asia/Shanghai). Temporary resources were cleaned; no AWS resources were used. Docker ran amd64, while arm64 was cross-compiled only. Full identity/setup/error compatibility remains open; see VALIDATION_GRAPHS.md.
- V-05c: Check reachable keyword types, preserve inactive primitive fragments and annotations, compile nontrivial constant-condition branches, skip inactive conditions and reuse required-entry conversion for property dependencies. Verify 5,764 new reference cases (21,967 Validation total), callback counts, all 19 modules/16 consumers, both CGO-disabled Linux builds, 424/424 Docker assertions and 14/14 Batch checks (2026-09-16, Asia/Shanghai). Temporary resources were cleaned; no AWS resources were used. Docker ran amd64, while arm64 was cross-compiled only. Ignored-reference resolution, dialects and complete setup remain open; see VALIDATION_SHAPES.md.
- V-05b: Separate original-document structural validation from reachable compilation checks, including unused external documents, definition pointers/aliases/IDs and always-valid pattern optimization. Verify 658 additional reference cases (12,770 Validation total), original-structure and callback regressions, all 19 modules/16 consumers, both CGO-disabled Linux builds, 382/382 Docker assertions and 14/14 Batch artifact checks (2026-09-16, Asia/Shanghai). Temporary resources were cleaned and no AWS resources were used. External registration error identity and the documented unvalidated
$defskeyword forms remain open; see VALIDATION_STRICT.md. - V-05a: Use legacy UTF-16 regex matching for strict property/pattern overlap while retaining Unicode payload matching, always-valid/absent-property skips and operational resource-error identity. Verify 3,047 new cases (12,112 Validation total), all 19 modules/16 consumers, both CGO-disabled Linux builds, 364/364 Docker assertions and 14/14 Batch artifact checks (2026-09-16, Asia/Shanghai), with temporary resources cleaned and no AWS deployment. The 24 reference-only unused-definition observations are not counted as passing Go cases. See VALIDATION_STRICT.md; complete strict setup and regex parity remain open.
- V-06: Complete nested all-errors ordering and every keyword's message/params/schema-path mapping, including conditionals, dependencies, property names, tuples and reference variants.
- V-06a: Implement scoped conditional/dependency/property-name/tuple diagnostics and nested declaration-order collection, retain oneOf failed branches, preserve empty property names and isolate mutable error values through Commons. Verify 1,207 new reference cases (7,794 Validation total), 32 concurrent callers, callback counts and single serialization snapshots. All 19 packaged modules/16 consumers, both CGO-disabled Linux builds, 343/343 Docker assertions and 14/14 Batch artifact checks passed (2026-09-16, Asia/Shanghai). All temporary containers/network were cleaned; no AWS deployment occurred. Exhaustive mixed-type, reference and strict-schema gates remain open. See VALIDATION_APPLICATORS.md.
- V-07: Match JavaScript regex, Unicode, numeric, malformed input and schema graph boundaries through actual reference cases. Preserve explicit differences until closed.
- V-07b: Preserve referenced empty combinators, fractional/negative/large size limits, non-string required values and the default floating-point/parseInt multipleOf decision. Verify 3,433 new cases (16,203 Validation total), 32 concurrent callers with mutable diagnostics, all 19 modules/16 consumers, both CGO-disabled Linux builds, 403/403 Docker assertions and 14/14 Batch checks (2026-09-16, Asia/Shanghai). The complete run cleaned temporary resources and used no AWS resources; amd64 ran locally, arm64 was cross-compiled only. Complete keyword-shape/numeric/error parity remains open; see VALIDATION_KEYWORDS.md.
- V-06b: Match scoped mixed-type rule-group ordering, integer early checks, nullable array diagnostics and numeric format placement. Discover nested IDs inside $defs and separate canonical locations from inline, compiled, alias-chain and recursive reference paths. Verify 1,271 additional reference cases (9,065 Validation total), concurrent reused targets and caller-owned type arrays. All 19 packaged modules/16 consumers, both CGO-disabled Linux builds, 355/355 Docker assertions and 14/14 Batch artifact checks passed (2026-09-16, Asia/Shanghai), with temporary resources cleaned and no AWS deployment. Exhaustive strict-mode, resource graph and type/keyword gates remain open; see VALIDATION_REFERENCES.md.
- V-07a: Verify the pure-Go ECMAScript Unicode regex adapter, 433 pinned property tables/1,683 aliases, original-pattern diagnostics, schema-path encoding, resource errors and concurrent compiled reuse. All 6,587 Validation reference cases, 19 packaged modules/16 consumers, both CGO-disabled Linux builds, 331/331 Docker assertions and 14/14 Batch artifact checks passed (2026-09-16, Asia/Shanghai). The first Docker attempt exposed Windows locale decoding in the test runner; explicit UTF-8 decoding fixed it, and runtime-only continuation reused the verified binaries. See VALIDATION_REGEX.md.
- V-08: Complete Parser/Validation documentation and composition, Event Handler integration and live Lambda acceptance when requested.
- V-09: Measure compilation/validation latency, allocations, binary size and schema/payload resource limits; complete dependency/license review and independent release setup.
See JSON_SCHEMA_VALIDATION.md for current API behavior and known boundaries. The complete utility remains unfinished until all applicable gates pass.