Skip to content
Cockpit0.29.0
A snapshot: read at commit 707a04c7ce8 on 2026-10-18T00:06:01Z by majordomus 0.29.0. Nothing on this page is read again. See it live

project.never-author-identity@1

Never author identity fields

What it is

URI
majordomus://rule/project.never-author-identity@1
Kind
rule
Identity
project.never-author-identity@1
Path
.ai/repo/rules/project/never-author-identity.v1.md
Provenance
declared
Media type
text/markdown
As a capability
rule.project.never-author-identity@1

Front matter

{
  "id": "project.never-author-identity",
  "version": 1,
  "kind": "rule",
  "title": "Never author identity fields",
  "description": "repository_id, branch, head, working_tree and changed_files on any record are computed from git and never written by hand.",
  "statement": "repository_id, branch, head, working_tree and changed_files on any record are computed from git and never written by hand.",
  "status": "active",
  "class": "blocking",
  "depends_on": [],
  "tags": [
    "records",
    "git"
  ],
  "x-majordomus": {
    "tests": [
      "test/cases/05_handover.sh",
      "test/cases/20_checkpoint.sh",
      "test/cases/61_session_envelope.sh"
    ]
  }
}

Content

---
id: project.never-author-identity
version: 1
kind: rule
title: Never author identity fields
description: repository_id, branch, head, working_tree and changed_files on any record are computed from git and never written by hand.
statement: repository_id, branch, head, working_tree and changed_files on any record are computed from git and never written by hand.
status: active
class: blocking
depends_on: []
tags: [records, git]

x-majordomus:
  tests: [test/cases/05_handover.sh, test/cases/20_checkpoint.sh, test/cases/61_session_envelope.sh]
---

# Rationale

A record that names a commit looks checkable; one whose commit was typed is not, and cannot be told apart later.

# Required behaviour

repository_id, branch, head, working_tree and changed_files on any record are computed from git and never written by hand.

# Failure behaviour

No command decides this rule; a reviewer does, and a change that violates it is not merged. Where a behavioural case covers part of it, that case is named below.

# Verification

Review. test/cases/05_handover.sh, test/cases/20_checkpoint.sh and test/cases/61_session_envelope.sh refuse an authored identity field.