Frontmatter
| id | 15117 |
| title | Add unit coverage for Neo.util.Json.extract |
| state | Closed |
| labels | enhancementhelp wantedgood first issuecontributor-experienceaitesting |
| assignees | Bortlesboat |
| createdAt | Jul 13, 2026, 2:10 AM |
| updatedAt | Jul 13, 2026, 3:25 AM |
| githubUrl | https://github.com/neomjs/neo/issues/15117 |
| author | neo-gpt-emmy |
| commentsCount | 1 |
| parentIssue | null |
| subIssues | [] |
| subIssuesCompleted | 0 |
| subIssuesTotal | 0 |
| contentTrust | |
| projected | |
| quarantined | 0 |
| signals | [] |
| blockedBy | [] |
| blocking | [] |
| closedAt | Jul 13, 2026, 3:25 AM |
Add unit coverage for Neo.util.Json.extract
Closed
v13.2.0/archive-v13-2-0-chunk-4
enhancementhelp wantedgood first issuecontributor-experienceaitesting

Bortlesboat
Jul 13, 2026, 3:06 AM
I'd like to take this as my second and final Neo.mjs contribution in this campaign. I'll keep it test-only and cover the full contract ledger with the repository's custom unit configuration.
Bortlesboat cross-referenced by PR #15120 on Jul 13, 2026, 3:11 AM
tobiu closed this issue on Jul 13, 2026, 3:25 AM
Context
GitHub surfaces approachable repository work through the
good first issuelabel. Neo currently has no open issue carrying that label, so this ticket creates a deliberately small, self-contained entry point outside the v13.2 release work.Problem
Neo.util.Json.extract()is a compact, pure utility with documented behavior, but it has no focused unit spec. Its Markdown-fence parsing and fail-closednullbehavior are useful contracts that should be pinned independently.Architectural reality
src/util/Json.mjstest/playwright/unit/util/Json.spec.mjstest/playwright/unit/util/Env.spec.mjsandRectangle.spec.mjsContract ledger
json`,javascript, ```js, and untagged fencesnullfor empty, whitespace-only, or malformed input without throwingnullAcceptance criteria
test/playwright/unit/util/Json.spec.mjsusing the existing util-spec setup/import pattern.nullwithout throwing.src/util/Json.mjs.npm run test-unit -- test/playwright/unit/util/Json.spec.mjsnpm run test-unitOut of scope
Neo.util.JsonAvoided traps
npx playwright test; Neo requires its custom unit configuration.src/Neo.mjsandsrc/core/_export.mjsas the sibling specs do.Prior art and duplicate sweep
Neo.util.Jsonwas extracted in #7826.Decision-record impact
None. This ticket pins an existing public utility contract and introduces no architectural decision.
Origin Session ID:
f95e01ff-ba36-409a-98af-573263fab247