Skip to content

Commit 67798ff

Browse files
Resolve ROOT-TODO-05: add source_audit_run + Generation Audit Ledger
Contributed from real-world use in the JLDN-Dev-Ecosystem project, which extends this schema as part of a larger ecosystem. That project needed a way to distinguish "never audited" from "audited, clean" -- a formal audit pass that finds nothing previously left no artifact anywhere. Adds an optional companion dataset (.dev/[GEN]/audit-log.json, Mode 2, Section 2) written unconditionally including zero-finding runs, and a new optional source_audit_run Object property on ISSUE tasks (Section 4) that's bidirectional with the ledger's own finding_ids array, so a claimed audit source is verifiable rather than merely asserted.
1 parent e328b48 commit 67798ff

4 files changed

Lines changed: 22 additions & 2 deletions

File tree

.dev/backlog.json

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,5 +64,17 @@
6464
"target_files": [
6565
"docs/specification.md"
6666
]
67+
},
68+
{
69+
"id": "ROOT-TODO-05",
70+
"title": "Add source_audit_run property and Generation Audit Ledger companion dataset",
71+
"status": "completed",
72+
"priority": "medium-1",
73+
"protection": "protected",
74+
"created_at": "2026-08-25T00:00:00+02:00",
75+
"details": "Contributed from real-world use in the JLDN-Dev-Ecosystem project, which extends this schema as part of a larger ecosystem. That project built an audit-run ledger (.dev/[GEN]/audit-log.json) so a formal audit pass that finds nothing still leaves a record -- previously, a clean run left no artifact anywhere, making 'never audited' indistinguishable from 'audited, clean'. Codified here as an optional companion dataset (Mode 2, docs/specification.md Section 2) plus a new optional source_audit_run Object property on ISSUE tasks (Section 4), bidirectional with the ledger's own finding_ids array so a claimed audit source is verifiable rather than merely asserted.",
76+
"target_files": [
77+
"docs/specification.md"
78+
]
6779
}
6880
]

CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,12 @@ All notable changes to the **JLDN Backlog Schema Specification** will be documen
55
The format is based on [Keep a Changelog 1.1.0](https://keepachangelog.com/en/1.1.0/),
66
and this project adheres to the [JLDN Generational Versioning Schema (GVS)](https://github.com/JLDesignNetwork/Generational-Versioning-Schema).
77

8+
## [2608.22.0-bs] - 2026-08-25
9+
10+
### Added
11+
- **`source_audit_run` Property**: New optional Object property on `ISSUE` tasks originating from a formal audit pass (`{generation, source, run_at}`). Bidirectional with a new optional companion dataset, the Generation Audit Ledger.
12+
- **Generation Audit Ledger**: New optional companion dataset, `.dev/[GEN]/audit-log.json` — an append-only record of every formal audit pass against a generation's work, written unconditionally including zero-finding runs, so "never audited" and "audited clean" remain distinguishable. Contributed from real-world use in the JLDN-Dev-Ecosystem project, which now extends this schema as part of a larger ecosystem.
13+
814
## [2608.21.0-bs] - 2026-08-20
915

1016
### Changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
"rulesetName": "JLDN Backlog Schema",
66
"type": "ruleset",
77
"platform": "github:public",
8-
"version": "2608.21.0-bs",
8+
"version": "2608.22.0-bs",
99
"backlog": ".dev/backlog.json",
1010
"changelog": "CHANGELOG.md"
1111
}

docs/specification.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
> **Document:** `docs/specification.md`
44
> **Author:** Jeff Langdon (JL Design Network)
55
> **Standard:** JLDN Task & Backlog Management Protocol
6-
> **Version:** `2608.21.0-bs`
6+
> **Version:** `2608.22.0-bs`
77
88
---
99

@@ -29,6 +29,7 @@ For large rulesets and software repositories, tasks are stored in companion JSON
2929
- Root Project Backlog: `.dev/backlog.json`
3030
- Generation Master Task Register: `.dev/[GEN]/backlog.json`
3131
- Generation Conceptual Proposals: `.dev/[GEN]/ideas.json`
32+
- Generation Audit Ledger *(Optional)*: `.dev/[GEN]/audit-log.json` — append-only record of every formal audit pass against this generation's work, written unconditionally (including zero-finding runs), so "never audited" and "audited clean" remain distinguishable. Referenced bidirectionally via `source_audit_run` (§4) on any `ISSUE` task the pass produces.
3233

3334
---
3435

@@ -85,6 +86,7 @@ Every task adheres to the standard prefix taxonomy:
8586
* **`relates_to` (String, Optional):** Horizontal context association.
8687
* **`target_files` (Array of Strings, Optional):** Localized file tracking for isolated environments without git dependency.
8788
* **`target_version` / `target_component` / `target_repository` (String, Optional):** Optional pointers to eliminate cross-project reference ambiguity.
89+
* **`source_audit_run` (Object, Optional):** Present on `ISSUE` tasks originating from a formal audit pass (e.g. a Red Team review). Structure: `{generation, source, run_at}``generation` (GVS epoch the run occurred in), `source` (identifier for the audit or team that produced the finding, e.g. `"red"`), `run_at` (ISO-8601 timestamp of the run). Bidirectional with the companion audit ledger's own `finding_ids` array (§2) — a task's `source_audit_run` and the ledger entry's `finding_ids` cross-reference each other, so a claimed source is verifiable, not merely asserted.
8890

8991
---
9092

0 commit comments

Comments
 (0)