Whitepaper/Supporting research

Scope and evidence

Digital DNA structural stress-test — next-brand pressure: Nike

Date: 3 October 2026. Scope: component responsibilities, metadata, validation and portability. No Nike personality weights, voice, branded visual mix or live demo were authored. Guinness’s compound values are inherited in disposable test fixtures only. This audit makes no paid API calls and performs no live model evaluation.

Verdict

The six-layer separation survives the second-brand thought experiment. The present metadata implementation does not yet support a defensible general brand-personality system. It is a typed prototype for one bounded specimen, not a complete ingestion, approval or knowledge-management contract.

The executable audit ran 25 checks: 6 pass and 19 expose gaps against proposed next-brand acceptance criteria. Those gaps are not 19 broken Guinness interactions: several are missing capabilities intentionally omitted from the prototype. This audit deliberately distinguishes working regression tests from readiness for a second brand.

What holds

  • The constitution, knowledge, interests, commercial settings and attribution are distinct data sections.
  • Campaign mutations do not change compiled constitution or current realtime-session instructions.
  • Required compound values, missing evidence references and unsafe source protocols are checked.
  • A shared registry, page, orb and transport interface give a reusable technical starting point.

Nike pressures that expose the missing structure

Knowledge is a claim graph, not a pile of source paragraphs

A regional return policy needs a market, purchase channel, conditions and effective period. A product-study claim needs a product/version, comparator, population, intervention, measurement definition and limitations. Today facts: string[] has none of these fields. A source-level checked date is not a claim-level effective date or freshness policy.

Nike’s Hong Kong return page specifies a local window and eligibility conditions; it must not become global policy. Nike’s running-product page qualifies an injury-reduction claim by a particular comparative study and study definition. These are structural pressures; this audit does not recommend shoes or reproduce the claim as universal advice.

Sources checked: - https://www.nike.com.hk/help/13.htm?locale=en-gb — local returns and conditions. - https://www.nike.com/running/run-fearless — study-qualified product claim. - https://www.nike.com/help/a/returns-policy — attempted general policy page, but this fetch exposed only a help shell. No policy fact was inferred from it. Failed extraction itself needs a source status in the schema.

Evidence-backed interpretation needs uncertainty and disagreement

A decision references an entire page; an encounter references another entire page. There is no link from an exact claim to its supporting passage or from a decision to counter-evidence. All decisions require a source even when the honest state is “not researched”. Confidence is only high/medium, with no unknown, disputed, rejected or superseded state. A source review must distinguish first-party positioning, independent evidence and editorial assumption.

Safety needs conditions and actions

Free-text boundaries can express intent but cannot encode eligibility, conditional refusal, escalation or tool restrictions. A coaching role raises a difference between general encouragement and personalised injury diagnosis. The framework needs to represent that boundary explicitly before live Nike coaching. This is a design requirement, not medical guidance.

Platform choices must not become personality chemistry

voice.preset accepts only Cedar/Marin in TypeScript while the validator accepts arbitrary runtime values. Provider identity and supported voice capability belong to an adapter contract; perceived age/accent belong to direction. Similarly cream/accent and a single floating sphere are the first renderer’s vocabulary, not universal brand-expression metadata. The current demo also hard-codes Guinness-specific lines and legal-age copy in a shared component. Those are portability leaks even though the underlying compound schema is shared.

Commercial and attribution settings need eligibility

A URL being HTTPS does not make it an approved outbound destination. Approval status, destination purpose, locale, validity, user eligibility and action permission are absent. Enabled attribution is a boolean without an event contract, consent basis, retention or data destination. These sections are inactive today; they should remain inactive until their contracts exist.

Executable findings

Run sh scripts/run-framework-audit.sh. The JSON report is framework-audit-results.json. “Reject” means the proposed structural contract should reject or quarantine the fixture; it does not mean the current validator can establish semantic truth. In particular, the unreviewed-source probe demonstrates missing review metadata rather than a magic ability to tell whether any HTTPS page is relevant.

