The bar for shipping PureXML in an IDE: correctness total and characterized, false positives at zero, not "passes the suite." Four stoppers (reject no valid input; accept no faulty input; characterize correctness via differential + fuzz, no silent under-rejection debt; interactive safety: bounded resources, located recoverable errors) plus a per-iteration checklist and definition of done. Wired into the per-iteration protocol (schema-validity-burndown.md) and the session Read First list (CLAUDE.md) so it is read every iteration.
1019 B
1019 B
CLAUDE.md
Guidance for coding agents working in PureXML.
Project
PureXML is a pure-Swift XML parser/emitter package. It is a root Swift package,
not a monorepo package under Packages/.
Non-negotiables:
- no external SwiftPM dependencies
- no C, C++, Objective-C, JavaScript, or generated parser runtime in the public package
- public API under the
PureXMLnamespace tree - macOS, Linux, and WASI build compatibility
- tests for parser and emitter behavior
Read First
AGENTS.mddocs/rules/code-style.mddocs/rules/namespacing.mddocs/rules/cross-platform.mddocs/rules/testing.mddocs/rules/verification.mddocs/production-readiness.md(the bar for shipping this in an IDE; read every conformance iteration)
Confirm rule loading with rules-loaded.
Commands
bash scripts/check-style.sh
bash scripts/check-namespacing.sh
swiftformat . --config .swiftformat --lint
swiftlint --config .swiftlint.yml --strict
swift build
swift test
bash scripts/check-wasm.sh