markharness

0006: Placement of the project directory within a repository (formal support for subdirectory placement)

Status

Accepted

Background

A defect was found where, in an external project (todo2, in which the app itself sits at the repository root and markharness’s knowledge/ etc. is initialized under docs/ via markharness init --dir docs), running markharness execution record failed in a layout where markharness’s project directory (--dir) does not coincide with the root of the git repository (i.e., is placed in a subdirectory within the repository). This is a primary-source case demonstrating that real users do attempt this layout in practice, and before fixing it, a design decision was needed on whether this layout should be formally supported at all.

Options considered

  1. Require that the project directory always be placed at the repository root (document it as a constraint only; no code change required).
  2. Formally support placement in any subdirectory within the repository (requires a bug fix).

Decision

Option 2 was adopted. The project directory (the parent of knowledge/ etc., the root specified via --dir/cwd) need not coincide with the root of the git repository.

Rationale:

Response taken

Issues left out of scope