CheckStructural pressureCurrent resultAssessment
identity-emptyA new brand has no role or purposeacceptedGAP
identity-routeBrand ID is not a safe route identifieracceptedGAP
version-unknownUnknown schema revision cannot be interpreted safelyacceptedGAP
compound-unknownA brand introduces an undeclared chemical compoundacceptedGAP
compound-missingA required compound is omittedrejectedPASS
compound-invalidCompound value falls outside the finite scalerejectedPASS
source-duplicateTwo source records have the same identifieracceptedGAP
source-bad-dateSource verification date is impossibleacceptedGAP
source-empty-factsA cited source contains no extracted evidenceacceptedGAP
source-unsafe-urlA source URI can execute coderejectedPASS
source-unrelatedA syntactically valid source lacks provenance reviewacceptedGAP
decision-missingOne structural dimension lacks evidence or an explicit unknown decisionacceptedGAP
decision-broken-referenceA decision refers to an unknown sourcerejectedPASS
example-duplicateTwo examples share a UI identifieracceptedGAP
example-empty-answerAn encounter has no responseacceptedGAP
example-unsourcedAn example points to nonexistent evidencerejectedPASS
boundaries-emptyA category enters the engine with no behavioural boundariesacceptedGAP
voice-providerAn unsupported provider voice reaches the current fixed OpenAI adapteracceptedGAP
voice-nan-durationNon-finite session duration bypasses the preview limitacceptedGAP
expression-invalidInvalid colour tokens break brand renderingacceptedGAP
expression-nanNon-finite motion breaks the shared orbacceptedGAP
interest-negativeInvalid interest weighting enters the ranking layeracceptedGAP
interest-constitution-isolationCampaign changes must not alter constitution or voice knowledge instructionsisolatedPASS
commercial-unapprovedEnabled commerce has no approved destinationsacceptedGAP
attribution-incompleteTracking is enabled with no event, consent or retention definitionacceptedGAP

Proposed v2 metadata contract — design only

Keep the six responsibilities. Expand their records, without adding new trait combinations:

text identity: brandId, schemaVersion, constitutionRevision, deploymentStatus, independentConceptDisclosure, locales, audiences constitution: role, purpose, compounds, styleRules, conditionalBoundaries[trigger, action, escalation, evidenceIds] sources: id, URL, publisher, sourceType, market, language, retrievedAt, publishedAt?, extractionStatus, reviewStatus, rightsNote claims: id, statement, kind, evidence[sourceId, locator], scope[market, productId?, variant?, audience?, channel?], validFrom?, validUntil?, reviewDue?, status, limitations[], contradicts[], supersedes[] decisions: id, compound, rationale, supportingClaimIds, counterEvidenceIds, confidence[high, medium, low, unknown], assumption, reviewStatus interests: id, topic, weight, market, audience, startsAt, endsAt, eligibleClaimIds; cannot patch constitution conversation: capabilities[], prohibitedActions[], unknownPolicy, clarificationRules[], escalationRules[] commercial: destinations[id, URL, purpose, approved, market, validUntil?, eligibilityRules], enabled attribution: enabled, allowedEvents, consentPolicy, retention, dataDestination; no raw conversation by default expression: rendererId, semanticTokens, typographyRef, motionProfile, reducedMotionProfile, accessibilityConstraints voice: providerId, voiceId, deliveryDirection, language, capabilityRequirements, sessionLimits, syntheticDisclosure encounters: id, intent, question, expectedBehaviour, claimIds[], boundaryIds[], context, counterexamples[]

This is a proposed contract, not an implemented v2 schema. Optional fields must mean unknown or inapplicable explicitly where those states affect eligibility. Do not silently default missing markets or freshness to global/current. Numeric trait mixing remains unchanged and is outside this review.

Recommended order

  1. Harden v1 record validation: identity/version, unique IDs, finite numbers, dates, supported presets and required sections.
  2. Introduce scoped atomic claims, provenance review and freshness eligibility; migrate Guinness evidence with its uncertainties retained.
  3. Move product UI copy, eligibility and voice-provider choices out of shared rendering logic.
  4. Add conditional behaviour and tool capability contracts; keep commerce/attribution disabled.
  5. Instantiate Nike only after the contract passes these same structural probes. Then evaluate its personality mix separately.

No current personality configuration or application behaviour was changed by this audit.