Files
truthmark/docs/standards/testing-and-verification.md
fb2c469005 feat: add canonical agent workflow package (#19)
* feat: add Truth Sync intent checklist

* feat: add canonical agent workflow package

Add the .truthmark/agent canonical workflow package, convert duplicated host workflow bodies into adapter/expanded-adapter surfaces, and validate canonical/adapter freshness in Truthmark check.

Refresh generated surfaces and package metadata for Truthmark 2.3.0, with OpenSpec tasks completed and release notes added.

* fix: preserve native workflow skill packages

* docs: record native skill package decision

* fix: drop unused agent workflow package

* chore: remove implemented OpenSpec docs

* chore: release workflow fixes as 2.2.2

* fix: remove agent-visible version markers

* fix: drop generated surface version markers

* feat: capture decision context in Truth Sync

---------

Co-authored-by: MerlinH <merlinh221@gmail.com>
2026-06-18 17:07:40 +10:00

2.9 KiB

status, doc_type, last_reviewed, source_of_truth
status doc_type last_reviewed source_of_truth
active standard 2026-05-13
../../package.json
../truthmark/engineering/contracts/config-route-and-check-contracts.md
versioning.md

Testing And Verification

Scope

This standard defines the canonical verification commands for Truthmark.

Command Sources

Repository-level verification commands live in package.json.

Current commands:

  • npm run lint
  • npm run format:check
  • npm run typecheck
  • npm run test
  • npm run build
  • npm run package:check
  • npm run check
  • npm run release:check
  • npm run dev -- check

If a linked truthmark binary points at this checkout's dist/main.js, truthmark check validates the built artifact. It is only equivalent to npm run dev -- check when the build output is current.

Verification Rules

  • Prefer the narrowest command that can falsify the change.
  • If a single test file or focused slice exists, run that before broad repo-wide verification.
  • Tests should prove current supported behavior or contracts.
  • Do not use the absence of a removed string or removed file as the primary proof of a change unless that absence is itself the boundary under test.
  • Run npm run typecheck when TypeScript source changes.
  • Run npm run lint when adding or changing TypeScript source, tests, or lint configuration.
  • Run npm run format:check when touching package or release-check surfaces covered by the Prettier check.
  • Run npm run build when CLI entrypoints, templates, or packaging behavior changes.
  • Run npm run dev -- check when canonical docs, authority order, or areas routing changes.
  • Run npm run check before closing out broader code changes unless a narrower command is the only relevant one.
  • Run npm run release:check before publishing or handing off release-sensitive packaging changes.
  • Run npm run dev -- init --json, inspect generated-surface diffs, and then run npm run dev -- check when generated surfaces are expected to refresh.

Documentation-Only Changes

For documentation-only changes:

  • run npm run dev -- check when links, frontmatter, or routing changed
  • code-level verification is optional unless executable commands or contract examples changed
  • state any skipped checks explicitly

Packaging And Artifact Checks

When CLI packaging or entrypoint behavior changes, also verify the built artifact directly after npm run build, for example with node dist/main.js --help.

npm run package:check validates the dry-run npm package contents and file modes. The package is built by prepack, so dist/ stays ignored in git while the tarball still includes the localized READMEs, LICENSE, package.json, dist/main.js, and dist/main.js.map; only dist/main.js should be executable.

Review Threshold

  • error diagnostics from truthmark check should be fixed before considering the docs tree healthy.