Public update notes
What changed, what is still open, and where reviewers should look next.
This page is the public change narrative for the DBaD ethics-engine review surface.
Use it with the current-state page, fixture suite, trace pages, and API docs. Older prompts and screenshots remain archive history, not the current proof surface.
Validation artifacts are point-in-time evidence only; they are not authorization for trust-positive use.
Latest public baseline
ok, typed non-authorization evidence, and status-field invariant checks.
Latest update
2026-05-30 - Round 47 crop-label guard and irreversible status evidence-code hardening
This update summarizes the public-safe state after Round 47 peer-response digestion: no-root-ok verifier/envelope behavior, typed non-authorization evidence prefixes, deterministic non-reversible status evidence codes, crop-safe trace metadata labels, the compact status-field compliance snapshot, a reproducible operator/peer audit script, and strict no-store cache headers on DBaD API/HTML proof surfaces.
What changed
- Round 47 response digestion found no confirmed live API/status-code defect. The only fresh actionable presentation concern was crop safety around trace metadata rows, so the trace index now labels review, expected, outcome, completeness, and closure rows as evidence, marks blind-spot counts as not authorization, and labels review filters as navigation aids. The Round 47 fuzz harness now fetches trace detail and trace index HTML and fails if those rows regress to raw
Review status:,Expected:,Outcome:,Completeness:, orClosure:labels. - Round 46 response digestion closed the remaining reversibility gap in the status evidence code. Status/class/boolean/outcome evidence now uses deterministic hash-based
structural-evidence-code-v2-...values rather than base64 or literal semantic suffixes. The verifier can recognize bounded known-code meanings for compliance checks, but field-level extraction, delimiter splitting, and base64 decoding no longer recover clean words such aspassed,verified,complete, ortrue. - Round 41 response hardening removed the remaining approval-shaped verifier/envelope shortcuts. DBaD non-authorization endpoints now omit root
ok, exposeok_removed_for_authorization_safety=NOT_AUTH::not_authorization_boolean_evidence_for_structural-evidence-code-v2-..., bind verifier classes asNOT_AUTH::not_authorization_class_evidence_for_..., bind verifier true values asNOT_AUTH::not_authorization_boolean_evidence_for_structural-evidence-code-v2-..., exposestatus_value_semanticsplusstatus_prefix_stripping_forbidden=true, and report secondary binding failures asmissing_secondary_status_binding=NOT_AUTH::not_authorization_boolean_evidence_for_structural-evidence-code-v2-.... A new public snapshot at/api/v1/dbad/status-field-compliance-snapshotgives cold-start reviewers a cache-bustable proof surface for the current status-field invariant. - Round 42 response digestion added a focused reproducibility path for peers whose web tools cannot fetch full live payloads:
python3 app/scripts/audit_dbad_status_field_compliance.py --base-url https://ethics.decencymeter.com. The script fetches the status-field compliance snapshot with cache-busting, walks the prose-reliance trace API for status-keyed strings, verifies copied safe citation and archival projection artifacts, confirms verifier responses omit rootokand do not echo full payloads, and checks bare-status plus representation-mutation rejection. The public contract now clarifies that status-keyed boolean/class evidence may use typed non-authorization prefixes such asNOT_AUTH::not_authorization_boolean_evidence_for_structural-evidence-code-v2-...andNOT_AUTH::not_authorization_class_evidence_for_..., but never bare approval-shaped strings. - Round 44 response digestion accepted the cache-layer concern as a concrete hardening item. DBaD API routes under
/api/v1/dbad/now forceCache-Control: no-store, max-age=0, must-revalidate,Surrogate-Control: no-store,Pragma: no-cache,Expires: 0, andX-DBaD-Cache-Status: fresh. The status-field compliance audit now verifies those headers on DBaD API responses, in addition to the no-root-okand status-value binding checks. API docs also warn client frameworks not to synthesize a rootokor authorization boolean from HTTP200or object-hydration helpers. - The Round 41 artifact pass also binds quoteable representation evidence: safe citations now expose
representation_class=NOT_AUTH::not_authorization_class_evidence_for_structural-evidence-code-v2-...andrepresentation_compliant=NOT_AUTH::not_authorization_boolean_evidence_for_structural-evidence-code-v2-..., while archival projections exposerepresentation_class=NOT_AUTH::not_authorization_class_evidence_for_structural-evidence-code-v2-.... The public proof text continues to list machine-only markers such ashuman_readable_bundle_fingerprint_machine_onlyand transaction status examples includingevaluation_payload_delivered_not_authorization,validation_payload_delivered_not_authorization,safe_citation_verification_delivered_not_authorization, andhistorical_attestation_verification_delivered_not_authorization. - The public entry pages were refreshed after the Round 34 value-bound hardening pass: Why DBaD exists now points readers to the current baseline, update notes, API docs, point-in-time evidence boundary, fresh trust-continuation requirement, and DecencyMeter advisory-only separation; DBaD Explained was also layout-hardened for desktop and mobile.
- Validation receipts now expose
operator_env_version,operator_env_state_hash,operator_env_id,operator_env_scope,operator_env_authority_level, andtrace_validation_version. - Structured reliance now exposes
depends_on_reliance_trace_refs,reliance_validation_versions, andreliance_snapshot_hash. - Prose-only reliance now exposes display-safe
current_validation_status_human_readable=NOT AUTHORIZATION - validation evidence: structural-evidence-code-v2-... - not permission,validation_class=advisory_only_prose,reliance_contribution_to_outcome=none, and the semantic status namepassed_no_valid_reliance_appliedis available only through value-bound, machine-only evidence fields. The trace headline saysNOT AUTHORIZATION - Structural Validation Passed (No Valid Reliance Applied). The exposed raw status fields and comparison token fields are all value-bound, for examplecurrent_validation_status=NOT_AUTH::not_authorization_status_evidence_for_structural-evidence-code-v2-...,validation_status_class=NOT_AUTH::not_authorization_status_evidence_for_structural-evidence-code-v2-...,validation_outcome_class=NOT_AUTH::not_authorization_status_evidence_for_structural-evidence-code-v2-...,current_validation_status_token=NOT_AUTH::not_authorization_status_evidence_for_structural-evidence-code-v2-...,validation_status_class_token=NOT_AUTH::not_authorization_status_evidence_for_structural-evidence-code-v2-..., andvalidation_outcome_class_token=NOT_AUTH::not_authorization_status_evidence_for_structural-evidence-code-v2-...; token fields also carry token-specific authority binding, machine-only, and non-display-safe companions. - Validation JSON now exposes
raw_status_fields_display_safe=false,raw_status_fields_machine_only=true,current_validation_status_machine_only=true,validation_status_class_machine_only=true,validation_outcome_class_machine_only=true,current_validation_status_value_authority_binding=not_authorization_value_bound,validation_status_class_value_authority_binding=not_authorization_value_bound,validation_outcome_class_value_authority_binding=not_authorization_value_bound, token companions such ascurrent_validation_status_token_authority_binding=not_authorization_token_bound,current_validation_status_token_display_safe=false,current_validation_status_token_machine_only=true,validation_status_class_token_authority_binding=not_authorization_token_bound,validation_status_class_token_display_safe=false,validation_status_class_token_machine_only=true,validation_outcome_class_token_authority_binding=not_authorization_token_bound,validation_outcome_class_token_display_safe=false,validation_outcome_class_token_machine_only=true, group fieldstoken_fields_display_safe=false,token_fields_machine_only=true,displaying_token_fields_is_non_compliant=true,displaying_raw_status_fields_is_non_compliant=true,preferred_display_fields,trust_positive_authorization=false,trust_authorization_class=not_authorized,approval_inference_forbidden=true,authorization_status_hard=NOT_AUTH::not_authorization_status_evidence_for_structural-evidence-code-v2-...,non_authorization_core_status=NOT_AUTH::not_authorization_status_evidence_for_structural-evidence-code-v2-...,headline_authority_binding=non_authorization_must_precede_outcome, display-safevalidation_outcome_class_human_readable=NOT AUTHORIZATION - structural validation evidence: structural-evidence-code-v2-... - not permission,minimum_safe_fields,required_bundled_fields,bundled_semantic_fields,bundling_hash,bundling_scope=full_validation_semantics_v2,human_readable_bundle_fingerprint_safe_display,served_hardening_round=round47_irreversible_status_evidence_code_v1,status_field_invariant_verified=true,status_human_readable_truncation_forbidden=true, explicit operator environment identity/scope/authority fields,provenance_class,safe_citation_v1_accepted=false, andrequires_trust_continuation_token_for_authorization=trueso clients do not treatis_valid=true, raw status fields, token fields, orpassed*status strings as permission. - Trust-continuation checks require
reliance_snapshot_hashwhen structured reliance dependencies exist. - Token verification can fail with
transitive_reliance_epoch_mismatchortrace_referenced_no_longer_available. - Successful token verification now exposes
valid_from_utcandvalid_until_utc, and emits an optional signedhistorical_verification_attestationfor audit/reporting only, with a signedNOT AUTHORIZATION - HISTORICAL EVIDENCE ONLYheader,attestation_class=historical_non_authoritative,authorization_status=NOT_AUTH::not_authorization_status_evidence_for_structural-evidence-code-v2-..., andverification_result=historically_valid_non_authoritative. - Trace detail pages include Copy safe citation, a compact signed JSON artifact that bundles canonical query-free trace URL, status value semantics, the current hardening round, timestamp, freshness window, receipt ID, validation epoch,
trace_validation_version, operator environment identity/scope/authority/state hash,provenance_class, validation summary, violations/advisories, non-authority fields, safe display fields, and the fresh-token requirement. The verify endpoint checks tamper evidence but still returnsaccepted_as_authorization=false; submitted partial projections missing required fields returnverifier_response_class=NOT_AUTH::not_authorization_class_evidence_for_partial_non_compliant, altered semantic, temporal, receipt, rule-version, operator-environment, provenance, violation, advisory context, missing value binding, or missing token binding returnsverifier_response_class=NOT_AUTH::not_authorization_class_evidence_for_structural-evidence-code-v2-..., and current-trace v2-to-v1 downgrades returnillegal_version_downgrade_detected. Copy archival projection remains compact archive metadata only; the semantic verifier class isarchival_projection_recognized, but the served value is bound as non-authorization class evidence. It verifies with HTTP422, no rootok,verifier_response_class=NOT_AUTH::not_authorization_class_evidence_for_structural-evidence-code-v2-...,error=archival_projection_not_safe_citation, andarchival_projection_accepted_as_safe_citation=false; missing or reordered archival headlines return a boundcontext_mismatch_non_compliantverifier class. - Safe-citation verification now separates signature validity from compliance: a signed artifact missing required bundled fields can still report
safe_citation_signature_valid=NOT_AUTH::not_authorization_boolean_evidence_for_structural-evidence-code-v2-..., but it omits rootok, returnsverifier_response_class=NOT_AUTH::not_authorization_class_evidence_for_partial_non_compliant, and returnssignature_and_authorization_class=NOT_AUTH::not_authorization_class_evidence_for_valid_signature_non_compliant_never_authoritative. - Round 27 response cleanup now binds the first visible trace-page signal to non-authorization: trace pages lead with
NOT AUTHORIZATION, renderheadline_authority_binding=non_authorization_must_precede_outcome, display operator environment identity/scope/authority plusprovenance_classin the first-screen authority banner, current bundle fingerprints begin withNOT_AUTH::, and current v2required_bundled_fieldsbindsheadline_authority_bindingplusprovenance_class. - Trace API responses now add root-level non-authority fields and omit root
ok:api_transaction_status=NOT_AUTH::not_authorization_status_evidence_for_structural-evidence-code-v2-...,api_transport_status=NOT_AUTH::not_authorization_status_evidence_for_structural-evidence-code-v2-...,api_delivery_outcome=NOT_AUTH::not_authorization_outcome_evidence_for_structural-evidence-code-v2-...,ok_removed_for_authorization_safety=NOT_AUTH::not_authorization_boolean_evidence_for_structural-evidence-code-v2-...,ok_meaning=transport_only_not_authorization,ok_authoritative_for_trust_positive_use=false,api_envelope_ok_authoritative_for_trust_positive_use=false,trust_positive_authorization=false, andunsafe_if_ok_used_for_authorization=NOT_AUTH::not_authorization_boolean_evidence_for_structural-evidence-code-v2-.... - Pre-Round 29 hardening originally added non-authority envelope fields; Round 41 supersedes the transport shortcut by removing root
okfrom DBaD non-authorization endpoints.POST /api/v1/dbad/evaluate,POST /api/v1/dbad/validate,POST /api/v1/dbad/safe-citation/verify, andPOST /api/v1/dbad/historical-verification-attestation/verifynow repeat bound transaction statuses,api_transport_status=NOT_AUTH::not_authorization_status_evidence_for_structural-evidence-code-v2-...,ok_removed_for_authorization_safety=NOT_AUTH::not_authorization_boolean_evidence_for_structural-evidence-code-v2-...,ok_meaning=transport_only_not_authorization,ok_authoritative_for_trust_positive_use=false,api_envelope_authorization_class=NOT_AUTH::not_authorization_class_evidence_for_structural-evidence-code-v2-...,accepted_as_authorization=false, andunsafe_if_ok_used_for_authorization=NOT_AUTH::not_authorization_boolean_evidence_for_structural-evidence-code-v2-.... Trace detail titles and social descriptions still start withNOT AUTHORIZATIONso link previews cannot quote a pass-shaped status without the boundary. - Round 32 response hardening closes the remaining visible fingerprint crop path. Trace Validation now exposes
current_validation_status_human_readable,validation_status_class_human_readable,validation_outcome_class_human_readable, andhuman_readable_bundle_fingerprint_safe_display; the rawhuman_readable_bundle_fingerprintremains in machine/copy artifacts for verification, but the visible trace page renders only the safe display projection so pass-shaped fragments cannot be cropped out of a long fingerprint line without adjacentNOT AUTHORIZATIONwording. - Round 35 response hardening closes the comparison-token re-exposure path: extracting only
current_validation_status_token,validation_status_class_token, andvalidation_outcome_class_tokenstill requires adjacent token-specific fields such as*_token_authority_binding=not_authorization_token_bound,*_token_display_safe=false, and*_token_machine_only=true. Safe-citation and archival-projection verifiers reject missing or altered token authority/display-safety binding ascontext_mismatch_non_compliant. - Round 37 compatibility closure removes the remaining v1 safe-citation acceptance window. full_validation_semantics_v1 is no longer accepted as a complete safe-citation scope; only
full_validation_semantics_v2can verify asNOT_AUTH::not_authorization_class_evidence_for_structural-evidence-code-v2-.... This is intentionally breaking because there are no active external API consumers. - The Agents of Chaos comparison package now maps DBaD controls to the paper's observed agent failure families: non-owner compliance, destructive tool use, resource exhaustion, identity spoofing, cross-agent propagation, and false completion reports.
- Trace-detail navigation now defensively and recursively redirects same-host absolute URLs accidentally placed under
/dbad/traces/back to their canonical route, so malformed paths like/dbad/traces/https://ethics.decencymeter.com/agents-of-chaos-comparisonopen the comparison page instead of a dead trace URL. - Round 40 response hardening collapses the old companion-only path: every derived
*status*string value, including explicit token fields, must now start withNOT_AUTH::orNOT AUTHORIZATIONand must still carry*_machine_only=true,*_display_safe=false,*_authority_binding=not_authorization_token_bound, and*_human_readable=NOT AUTHORIZATION - status evidence: structural-evidence-code-v2-... - not permission; trace/validation JSON and submitted artifacts exposesecondary_status_fields_bound=true,secondary_status_binding_policy, andglobal_status_field_invariant=Every status field must be value-bound and companion-bound; no bare approval-shaped status token may appear.; verifiers reject submitted artifacts that drop value binding or companions withmissing_secondary_status_binding=true; API docs include a status field compliance linter for external renderers. - Verifier responses for legacy v1 safe citations now include
v1_citation_rejection_reason.rejection_code=legacy_bundle_version_rejected,rejection_policy_date=2026-05-29, and a policy URL to make the closure explicit for stored v1 artifacts. - The DecencyMeter public home page empty-wall card now reads as an intentional reviewed-content empty state instead of placeholder copy, and the wall link uses the site button treatment rather than a browser-default blue link.
- Round 31 response hardening makes the Trace Validation metadata rows crop-safe too: visible
current_validation_status,validation_status_class, andvalidation_outcome_classrows now render values such asNOT AUTHORIZATION - validation class evidence: structural-evidence-code-v2-... - not permission/NOT AUTHORIZATION - structural validation evidence: structural-evidence-code-v2-... - not permission. Print/PDF output also appends[NOT AUTHORIZATION - structural evidence only]to those metadata rows. The visible validation summary line beginsNOT AUTHORIZATION - Validation result:, each visible rule result renderspass - not authorizationorfail - not authorization, and archival projections add labeled status values so alternative YAML/XML-style serialization cannot preserve only a clean pass-shaped value without a companion non-authorization value. - Public API discovery now exposes predictable JSON aliases at
/api/docs/ethics.jsonand/api/docs/church.json, matching the existing?format=jsondiscovery payloads; the ethics robots policy explicitly allows/api/docs/ethics.json. - The DBaD public-surface update contract is now explicit and audited: DBaD ethics logic/API/code changes must account for
/updates,/current-state,/api/docs/ethics, and/dbad-ethics-817, plus running log, recovery file, task queue, and prompt/synthesis updates. The check runs inside the standard public contract audit bundle. - The latest pre-peer sweep passed public contract, stale-language consistency, prose-reliance contract, API docs live-route, internal-link, HTML/static health, security-header, template accessibility, canonical-link, API docs discovery schema, host-scoping, and desktop/mobile screenshot-smoke checks.
- API docs now include a historical-attestation quoteability example that distinguishes a valid non-authoritative citation from the invalid claim "DBaD approved this trace."
- Prose-only reliance now leads with an advisory runtime state and stays non-machine-verified.
- Copied/API JSON for prose-only reliance now uses display-safe
current_validation_status_human_readable=NOT AUTHORIZATION - validation evidence: structural-evidence-code-v2-... - not permissionin addition to the raw machine-only status token. - Successful reset-boundary and structured-reliance paths now use display-safe pass states such as
NOT AUTHORIZATION - validation evidence: structural-evidence-code-v2-... - not permissionandNOT AUTHORIZATION - validation evidence: structural-evidence-code-v2-... - not permission, so copied dependency summaries no longer need bare generic pass wording. - A repeatable prose-reliance contract audit now checks the trace API, trace page, hidden copy JSON payloads, and docs pages for the no-valid-reliance-applied contract.
Public proof links
Outstanding questions
- Signed historical verification attestations are implemented only as non-authoritative audit artifacts; they return
accepted_as_authorization=falseand are rejected as trust-positive authorization. - Persistent DB-backed token revocation and public introspection remain deferred until certified integrations or longer-lived tokens justify the operational plane.
- Signed first-use resource-continuity attestations and verifier quorum are still decision gates, not implemented guarantees.
Next peer-review focus
- After first-line authority binding, can any cropped screenshot still preserve a pass-shaped result while dropping
NOT AUTHORIZATIONor operator-environment provenance? - Known-issue cleanup target for the next peer pass: challenge any remaining cross-environment, verifier-response, copied-artifact, API-envelope, or public-discoverability shape that could make archive, citation, attestation, or validation artifacts look like trust-positive authorization.
- Does the new
archival_minimal_non_authoritativeprojection class make compact archives useful without weakening complete safe citations? - Do reviewers find any remaining compatibility path that still permits a downgraded or partial artifact to verify as complete?
- Are historical attestations clearly useful as audit evidence without becoming static trust permission, even under partial extraction?
- Are token and reliance epoch failure states diagnostic enough for clients?
Recent Public Updates
- 2026-05-30: Round 46 irreversible evidence-code hardening: status/class/boolean/outcome evidence payloads now use deterministic non-reversible
structural-evidence-code-v2-...values; audit scripts reject legacy base64/literal semantic suffixes and continue to verify no-root-ok, no-store headers, payload suppression, and mutation rejection. - 2026-05-29: Round 40 all-status value-binding hardening: every status-like string value is self-negating with
NOT_AUTH::orNOT AUTHORIZATION, including explicit token fields and verifier response status fields. Companion fields remain mandatory supplements, not alternatives. Current served hardening marker:served_hardening_round=round47_irreversible_status_evidence_code_v1. - 2026-05-29: Round 37 compatibility closure and Agents of Chaos package:
full_validation_semantics_v1no longer verifies as a complete safe citation, new artifacts remainfull_validation_semantics_v2only, and the new comparison report maps DBaD controls to the Agents of Chaos failure families. - 2026-05-29: Round 35 response hardening: exposed raw status fields carry value-level
NOT_AUTH::binding, legacy comparison values remain only in explicit*_tokenfields, every token field carries*_token_authority_binding=not_authorization_token_bound,*_token_display_safe=false, and*_token_machine_only=true, and verifier checks reject safe-citation/archive artifacts whose raw status or token bindings are missing. - 2026-05-26: Round 19 response hardening: prose-only reliance copied/API JSON now reports
validation_class=advisory_only_prose, validation artifacts exposetrust_positive_authorization=false, historical attestations carry a signedNOT AUTHORIZATION - HISTORICAL EVIDENCE ONLYheader, and a prose-reliance contract audit guards the public/API/copy surfaces. - 2026-05-27: Round 20 response hardening: safe citations now carry
citation_class=safe_non_authoritative, validation metadata exposestrust_authorization_class=not_authorized, and API docs explicitly reject rawvalidation_status_classpass tokens as authorization. - 2026-05-27: Round 21 queue hardening: safe citations now include a signed
safe_citation, stablesafe_citation_id, and read-only/api/v1/dbad/safe-citation/verifyendpoint that verifies tamper evidence while preservingaccepted_as_authorization=false. - 2026-05-27: Round 21 response hardening: validation metadata and safe citations now include irreducible non-authorization fields
authorization_status_hard=NOT_AUTH::not_authorization_status_evidence_for_structural-evidence-code-v2-...andnon_authorization_core_status=NOT_AUTH::not_authorization_status_evidence_for_structural-evidence-code-v2-...; trace pages render those fields next to display-safe validation status labels. - 2026-05-27: Round 22 response hardening: validation metadata and safe citations now include
minimum_safe_fields,required_bundled_fields, andbundling_hash; the safe-citation verifier reportsrepresentation_compliant=falsefor partial projections that omit required non-authorization fields. - 2026-05-27: Round 23 response hardening:
bundling_hashnow covers full validation semantics includingtrace_id,current_validation_status,validation_status_class,validation_class,validation_summary,authorization_status_hard, andnon_authorization_core_status; altered context now verifies ascontext_mismatch_non_compliant. - 2026-05-27: Round 24 response hardening:
bundling_scope=full_validation_semantics_v2now bindsvalidated_at_utc,validation_fresh_until_utc,validation_receipt_id,validation_epoch,violations, andadvisory_notes, and complete artifacts includehuman_readable_bundle_fingerprint. - 2026-05-27: Round 25 response hardening: v2 bundles now also bind
trace_validation_versionandoperator_env_state_hash; verifier rejects current-trace v2-to-v1 projection downgrades withillegal_version_downgrade_detected. - 2026-05-27: Round 26 queue hardening: validation metadata added display-safe validation outcome labels and the first explicit v1 signed-citation transition window; that transition window is now superseded by the 2026-05-29 v2-only safe-citation contract. Trace detail pages also added Copy archival projection, which verifies only as
archival_minimal_non_authoritative. - 2026-05-27: Known issue cleanup: archival projection verification became self-negating at the transport/envelope layer and returned
error=archival_projection_not_safe_citation. This historical entry is superseded by the Round 41 contract: current verifier responses omit rootokand bind verifier classes/boolean evidence withNOT_AUTH::not_authorization_*_evidence_for_.... - 2026-05-27: Round 26 response hardening introduced HTTP
422archival projection verification and requiredartifact_header=ARCHIVAL PROJECTION - NOT SAFE CITATION; v2 semantic bundles addedoperator_env_id,operator_env_scope, andoperator_env_authority_level. Current complete safe citations now returnverifier_response_class=NOT_AUTH::not_authorization_class_evidence_for_structural-evidence-code-v2-.... - 2026-05-28: Pre-peer public-surface audit: public contract, stale-language, prose-reliance, API-doc route, internal-link, HTML/static, security-header, template-accessibility, canonical-link, API-doc discovery, host-scoping, and desktop/mobile screenshot-smoke checks passed;
/api/docs/ethics.jsonand/api/docs/church.jsonare now predictable JSON discovery aliases. - 2026-05-28: Round 28 response digestion: trace subtitles now start with
NOT AUTHORIZATION, archival projections start with sort-stableaaa_not_authorization_headline=NOT AUTHORIZATION - ARCHIVAL PROJECTION - NOT SAFE CITATIONand duplicateheadline_authority_block=NOT AUTHORIZATION - ARCHIVAL PROJECTION - NOT SAFE CITATION, verify as context-mismatched if that first sentinel is missing or reordered, and trace API envelopes add root non-authority fields while preserving the standardokdelivery flag. - 2026-05-28: Round 29 response hardening: every DBaD non-authorization envelope now states
api_transport_status=NOT_AUTH::not_authorization_status_evidence_for_structural-evidence-code-v2-...,ok_meaning=transport_only_not_authorization, andunsafe_if_ok_used_for_authorization=NOT_AUTH::not_authorization_boolean_evidence_for_structural-evidence-code-v2-...; archival projections useaaa_not_authorization_headlineso the non-authorization warning remains first under sorted JSON serialization. - 2026-05-28: Public-surface update contract hardening: code/API/logic changes now require synchronized updates to
/updates,/current-state,/api/docs/ethics, and/dbad-ethics-817; the contract audit is part of the standard pre-peer public contract runner. - 2026-05-28: Pre-Round 29 gap closure: trace detail
<title>and meta descriptions now begin withNOT AUTHORIZATION, and non-authorization root envelope fields now cover DBaD evaluate, validate, safe-citation verify, and historical-attestation verify endpoints in addition to trace GET. - 2026-05-28: Round 32 response hardening: visible Trace Validation no longer renders the raw long
human_readable_bundle_fingerprintrow; it rendershuman_readable_bundle_fingerprint_safe_displayplus*_human_readablestatus values, while raw fingerprints remain available in machine/copy artifacts for verification. - 2026-05-28: Round 31 response hardening: trace validation summary, checked-rule rows, and visible status metadata rows now carry same-line non-authorization wording; archival projections include labeled status-value fields such as
validation_outcome_class_labeled, preventing croppedpassed/pass/structural_passchecklists or alternate serialization streams from being quoted as trust-positive permission. - 2026-05-28: Round 27 response digestion: trace detail pages now lead with
NOT AUTHORIZATION - structural validation evidence only, validation headings useNOT AUTHORIZATION - Structural Validation Passed/ failed wording, first-screen provenance displaysoperator_env_id,operator_env_scope,operator_env_authority_level, andprovenance_class, current v2 semantic bundles bindheadline_authority_bindingandprovenance_class, and API docs now include a verifier response matrix plus the.data.current_validation.metadataAPI-envelope clarification. - 2026-05-26: Round 20 readiness: trace pages now expose Copy safe citation with canonical query-free
trace_url, API docs warn againstpassed*prefix authorization, and historical-attestation quoteability examples distinguish valid non-authoritative citations from invalid approval claims. - 2026-05-26: Round 17 response digestion added reliance epoch metadata, operator environment binding, unavailable-trace token failure behavior, and stronger prose-reliance presentation.
- 2026-05-26: Round 16 work clarified reliance completeness: partial structured reliance fails, governing reliance on non-governing analysis fails, and prose references are advisory only.
- 2026-05-25 to 2026-05-26: Public fixture coverage expanded for lineage propagation, same-resource orphan handling, zero-trust reset boundaries, non-governing analysis, reset descendants, and rejected reset cases.
- 2026-05-25: Current-state, trace-consumption, and DecencyMeter boundary pages were hardened so reviewers start from served pages rather than stale prompt history.
How To Use These Notes
- Start with Current state when checking whether an old peer finding is still live.
- Use DBAD-ETHICS-817 for public fixture links and expected violation codes.
- Use API docs for machine-facing contract details.
- Use Peer review for older AI review history and current report shape.
- Do not treat these notes as a replacement for live trace or API verification.
Deferred or Parked Scope
Payment, Church-entity incorporation, and 501(c)(3) work are not part of the active ethics-engine peer-review sprint. They remain parked until owner direction changes.
This page focuses on DBaD trace validation, reliance, token-state contracts, public review surfaces, and DecencyMeter separation.