Compass Method Investigation

Table of Contents

1. When to use this skill

A question whose deliverable is an answer: how does this subsystem work, why was it built this way, is this claim true, should we do X or Y. The work is reading and reasoning, and it changes nothing.

Not this method the moment the answer implies a change and you start making it. Finish the investigation, record the answer, then re-match to the method the change needs. An investigation that quietly becomes a refactor produces neither a good answer nor a reviewable diff.

2. How to use this skill

2.1. 1. State the question and what would answer it

Write the question down, and write what evidence would settle it. A question with no stated answer-shape expands until the context runs out.

Say also what would change if the answer went each way. A question whose answers all lead to the same action does not need investigating.

2.2. 2. Ground before searching

Resolve the concepts to knowledge documents first (Grounding), reading the cluster's structure note where one exists. Search finds pages that mention a term; a structure note says which of them are load-bearing (compass-doc-find, compass-doc-show).

For why a thing is the way it is, the record is in the decisions and the closed tasks rather than the code: the code says what, the task says why.

2.3. 3. Read narrowly, and stop

Open the two or three sources the map ranked highest, not the twenty the search returned (principle-guard-the-context-window). Reading more is not safer: an answer assembled from a wide shallow sweep is less reliable than one from a narrow deep read, and it costs the context the answer has to be written in.

2.4. 4. Check the claim against the system, not the language

Where the answer asserts that something is enforced, verify it here rather than reasoning from how the tool usually behaves. A compiler flag the project does not set, a check no workflow runs, a rule stated in prose and enforced nowhere: each reads as true and is not.

Running the smallest thing that would fail if the claim were false beats any amount of reading.

2.5. 5. Answer, with citations and with the gaps named

Give the answer first, then the evidence, each claim pointing at the file, document or command that supports it. Where the evidence ran out, say so in the answer rather than smoothing over it: "I could not determine X" is a finding, and a confident answer covering an unchecked gap is worse than no answer.

Record it where it will be found again. A durable fact goes to a knowledge document via compass-doc-add; an answer specific to one piece of work goes on the task.

3. When this method is the wrong one

Re-match if the question turns out to have an observable answer nobody has observed, which is compass-method-prototype; or if it resolves to a defect, which is compass-method-bug-fix.

4. Recipes

5. Reference

Emacs 29.3 (Org mode 9.6.15)