Skip to content

Detect flat history and refuse it with exit 2; the legacy capability (rulings 82, 97) #145

Closed as not planned

Description

@Hafeok

Issue 2 of ledger/prd/namespace-independence-prd.md §6, opened on the principal's instruction (session ledger/sessions/2026-10-namespace-layout-authority.md).

Cites. PRD §3.1.1 (History written in the flat layout), §3.5.7 (What git still does).

Size. M. Depends on. Issue 1.

Appendix C note. Yes: spec v1.9.

Rulings carried. 82 (reading the flat layout in history is a legacy capability outside the verifier profile; a verifier without it refuses pre-v1.9 history), 97 (ruling 82 stands; the capability shrinks to L007, L009 and the base overlay).

What it builds. Before reading history, one path-limited query looks for the flat paths (.decisions/log, .decisions/roles, .decisions/sig) on the first-parent history of the verified commit and, when given, the base. A verifier without the legacy capability refuses such a repository with exit status 2, naming the first flat commit, and never reports it conformant. With the capability, history is read at both path patterns, told apart by path, and only its files' entities: landing keyed by entity across both patterns for L007 (with ruling 58's format: comparison), L009's pickaxe over both paths, and the base overlay reading a flat base. No flat semantics are read from history. Landing positions still decide authority verdicts until issue 12, and read only per-namespace paths; this is sound only because no committed store with flat history holds an authority record (confirmed by scan). Protocol: LP-3.35 (new), LP-8.30's re-layout exception, Appendix B row and Appendix C note.

Acceptance criteria (§4.1).

  • AC-82. With the legacy capability, this repository's history, re-laid out in one commit, verifies with every entity's L009 author and immutability verdict the same as before the re-layout; there are no landing indexes to compare (85). Without it, the same repository is refused with exit 2, naming the first flat commit, and is never reported conformant (97).

Activity

  1. Hafeok commented on Nov 3, 2026

    @Hafeok
    CollaboratorAuthor

    Closed as not carried under D1.24`` and the definition's chapter 8:``` the Rust tool is frozen at rust-final and its tree left `main` in #166 (`53bd547`). This concerns the Rust ledger (its keys, namespaces or authority), which is Writ's authority graph now. The rewrite holds no key and no grant, and `writ import` reads `.decisions/` once, at the tag. Disposition approved on #165.


    Generated by Claude Code

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    Priority

    None yet

    Effort

    None yet

    Progress

    None yet

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions