Treat content as a reproducible build
Content sources, routes, templates, styles and assets produce a deployable site. Fixed build checks can reject missing translations, broken anchors or invalid JSON before publication.
Every rule should address a real risk. Length thresholds detect empty drafts, not technical depth. A source link's presence does not establish support. Valid Schema does not establish truth. State what each check can and cannot prove.
Use layered acceptance
| Layer | Example check | Additional evidence needed |
|---|---|---|
| Source | Titles, sections, paired languages | Terminology and fact review |
| HTML | One h1, unique IDs, nonempty body | Visibility and meaning |
| Links and assets | Existing targets and anchors | Relevance of destinations |
| Schema | Valid JSON, aligned fields | Platform use |
| Languages | Reciprocal self-consistent maps | Equivalent translations |
| Package | Manifest, hashes, no secrets | Public responses and rollback |
Do not remove failing conditions merely to obtain a pass. When a rule is wrong, demonstrate the counterexample first, correct the rule and retain a regression test.
Run explicit HTML failures
The complete fixture passes local structure checks. An empty main triggers missing_main_text; noindex triggers its own finding; repeated identifiers trigger duplicate_id. Tests additionally cover multiple h1 elements, missing language returns and schema-valid but incorrect capacity.
This parser is a teaching subset. It does not inspect remote links, execute scripts or calculate color contrast, and it does not replace the site's full build system. Its value is an inspectable failed input paired with an exact diagnostic.
Keep preview and production separate
Record source and dependency versions with output hashes. Build previews in a separate nonindexable directory. Do not change live robots controls for a local preview or overwrite CMS-managed content regions during testing.
Generated files should correspond to stable inputs. Rebuilding unchanged content must not restamp every publication date or create random URLs. Separate first publication, actual modification and build time.
Verify rendering and public output
Browser checks should cover desktop and mobile, table overflow, obscured headings, navigation, images and downloads. Transparent or covered text may pass DOM checks. Verification screenshots should capture actual rendering rather than reconstructed mockups.
After release, fetch public URLs and compare content and asset hashes, status, canonical and index instructions. Correct source files with stale server output still mean deployment is incomplete. Use the prepared rollback procedure when acceptance fails.
Zhihe Growth's engineering contribution
Zhihe Growth manages technical guides, concise FAQs, cases and evidence as distinct assets connected by shared facts and bilingual controls. Explain actual methods and inspectable materials rather than equating article count with value. CI reduces mechanical errors; editorial review remains responsible for argument and factual meaning.
The package contains executed fixtures, not a claim that every client has this publishing system installed. Adapt checks to each CMS, template and permission model. External AI performance still requires a measurement protocol, not a test-count claim.
Acceptance exercise: trace each failure to an input
| Failure | Minimum evidence | Release response | Next step |
|---|---|---|---|
| Missing translation | Route and absent file | Block affected release | Complete and review |
| Invalid JSON-LD | Page and parse error | Block | Repair source and rebuild |
| Missing link target | Origin and destination | Block or deliberately remove | Confirm target |
| Conflicting case figure | Texts and fact version | Block | Apply approved scope |
| Mobile overflow | Viewport and screenshot | Repair and retest | Preserve content |
| Stale production | Public and package hashes | Not complete | Inspect activation and cache |
Diagnostics should identify a page or fact. Passing automation still leaves editorial judgments about usefulness, evidence interpretation and disclosure permission. Do not describe those judgments as executed code. Unexpected changes to unrelated pages or protected entry points require explanation before release.
Materials and primary references
Download the content-check package. See JSON Schema and Google's AI optimization guidance. Related guides cover fact validation and rollback.