Files
taskgraph_ts/tasks/architecture/c-3-nullable-helper.md
glm-5.1 e592caed57 Add architecture review findings and address documentation issues
Review of all ADR documents (001-007) and peripheral architecture docs
identified 3 critical, 10 warning, and 7 suggestion issues.

Addressed in this commit:
- W-1: Add draft qualifier to ADR-002 reference to incremental exploration
- W-2: Add Alternatives Considered section to ADR-001
- W-3: Add Document Lifecycle section to README.md (draft/stable/deprecated)
- W-4: Clarify includeCompleted semantics (only 'completed' status triggers exclusion)
- W-5: Document file I/O runtime constraints in frontmatter.md
- W-6: Add ADR reference to architecture.md redirect
- W-7: Verify CVE-2025-64718 (confirmed real, improved description)
- W-9: Convert workspace-absolute paths to relative/monorepo references
- S-7: Add future ADR-008 note to incremental-update-exploration.md

Critical issues (C-1, C-2, C-3) and remaining warnings (W-8, W-10, S-4, S-5)
were addressed by a parallel agent in a prior commit.

All 16 review tasks created and resolved.
2026-04-26 09:41:05 +00:00

22 lines
989 B
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
id: architecture/c-3-nullable-helper
name: Move Nullable helper definition before first use in schemas.md
status: completed
depends_on: []
created: 2026-04-26T09:10:33.686014464Z
modified: 2026-04-26T09:10:33.686014969Z
scope: narrow
risk: high
---
# Description
**Review ref**: C-3 (Critical)
**Files affected**: `docs/architecture/schemas.md`
The `Nullable` helper is used extensively in the `TaskInput` schema (lines 5463) but only defined at line 219 in the `ResolvedTaskAttributes` section. An implementer reading top-down encounters `Nullable` without understanding what it does. Also unclear whether `Nullable` is from `@alkdev/typebox` or defined locally.
Add a "Shared Schema Utilities" section near the top of `schemas.md` (before `TaskInput`) that defines `Nullable` and its behavior. Or at minimum add a forward reference: "see Shared Schema Utilities below for the `Nullable` helper" at first use.
**Source**: `/docs/reviews/architecture-review-2026-04-26.md` C-3