@jeger-ai/opengantry 2.3.0 → 2.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (230) hide show
  1. package/README.md +60 -59
  2. package/dist/cli/commands/context-request.d.ts +2 -2
  3. package/dist/cli/commands/context-request.d.ts.map +1 -1
  4. package/dist/cli/commands/context-request.js +13 -13
  5. package/dist/cli/commands/context-request.js.map +1 -1
  6. package/dist/cli/commands/init.js +2 -2
  7. package/dist/cli/commands/onboarding.js +4 -4
  8. package/dist/cli/commands/onboarding.js.map +1 -1
  9. package/dist/cli/commands/planner.d.ts +11 -0
  10. package/dist/cli/commands/{teacher.d.ts.map → planner.d.ts.map} +1 -1
  11. package/dist/cli/commands/{teacher.js → planner.js} +11 -11
  12. package/dist/cli/commands/{teacher.js.map → planner.js.map} +1 -1
  13. package/dist/cli/commands/runtime.d.ts +1 -1
  14. package/dist/cli/commands/runtime.d.ts.map +1 -1
  15. package/dist/cli/commands/runtime.js +4 -4
  16. package/dist/cli/commands/runtime.js.map +1 -1
  17. package/dist/cli/lib/audience-output.d.ts +1 -1
  18. package/dist/cli/lib/audience-output.d.ts.map +1 -1
  19. package/dist/cli/lib/audience-output.js +16 -16
  20. package/dist/cli/lib/audience-output.js.map +1 -1
  21. package/dist/cli/lib/break-glass.js +1 -1
  22. package/dist/cli/lib/command-reporter.d.ts.map +1 -1
  23. package/dist/cli/lib/command-reporter.js +9 -4
  24. package/dist/cli/lib/command-reporter.js.map +1 -1
  25. package/dist/cli/lib/config-namespace.d.ts +2 -2
  26. package/dist/cli/lib/config-namespace.js +2 -2
  27. package/dist/cli/lib/constants.d.ts +8 -8
  28. package/dist/cli/lib/constants.d.ts.map +1 -1
  29. package/dist/cli/lib/constants.js +8 -8
  30. package/dist/cli/lib/constants.js.map +1 -1
  31. package/dist/cli/lib/context-request.d.ts +4 -4
  32. package/dist/cli/lib/context-request.d.ts.map +1 -1
  33. package/dist/cli/lib/context-request.js +11 -11
  34. package/dist/cli/lib/context-request.js.map +1 -1
  35. package/dist/cli/lib/doctor-core.d.ts.map +1 -1
  36. package/dist/cli/lib/doctor-core.js +49 -22
  37. package/dist/cli/lib/doctor-core.js.map +1 -1
  38. package/dist/cli/lib/doctor-types.d.ts +2 -2
  39. package/dist/cli/lib/errors.js +6 -6
  40. package/dist/cli/lib/errors.js.map +1 -1
  41. package/dist/cli/lib/executor-log-integrity.d.ts +4 -0
  42. package/dist/cli/lib/executor-log-integrity.d.ts.map +1 -0
  43. package/dist/cli/lib/{worker-log-integrity.js → executor-log-integrity.js} +8 -8
  44. package/dist/cli/lib/executor-log-integrity.js.map +1 -0
  45. package/dist/cli/lib/{worker-log-line-map.d.ts → executor-log-line-map.d.ts} +4 -4
  46. package/dist/cli/lib/executor-log-line-map.d.ts.map +1 -0
  47. package/dist/cli/lib/{worker-log-line-map.js → executor-log-line-map.js} +4 -4
  48. package/dist/cli/lib/executor-log-line-map.js.map +1 -0
  49. package/dist/cli/lib/file-merge-gxt.js +1 -1
  50. package/dist/cli/lib/file-merge-gxt.js.map +1 -1
  51. package/dist/cli/lib/fix-hints.d.ts +6 -6
  52. package/dist/cli/lib/fix-hints.d.ts.map +1 -1
  53. package/dist/cli/lib/fix-hints.js +36 -30
  54. package/dist/cli/lib/fix-hints.js.map +1 -1
  55. package/dist/cli/lib/git-metrics.js +10 -10
  56. package/dist/cli/lib/git-metrics.js.map +1 -1
  57. package/dist/cli/lib/git-proof.d.ts +7 -5
  58. package/dist/cli/lib/git-proof.d.ts.map +1 -1
  59. package/dist/cli/lib/git-proof.js +42 -19
  60. package/dist/cli/lib/git-proof.js.map +1 -1
  61. package/dist/cli/lib/gxt-config.d.ts +9 -0
  62. package/dist/cli/lib/gxt-config.d.ts.map +1 -0
  63. package/dist/cli/lib/gxt-config.js +20 -0
  64. package/dist/cli/lib/gxt-config.js.map +1 -0
  65. package/dist/cli/lib/gxt-error-codes.d.ts +2 -0
  66. package/dist/cli/lib/gxt-error-codes.d.ts.map +1 -1
  67. package/dist/cli/lib/gxt-error-codes.js +7 -3
  68. package/dist/cli/lib/gxt-error-codes.js.map +1 -1
  69. package/dist/cli/lib/init-compose.js +1 -1
  70. package/dist/cli/lib/init-interactive.js +1 -1
  71. package/dist/cli/lib/init-interactive.js.map +1 -1
  72. package/dist/cli/lib/init-tutorial.js +14 -14
  73. package/dist/cli/lib/init-tutorial.js.map +1 -1
  74. package/dist/cli/lib/kpi-engine.d.ts +1 -1
  75. package/dist/cli/lib/kpi-engine.d.ts.map +1 -1
  76. package/dist/cli/lib/kpi-engine.js +11 -11
  77. package/dist/cli/lib/kpi-engine.js.map +1 -1
  78. package/dist/cli/lib/legislate-forbidden-zone.d.ts +1 -1
  79. package/dist/cli/lib/legislate-forbidden-zone.js +1 -1
  80. package/dist/cli/lib/legislate.js +4 -4
  81. package/dist/cli/lib/mcp-governance.d.ts +2 -2
  82. package/dist/cli/lib/mcp-governance.d.ts.map +1 -1
  83. package/dist/cli/lib/mcp-governance.js +40 -10
  84. package/dist/cli/lib/mcp-governance.js.map +1 -1
  85. package/dist/cli/lib/mcp-tools-register.js +3 -3
  86. package/dist/cli/lib/mcp-tools-register.js.map +1 -1
  87. package/dist/cli/lib/mcp-upgrade.d.ts.map +1 -1
  88. package/dist/cli/lib/mcp-upgrade.js +8 -0
  89. package/dist/cli/lib/mcp-upgrade.js.map +1 -1
  90. package/dist/cli/lib/mcp-write-guard.d.ts +20 -0
  91. package/dist/cli/lib/mcp-write-guard.d.ts.map +1 -0
  92. package/dist/cli/lib/mcp-write-guard.js +82 -0
  93. package/dist/cli/lib/mcp-write-guard.js.map +1 -0
  94. package/dist/cli/lib/missions/formatter.d.ts +1 -1
  95. package/dist/cli/lib/missions/formatter.js +1 -1
  96. package/dist/cli/lib/onboarding-flow.js +1 -1
  97. package/dist/cli/lib/out-of-scope-hint.js +1 -1
  98. package/dist/cli/lib/perimeter.d.ts +1 -1
  99. package/dist/cli/lib/perimeter.js +10 -10
  100. package/dist/cli/lib/planner-identity.d.ts +23 -0
  101. package/dist/cli/lib/{teacher-identity.d.ts.map → planner-identity.d.ts.map} +1 -1
  102. package/dist/cli/lib/{teacher-identity.js → planner-identity.js} +34 -34
  103. package/dist/cli/lib/{teacher-identity.js.map → planner-identity.js.map} +1 -1
  104. package/dist/cli/lib/planner-signature.d.ts +11 -0
  105. package/dist/cli/lib/planner-signature.d.ts.map +1 -0
  106. package/dist/cli/lib/planner-signature.js +17 -0
  107. package/dist/cli/lib/planner-signature.js.map +1 -0
  108. package/dist/cli/lib/program-audience-hook.js +1 -1
  109. package/dist/cli/lib/program-audience-hook.js.map +1 -1
  110. package/dist/cli/lib/register-proposals.js +1 -1
  111. package/dist/cli/lib/runtime-env.d.ts +3 -3
  112. package/dist/cli/lib/runtime-env.d.ts.map +1 -1
  113. package/dist/cli/lib/runtime-env.js +4 -4
  114. package/dist/cli/lib/runtime-env.js.map +1 -1
  115. package/dist/cli/lib/runtime-exec.d.ts +4 -4
  116. package/dist/cli/lib/runtime-exec.d.ts.map +1 -1
  117. package/dist/cli/lib/runtime-exec.js +14 -14
  118. package/dist/cli/lib/runtime-exec.js.map +1 -1
  119. package/dist/cli/lib/staged-tmvc-guard.js +1 -1
  120. package/dist/cli/lib/staged-tmvc-guard.js.map +1 -1
  121. package/dist/cli/lib/start-orchestration.js +7 -7
  122. package/dist/cli/lib/start-orchestration.js.map +1 -1
  123. package/dist/cli/lib/status-report.d.ts +1 -1
  124. package/dist/cli/lib/status-report.js +7 -7
  125. package/dist/cli/lib/status-report.js.map +1 -1
  126. package/dist/cli/lib/surgeon.d.ts +3 -3
  127. package/dist/cli/lib/surgeon.d.ts.map +1 -1
  128. package/dist/cli/lib/surgeon.js +7 -7
  129. package/dist/cli/lib/surgeon.js.map +1 -1
  130. package/dist/cli/lib/surgeons/registry.d.ts +1 -1
  131. package/dist/cli/lib/surgeons/registry.d.ts.map +1 -1
  132. package/dist/cli/lib/telemetry-log.d.ts +1 -1
  133. package/dist/cli/lib/telemetry-log.d.ts.map +1 -1
  134. package/dist/cli/lib/telemetry-log.js +4 -4
  135. package/dist/cli/lib/telemetry-log.js.map +1 -1
  136. package/dist/cli/lib/tmvc-path.d.ts +1 -1
  137. package/dist/cli/lib/tmvc-path.d.ts.map +1 -1
  138. package/dist/cli/lib/tmvc-path.js +1 -1
  139. package/dist/cli/lib/tmvc-path.js.map +1 -1
  140. package/dist/cli/lib/trace.d.ts +8 -8
  141. package/dist/cli/lib/trace.d.ts.map +1 -1
  142. package/dist/cli/lib/trace.js +21 -21
  143. package/dist/cli/lib/trace.js.map +1 -1
  144. package/dist/cli/lib/triage-logic.js +1 -1
  145. package/dist/cli/lib/types.d.ts +1 -1
  146. package/dist/cli/lib/upgrade-apply.d.ts.map +1 -1
  147. package/dist/cli/lib/upgrade-apply.js +14 -2
  148. package/dist/cli/lib/upgrade-apply.js.map +1 -1
  149. package/dist/cli/lib/upgrade-plan.js +3 -3
  150. package/dist/cli/lib/verify-engine.d.ts +6 -5
  151. package/dist/cli/lib/verify-engine.d.ts.map +1 -1
  152. package/dist/cli/lib/verify-engine.js +40 -30
  153. package/dist/cli/lib/verify-engine.js.map +1 -1
  154. package/dist/cli/lib/verify-failure-normalize-phases.js +1 -1
  155. package/dist/cli/lib/verify-failure-normalize-phases.js.map +1 -1
  156. package/dist/cli/lib/verify-hints.d.ts +1 -1
  157. package/dist/cli/lib/verify-hints.d.ts.map +1 -1
  158. package/dist/cli/lib/verify-hints.js +16 -16
  159. package/dist/cli/lib/verify-hints.js.map +1 -1
  160. package/dist/cli/lib/verify-payload-types.d.ts +1 -0
  161. package/dist/cli/lib/verify-payload-types.d.ts.map +1 -1
  162. package/dist/cli/lib/verify-payload.d.ts.map +1 -1
  163. package/dist/cli/lib/verify-payload.js +3 -0
  164. package/dist/cli/lib/verify-payload.js.map +1 -1
  165. package/dist/cli/lib/verify-presenters.js +3 -3
  166. package/dist/cli/lib/verify-presenters.js.map +1 -1
  167. package/dist/cli/lib/version.gen.d.ts +1 -1
  168. package/dist/cli/lib/version.gen.js +1 -1
  169. package/dist/cli/program-core.js +4 -4
  170. package/dist/cli/program-core.js.map +1 -1
  171. package/dist/cli/program-mission.js +15 -15
  172. package/dist/cli/program-mission.js.map +1 -1
  173. package/dist/cli/program-planner.d.ts +3 -0
  174. package/dist/cli/program-planner.d.ts.map +1 -0
  175. package/dist/cli/program-planner.js +19 -0
  176. package/dist/cli/{program-teacher.js.map → program-planner.js.map} +1 -1
  177. package/dist/cli/program-workflow.js +7 -7
  178. package/dist/cli/program-workflow.js.map +1 -1
  179. package/dist/cli/program.js +3 -3
  180. package/dist/cli/program.js.map +1 -1
  181. package/package.json +1 -1
  182. package/templates/.cursor/hooks/gxt-before-shell.sh +4 -4
  183. package/templates/.cursor/hooks/gxt-session-start.sh +2 -2
  184. package/templates/.cursor/rules/opengantry-gxt-substrate.mdc +4 -4
  185. package/templates/.gitagent/ARCHITECTURE.pointer.json +2 -2
  186. package/templates/.gitagent/foreman/MANIFEST.json +3 -3
  187. package/templates/.gitagent/foreman/PLANNER.allowlist.example +4 -0
  188. package/templates/.gitagent/missions/README.md +1 -1
  189. package/templates/.gitagent/{teacher → planner}/ARCHITECTURE-ACCESS.md +3 -3
  190. package/templates/.gitagent/{teacher → planner}/ARCHITECTURE-DISCOVERY.md +2 -2
  191. package/templates/.gitagent/{teacher/WORKER_LOG.template.md → planner/EXECUTOR_LOG.template.md} +2 -2
  192. package/templates/.gitagent/{teacher → planner}/MISSION-ARCHITECT.md +11 -11
  193. package/templates/.gitagent/{teacher → planner}/RULES.md +4 -4
  194. package/templates/.githooks/post-checkout +4 -4
  195. package/templates/.githooks/pre-push +1 -1
  196. package/templates/.github/workflows/gxt-validate.yml +1 -1
  197. package/templates/.gitignore.gxt +1 -1
  198. package/templates/.prettierignore.gxt +1 -1
  199. package/templates/AGENTS.md +6 -6
  200. package/templates/docs/ARCHITECTURE.md +2 -2
  201. package/templates/integrations/aider/.aider.conf.yml +1 -1
  202. package/templates/integrations/antigravity/.agent/rules/gxt.md +1 -1
  203. package/templates/integrations/asset-catalog.json +7 -7
  204. package/templates/integrations/claude-code/CLAUDE.md +1 -1
  205. package/templates/integrations/cline/.clinerules/gxt.md +1 -1
  206. package/templates/integrations/compatibility.json +1 -1
  207. package/templates/integrations/junie/.junie/guidelines.md +1 -1
  208. package/templates/integrations/opencode/opencode.json +1 -1
  209. package/templates/integrations/openhands/.openhands/microagents/gxt.md +1 -1
  210. package/templates/integrations/recipes/_footer.md +7 -7
  211. package/templates/integrations/recipes/_preamble.md +7 -7
  212. package/templates/integrations/recipes/claude-code.md +1 -1
  213. package/templates/integrations/recipes/cursor.md +2 -2
  214. package/templates/scripts/gxt-manifest-lib.mjs +1 -1
  215. package/templates/scripts/gxt-runtime-env.sh +1 -1
  216. package/templates/skills/gantry.md +1 -1
  217. package/templates/skills/substrate.md +1 -1
  218. package/dist/cli/commands/teacher.d.ts +0 -11
  219. package/dist/cli/lib/teacher-identity.d.ts +0 -23
  220. package/dist/cli/lib/worker-log-integrity.d.ts +0 -4
  221. package/dist/cli/lib/worker-log-integrity.d.ts.map +0 -1
  222. package/dist/cli/lib/worker-log-integrity.js.map +0 -1
  223. package/dist/cli/lib/worker-log-line-map.d.ts.map +0 -1
  224. package/dist/cli/lib/worker-log-line-map.js.map +0 -1
  225. package/dist/cli/program-teacher.d.ts +0 -3
  226. package/dist/cli/program-teacher.d.ts.map +0 -1
  227. package/dist/cli/program-teacher.js +0 -19
  228. package/templates/.gitagent/foreman/TEACHER.allowlist.example +0 -4
  229. /package/templates/.gitagent/{teacher → planner}/KPI-REPORT.schema.yaml +0 -0
  230. /package/templates/.gitagent/{teacher → planner}/MISSION.schema.yaml +0 -0
@@ -2,27 +2,27 @@
2
2
 
3
3
  Before planning, editing code, or running substantive commands in this repository:
4
4
 
5
- 1. Read **`.gitagent/teacher/RULES.md`** — governance (SOD, trace mapping, risk tiers, dynamic TMVC, Rule 4.4).
5
+ 1. Read **`.gitagent/planner/RULES.md`** — governance (SOD, trace mapping, risk tiers, dynamic TMVC, Rule 4.4).
6
6
  2. Read **`.gitagent/foreman/MANIFEST.json`** — Foreman map (`schema_version`, per-skill `trust_threshold`, `tmvc_roots`, `forbidden_zones`, `path_risks`, `risk_keywords`).
7
7
 
8
- Treat these as the **law + routing contract** for agent work. Before editing application code, read **`.gitagent/ARCHITECTURE.pointer.json`**. If **`kind` is `unset`**, or docs are stub/missing, read **`.gitagent/teacher/ARCHITECTURE-DISCOVERY.md`** and ask the user — do not invent architecture. When `access.required` is true, read **`.gitagent/teacher/ARCHITECTURE-ACCESS.md`**. For GXT workflow orientation, see **`.gitagent/README.md`**.
8
+ Treat these as the **law + routing contract** for agent work. Before editing application code, read **`.gitagent/ARCHITECTURE.pointer.json`**. If **`kind` is `unset`**, or docs are stub/missing, read **`.gitagent/planner/ARCHITECTURE-DISCOVERY.md`** and ask the user — do not invent architecture. When `access.required` is true, read **`.gitagent/planner/ARCHITECTURE-ACCESS.md`**. For GXT workflow orientation, see **`.gitagent/README.md`**.
9
9
 
10
10
  ## Mission Architect (IDE chat)
11
11
 
12
12
  **Activation macro:**
13
13
 
14
14
  - If a user prompt starts with `/gantry`, treat that as an explicit Mission Architect activation request. Do not use `/plan` — Cursor reserves it for native Plan Mode.
15
- - On activation, follow **`.gitagent/teacher/MISSION-ARCHITECT.md`** and complete the legislate handoff flow.
15
+ - On activation, follow **`.gitagent/planner/MISSION-ARCHITECT.md`** and complete the legislate handoff flow.
16
16
 
17
17
  **Implicit interception:**
18
18
 
19
- When the user **explicitly** asks to write, edit, refactor, or implement code and **no mission is pinned**, read **`.gitagent/teacher/MISSION-ARCHITECT.md`** and follow it.
19
+ When the user **explicitly** asks to write, edit, refactor, or implement code and **no mission is pinned**, read **`.gitagent/planner/MISSION-ARCHITECT.md`** and follow it.
20
20
 
21
21
  - **Do NOT** trigger for questions, explanations, or code discovery — answer normally.
22
22
  - **Fast-path** trivial single-file work; **full interview** for heavy/risky scope.
23
- - **Cursor MCP handoff (preferred):** `gxt_draft_legislation` → human chat approval → `gxt_execute_legislation` → Teacher commit → `gxt_check_signature` → `gxt_pin_mission`.
23
+ - **Cursor MCP handoff (preferred):** `gxt_draft_legislation` → human chat approval → `gxt_execute_legislation` → Planner commit → `gxt_check_signature` → `gxt_pin_mission`.
24
24
  - **CLI fallback:** one copy-paste `gantry legislate …` command — never raw YAML blocks.
25
25
 
26
26
  ## External IDE skills (edge quarantine)
27
27
 
28
- Third-party agent skills are **untrusted edge helpers** — not GXT law. Keep them in local IDE config (gitignored); do not add subjective style guides to this file or `.gitagent/`. Repository safety is deterministic gates only (compile, tests, import layers). Optional `[SKILL-EXEC]` lines in `WORKER_LOG.md` are reviewer context only — see `.gitagent/teacher/RUNTIME.md`.
28
+ Third-party agent skills are **untrusted edge helpers** — not GXT law. Keep them in local IDE config (gitignored); do not add subjective style guides to this file or `.gitagent/`. Repository safety is deterministic gates only (compile, tests, import layers). Optional `[SKILL-EXEC]` lines in `EXECUTOR_LOG.md` are reviewer context only — see `.gitagent/planner/RUNTIME.md`.
@@ -9,11 +9,11 @@ This file is the **default** architecture source when [`.gitagent/ARCHITECTURE.p
9
9
 
10
10
  Agents discover how to read architecture via the pointer on first substantive work — do not hardcode alternate paths in IDE rules.
11
11
 
12
- **If the pointer has `kind: unset`**, or pointed docs are still the init stub, read **`.gitagent/teacher/ARCHITECTURE-DISCOVERY.md`** and ask the user structured questions before implementing — never invent the full architecture yourself.
12
+ **If the pointer has `kind: unset`**, or pointed docs are still the init stub, read **`.gitagent/planner/ARCHITECTURE-DISCOVERY.md`** and ask the user structured questions before implementing — never invent the full architecture yourself.
13
13
 
14
14
  ## GXT governance (always read first)
15
15
 
16
- 1. **`.gitagent/teacher/RULES.md`** — law (SOD, trace, TMVC, Rule 4.4).
16
+ 1. **`.gitagent/planner/RULES.md`** — law (SOD, trace, TMVC, Rule 4.4).
17
17
  2. **`.gitagent/foreman/MANIFEST.json`** — skill routing, `tmvc_roots`, forbidden zones.
18
18
 
19
19
  Workflow orientation: **`.gitagent/README.md`**.
@@ -1,4 +1,4 @@
1
1
  read:
2
2
  - AGENTS.md
3
- - .gitagent/teacher/RULES.md
3
+ - .gitagent/planner/RULES.md
4
4
  - .gitagent/foreman/MANIFEST.json
@@ -4,7 +4,7 @@ always_on: true
4
4
 
5
5
  # GXT substrate (Google Antigravity)
6
6
 
7
- Read **`AGENTS.md`**, **`.gitagent/teacher/RULES.md`**, and **`.gitagent/foreman/MANIFEST.json`** before acting.
7
+ Read **`AGENTS.md`**, **`.gitagent/planner/RULES.md`**, and **`.gitagent/foreman/MANIFEST.json`** before acting.
8
8
 
9
9
  Bootstrap: `source scripts/gxt-runtime-env.sh .gitagent/missions/<file>.yaml`
10
10
 
@@ -15,13 +15,13 @@
15
15
  { "targetPath": ".gitagent/foreman/MANIFEST.json", "mode": "scaffold_only", "tags": ["core"] },
16
16
  { "targetPath": ".gitagent/foreman/SUBSTRATE.version.json", "mode": "scaffold_only", "tags": ["core"] },
17
17
  { "targetPath": ".gitagent/missions/README.md", "mode": "scaffold_only", "tags": ["core"] },
18
- { "targetPath": ".gitagent/teacher/ARCHITECTURE-ACCESS.md", "mode": "scaffold_only", "tags": ["core"] },
19
- { "targetPath": ".gitagent/teacher/ARCHITECTURE-DISCOVERY.md", "mode": "scaffold_only", "tags": ["core"] },
20
- { "targetPath": ".gitagent/teacher/KPI-REPORT.schema.yaml", "mode": "managed_strict", "tags": ["core"] },
21
- { "targetPath": ".gitagent/teacher/MISSION-ARCHITECT.md", "mode": "scaffold_only", "tags": ["core"] },
22
- { "targetPath": ".gitagent/teacher/MISSION.schema.yaml", "mode": "managed_strict", "tags": ["core"] },
23
- { "targetPath": ".gitagent/teacher/RULES.md", "mode": "scaffold_only", "tags": ["core"] },
24
- { "targetPath": ".gitagent/teacher/WORKER_LOG.template.md", "mode": "managed_strict", "tags": ["core"] },
18
+ { "targetPath": ".gitagent/planner/ARCHITECTURE-ACCESS.md", "mode": "scaffold_only", "tags": ["core"] },
19
+ { "targetPath": ".gitagent/planner/ARCHITECTURE-DISCOVERY.md", "mode": "scaffold_only", "tags": ["core"] },
20
+ { "targetPath": ".gitagent/planner/EXECUTOR_LOG.template.md", "mode": "managed_strict", "tags": ["core"] },
21
+ { "targetPath": ".gitagent/planner/KPI-REPORT.schema.yaml", "mode": "managed_strict", "tags": ["core"] },
22
+ { "targetPath": ".gitagent/planner/MISSION-ARCHITECT.md", "mode": "scaffold_only", "tags": ["core"] },
23
+ { "targetPath": ".gitagent/planner/MISSION.schema.yaml", "mode": "managed_strict", "tags": ["core"] },
24
+ { "targetPath": ".gitagent/planner/RULES.md", "mode": "scaffold_only", "tags": ["core"] },
25
25
  { "targetPath": ".githooks/post-checkout", "mode": "managed_strict", "executable": true, "tags": ["hooks"] },
26
26
  { "targetPath": ".githooks/pre-commit", "mode": "managed_strict", "executable": true, "tags": ["hooks"] },
27
27
  { "targetPath": ".githooks/pre-push", "mode": "managed_strict", "executable": true, "tags": ["hooks"] },
@@ -3,7 +3,7 @@
3
3
  Before planning, editing code, or running substantive commands:
4
4
 
5
5
  1. Read **`AGENTS.md`** — cross-tool entry.
6
- 2. Read **`.gitagent/teacher/RULES.md`** — governance law.
6
+ 2. Read **`.gitagent/planner/RULES.md`** — governance law.
7
7
  3. Read **`.gitagent/foreman/MANIFEST.json`** — routing map (TMVC roots, forbidden zones).
8
8
 
9
9
  Do not duplicate full RULES here. For code architecture read `.gitagent/ARCHITECTURE.pointer.json` first (follow `read_hint`). For GXT workflow see `.gitagent/README.md`.
@@ -1,6 +1,6 @@
1
1
  # GXT policy for Cline
2
2
 
3
- Before substantive work, read `AGENTS.md`, `.gitagent/teacher/RULES.md`, and `.gitagent/foreman/MANIFEST.json`.
3
+ Before substantive work, read `AGENTS.md`, `.gitagent/planner/RULES.md`, and `.gitagent/foreman/MANIFEST.json`.
4
4
 
5
5
  Terminal bootstrap: `source scripts/gxt-runtime-env.sh .gitagent/missions/<file>.yaml`
6
6
 
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "schema_version": "1",
3
- "opengantry_version": "2.3.0",
3
+ "opengantry_version": "2.3.1",
4
4
  "asset_catalog": "integrations/asset-catalog.json",
5
5
  "integrations": {
6
6
  "cursor": {
@@ -3,7 +3,7 @@
3
3
  Before planning, editing code, or running substantive commands:
4
4
 
5
5
  1. Read **`AGENTS.md`**
6
- 2. Read **`.gitagent/teacher/RULES.md`**
6
+ 2. Read **`.gitagent/planner/RULES.md`**
7
7
  3. Read **`.gitagent/foreman/MANIFEST.json`**
8
8
 
9
9
  Bootstrap: `source scripts/gxt-runtime-env.sh .gitagent/missions/<file>.yaml`
@@ -1,3 +1,3 @@
1
1
  {
2
- "instructions": ["AGENTS.md", ".gitagent/teacher/RULES.md", ".gitagent/foreman/MANIFEST.json"]
2
+ "instructions": ["AGENTS.md", ".gitagent/planner/RULES.md", ".gitagent/foreman/MANIFEST.json"]
3
3
  }
@@ -3,7 +3,7 @@
3
3
  Before planning or editing code, read:
4
4
 
5
5
  - `AGENTS.md`
6
- - `.gitagent/teacher/RULES.md`
6
+ - `.gitagent/planner/RULES.md`
7
7
  - `.gitagent/foreman/MANIFEST.json`
8
8
 
9
9
  Bootstrap: `source scripts/gxt-runtime-env.sh .gitagent/missions/<file>.yaml`
@@ -2,23 +2,23 @@
2
2
 
3
3
  ## Closed-loop checklist
4
4
 
5
- 1. `gantry init` + `export GANTRY_TEACHER_EMAILS="$(git config user.email)"` + `gantry doctor`
6
- 2. `gantry legislate "<intent>" --msn MSN-NNNN --skill-key <key>` → Teacher `[MSN-NNNN]` commit
5
+ 1. `gantry init` + `export GANTRY_PLANNER_EMAILS="$(git config user.email)"` + `gantry doctor`
6
+ 2. `gantry legislate "<intent>" --msn MSN-NNNN --skill-key <key>` → Planner `[MSN-NNNN]` commit
7
7
  3. Bootstrap: `source scripts/gxt-runtime-env.sh .gitagent/missions/<file>.yaml`
8
- 4. Worker executes; append PASS quotes to `WORKER_LOG.md`
8
+ 4. Executor executes; append PASS quotes to `EXECUTOR_LOG.md`
9
9
  5. `gantry verify --mission .gitagent/missions/<file>.yaml`
10
10
  6. `git push` (pre-push uses `--pre-push` handoff semantics)
11
11
 
12
12
  ## External IDE skills
13
13
 
14
- Optional third-party skill packs belong on the **local IDE edge** (gitignored), not in GXT substrate or init templates. All edits are zero-trust until deterministic gates pass. Optional `[SKILL-EXEC]` lines in `WORKER_LOG.md` are reviewer context only — see `.gitagent/teacher/RUNTIME.md`.
14
+ Optional third-party skill packs belong on the **local IDE edge** (gitignored), not in GXT substrate or init templates. All edits are zero-trust until deterministic gates pass. Optional `[SKILL-EXEC]` lines in `EXECUTOR_LOG.md` are reviewer context only — see `.gitagent/planner/RUNTIME.md`.
15
15
 
16
16
  ## Troubleshooting
17
17
 
18
18
  | Symptom | Fix |
19
19
  |---------|-----|
20
- | `NO_MSN_COMMITS` on push | Teacher `[MSN-NNNN]` commit modifying the mission file; set `GANTRY_TEACHER_EMAILS` |
21
- | Pre-push OK, full verify fails trace | Fill `WORKER_LOG.md`; align `trace_rows`; re-run full verify |
22
- | `TEACHER_IDENTITY_UNCONFIGURED` | `export GANTRY_TEACHER_EMAILS="$(git config user.email)"` |
20
+ | `NO_MSN_COMMITS` on push | Planner `[MSN-NNNN]` commit modifying the mission file; set `GANTRY_PLANNER_EMAILS` |
21
+ | Pre-push OK, full verify fails trace | Fill `EXECUTOR_LOG.md`; align `trace_rows`; re-run full verify |
22
+ | `PLANNER_IDENTITY_UNCONFIGURED` | `export GANTRY_PLANNER_EMAILS="$(git config user.email)"` |
23
23
 
24
24
  Integration compat verified by OpenGantry release — run `gantry doctor` for detected wiring and stale paths.
@@ -4,9 +4,9 @@ OpenGantry is **tool-agnostic** and **vendor-neutral** — any agent that can ru
4
4
 
5
5
  ## Universal rule
6
6
 
7
- 1. Teacher legislates a mission under `.gitagent/missions/` (IDE chat: [`.gitagent/teacher/MISSION-ARCHITECT.md`](.gitagent/teacher/MISSION-ARCHITECT.md) — one copy-paste `gantry legislate` command).
8
- 2. Bootstrap mission-scoped runtime env before worker execution.
9
- 3. Append trace evidence to `WORKER_LOG.md`.
7
+ 1. Planner legislates a mission under `.gitagent/missions/` (IDE chat: [`.gitagent/planner/MISSION-ARCHITECT.md`](.gitagent/planner/MISSION-ARCHITECT.md) — one copy-paste `gantry legislate` command).
8
+ 2. Bootstrap mission-scoped runtime env before executor execution.
9
+ 3. Append trace evidence to `EXECUTOR_LOG.md`.
10
10
  4. Finish with `gantry verify --mission <path>` (full verify before merge / claiming done).
11
11
 
12
12
  ```bash
@@ -19,8 +19,8 @@ gantry runtime env --mission .gitagent/missions/MSN-0001.<slug>.yaml --json
19
19
 
20
20
  | Tier | Mechanism | What it actually traps |
21
21
  |------|-----------|------------------------|
22
- | **Process-boundary** | `gantry runtime exec` | TMVC roots + forbidden zones for subprocess workers |
23
- | **Deterministic hook** | Tool hooks (Cursor `beforeShellExecution` on law/manifest paths) | Shell writes to `.gitagent/foreman/`, `.gitagent/teacher/RULES.md` |
22
+ | **Process-boundary** | `gantry runtime exec` | TMVC roots + forbidden zones for subprocess executors |
23
+ | **Deterministic hook** | Tool hooks (Cursor `beforeShellExecution` on law/manifest paths) | Shell writes to `.gitagent/foreman/`, `.gitagent/planner/RULES.md` |
24
24
  | **Advisory** | Rules / `AGENTS.md` / tool memory | IDE Agent Write/Edit — LLM compliance, not kernel enforcement |
25
25
 
26
26
  IDE agent file edits are not TMVC-trapped unless the tool runs inside `runtime exec`.
@@ -30,14 +30,14 @@ IDE agent file edits are not TMVC-trapped unless the tool runs inside `runtime e
30
30
  | File | Role |
31
31
  |------|------|
32
32
  | `AGENTS.md` | Cross-tool entry: read RULES + MANIFEST before acting |
33
- | `.gitagent/teacher/RULES.md` | Governance law |
33
+ | `.gitagent/planner/RULES.md` | Governance law |
34
34
  | `.gitagent/foreman/MANIFEST.json` | Routing map (TMVC roots, forbidden zones) |
35
35
 
36
36
  ## Shared session variables
37
37
 
38
38
  | Variable | Purpose |
39
39
  |----------|---------|
40
- | `GANTRY_TEACHER_EMAILS` | Comma-separated Git author emails allowed to legislate |
40
+ | `GANTRY_PLANNER_EMAILS` | Comma-separated Git author emails allowed to legislate |
41
41
  | `GANTRY_MISSION` | Optional mission path for `gxt-runtime-env.sh` |
42
42
  | `GXT_*` | Emitted by `gantry runtime env` |
43
43
 
@@ -1,6 +1,6 @@
1
1
  ### Claude Code
2
2
 
3
- - **Context injection:** Minimal `CLAUDE.md` pointing at `AGENTS.md`, `.gitagent/teacher/RULES.md`, `.gitagent/foreman/MANIFEST.json`.
3
+ - **Context injection:** Minimal `CLAUDE.md` pointing at `AGENTS.md`, `.gitagent/planner/RULES.md`, `.gitagent/foreman/MANIFEST.json`.
4
4
  - **Session bootstrap (shell wrapper — no project hooks):**
5
5
 
6
6
  ```bash
@@ -1,8 +1,8 @@
1
1
  ### Cursor
2
2
 
3
3
  - **Context injection:** `.cursor/rules/opengantry-gxt-substrate.mdc` (`alwaysApply: true`); `.cursor/hooks.json` — `sessionStart` mission scope + `beforeShellExecution` fallback guard; `.cursor/mcp.json` — `gantry mcp serve`.
4
- - **Mission Architect:** `/gantry` macro (do not use `/plan` — Cursor native Plan Mode); implicit activation when user asks to **write/edit code** with no pinned mission. Follow `.gitagent/teacher/MISSION-ARCHITECT.md`.
5
- - **MCP legislation:** `gxt_draft_legislation` → semantic chat approval → `gxt_execute_legislation` → Teacher commit → `gxt_check_signature` → `gxt_pin_mission`. Or **`gxt_start_orchestration`** for goal-first CLI parity.
4
+ - **Mission Architect:** `/gantry` macro (do not use `/plan` — Cursor native Plan Mode); implicit activation when user asks to **write/edit code** with no pinned mission. Follow `.gitagent/planner/MISSION-ARCHITECT.md`.
5
+ - **MCP legislation:** `gxt_draft_legislation` → semantic chat approval → `gxt_execute_legislation` → Planner commit → `gxt_check_signature` → `gxt_pin_mission`. Or **`gxt_start_orchestration`** for goal-first CLI parity.
6
6
  - **Verify remediation:** `gxt_verify` returns `error_code`, `fix_hints`, `next_actions` on failure; CLI equivalent: `gantry verify --mission … --fix`.
7
7
  - **Session bootstrap:**
8
8
 
@@ -16,7 +16,7 @@ import { fileURLToPath } from "node:url";
16
16
 
17
17
  const FIXED_MSN_PREFIXES = [
18
18
  ".gitagent/",
19
- "WORKER_LOG.md",
19
+ "EXECUTOR_LOG.md",
20
20
  ".githooks/",
21
21
  ".github/workflows/gxt-validate.yml",
22
22
  ];
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env bash
2
- # Load GXT Worker Runtime Contract into the current shell (any IDE terminal / manual runs).
2
+ # Load GXT Executor Runtime Contract into the current shell (any IDE terminal / manual runs).
3
3
  set -euo pipefail
4
4
 
5
5
  ROOT="$(git rev-parse --show-toplevel 2>/dev/null || true)"
@@ -2,4 +2,4 @@
2
2
 
3
3
  Manifest key `gantry`. **gantry** CLI and tests under `src/cli/` per [`.gitagent/foreman/MANIFEST.json`](../.gitagent/foreman/MANIFEST.json).
4
4
 
5
- Substrate paths (`.gitagent/`, hooks, workflows) require Teacher legislation and **`substrate`** or explicit mission scope — do not edit Foreman law without a mission.
5
+ Substrate paths (`.gitagent/`, hooks, workflows) require Planner legislation and **`substrate`** or explicit mission scope — do not edit Foreman law without a mission.
@@ -1,3 +1,3 @@
1
1
  # Skill: substrate
2
2
 
3
- Manifest key `substrate`. Reserved for high-risk substrate work; requires Teacher mission per manifest.
3
+ Manifest key `substrate`. Reserved for high-risk substrate work; requires Planner mission per manifest.
@@ -1,11 +0,0 @@
1
- export interface TeacherShowOptions {
2
- json?: boolean;
3
- cwd?: string;
4
- }
5
- export interface TeacherSetOptions {
6
- emails: string[];
7
- cwd?: string;
8
- }
9
- export declare function runTeacherShow(options?: TeacherShowOptions): void;
10
- export declare function runTeacherSet(options: TeacherSetOptions): void;
11
- //# sourceMappingURL=teacher.d.ts.map
@@ -1,23 +0,0 @@
1
- export { ENV_TEACHER_EMAILS } from "./config-namespace.js";
2
- export declare const REL_TEACHER_ALLOWLIST: ".gitagent/foreman/TEACHER.allowlist";
3
- export declare const REL_TEACHER_ALLOWLIST_LOCAL: ".gitagent/foreman/TEACHER.allowlist.local";
4
- export type TeacherIdentitySource = "allowlist_file" | "allowlist_local" | "git_config" | "env" | "git_user_email" | "unset";
5
- export interface ResolvedTeacherIdentity {
6
- emails: string[];
7
- source: TeacherIdentitySource;
8
- /** Human-readable detail for doctor / errors */
9
- detail: string;
10
- }
11
- /** Legacy env-only parser (tests / explicit CI override). */
12
- export declare function parseTeacherEmailsFromEnv(): string[];
13
- /**
14
- * Resolve Teacher legislation allowlist for a repository.
15
- * Repo-local sources win over shell env so multi-project developers are not cross-contaminated.
16
- */
17
- export declare function resolveTeacherEmails(repoRoot: string): ResolvedTeacherIdentity;
18
- export declare function serializeTeacherAllowlist(emails: string[]): string;
19
- export declare function writeTeacherAllowlistLocal(repoRoot: string, emails: string[]): void;
20
- /** Create gitignored local allowlist from repo git user.email when missing. */
21
- export declare function ensureTeacherAllowlistOnInit(repoRoot: string): boolean;
22
- export declare function teacherIdentitySetupHint(_repoRoot: string): string;
23
- //# sourceMappingURL=teacher-identity.d.ts.map
@@ -1,4 +0,0 @@
1
- import type { DoctorLine } from "./doctor-types.js";
2
- /** Warn-level integrity checks for WORKER_LOG.md before verify fails opaquely. */
3
- export declare function runWorkerLogIntegrityDoctorChecks(repoRoot: string): DoctorLine[];
4
- //# sourceMappingURL=worker-log-integrity.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"worker-log-integrity.d.ts","sourceRoot":"","sources":["../../../src/cli/lib/worker-log-integrity.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAIpD,kFAAkF;AAClF,wBAAgB,iCAAiC,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU,EAAE,CAgDhF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"worker-log-integrity.js","sourceRoot":"","sources":["../../../src/cli/lib/worker-log-integrity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAG7B,MAAM,iBAAiB,GAAG,uBAAuB,CAAC;AAElD,kFAAkF;AAClF,MAAM,UAAU,iCAAiC,CAAC,QAAgB;IAChE,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;IACrD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5B,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACjD,MAAM,KAAK,GAAiB,EAAE,CAAC;IAE/B,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QACpF,KAAK,CAAC,IAAI,CAAC;YACT,KAAK,EAAE,MAAM;YACb,OAAO,EAAE,wEAAwE;SAClF,CAAC,CAAC;IACL,CAAC;IAED,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACtF,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACnB,KAAK,CAAC,IAAI,CAAC;gBACT,KAAK,EAAE,MAAM;gBACb,OAAO,EAAE,6CAA6C,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE;aAC1E,CAAC,CAAC;YACH,MAAM;QACR,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACjB,CAAC;IAED,IAAI,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;QACxC,KAAK,CAAC,IAAI,CAAC;YACT,KAAK,EAAE,MAAM;YACb,OAAO,EAAE,wEAAwE;SAClF,CAAC,CAAC;IACL,CAAC;IAED,MAAM,eAAe,GAAG,OAAO;SAC5B,KAAK,CAAC,IAAI,CAAC;SACX,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CAAC;IACxF,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,KAAK,CAAC,IAAI,CAAC;YACT,KAAK,EAAE,MAAM;YACb,OAAO,EAAE,iDAAiD;SAC3D,CAAC,CAAC;IACL,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"worker-log-line-map.d.ts","sourceRoot":"","sources":["../../../src/cli/lib/worker-log-line-map.ts"],"names":[],"mappings":"AAEA,mFAAmF;AACnF,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;CACrC;AAED,uEAAuE;AACvE,wBAAgB,8BAA8B,CAC5C,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,EAAE,GACf,gBAAgB,GAAG,IAAI,CAgBzB;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAE/E;AAED,+FAA+F;AAC/F,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAK1D"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"worker-log-line-map.js","sourceRoot":"","sources":["../../../src/cli/lib/worker-log-line-map.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AASzB,uEAAuE;AACvE,MAAM,UAAU,8BAA8B,CAC5C,aAAqB,EACrB,MAAgB;IAEhB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC;QAAE,OAAO,IAAI,CAAC;IAC/C,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACrC,MAAM,YAAY,GAAG,IAAI,GAAG,EAAoB,CAAC;IACjD,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAChE,KAAK,MAAM,CAAC,IAAI,MAAM;QAAE,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEhD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;QACvB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAAE,YAAY,CAAC,GAAG,CAAC,KAAK,CAAE,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC;AAC1C,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,GAAqB,EAAE,KAAa;IACnE,OAAO,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;AAC3C,CAAC;AAED,+FAA+F;AAC/F,MAAM,UAAU,kBAAkB,CAAC,MAAc;IAC/C,OAAO,CACL,wCAAwC,CAAC,IAAI,CAAC,MAAM,CAAC;QACrD,uDAAuD,CAAC,IAAI,CAAC,MAAM,CAAC,CACrE,CAAC;AACJ,CAAC"}
@@ -1,3 +0,0 @@
1
- import type { Command } from "commander";
2
- export declare function registerTeacherCommands(program: Command): void;
3
- //# sourceMappingURL=program-teacher.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"program-teacher.d.ts","sourceRoot":"","sources":["../../src/cli/program-teacher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGzC,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAkB9D"}
@@ -1,19 +0,0 @@
1
- import { runTeacherSet, runTeacherShow } from "./commands/teacher.js";
2
- export function registerTeacherCommands(program) {
3
- const teacher = program.command("teacher").description("Repo-local Teacher identity (git-proof allowlist)");
4
- teacher
5
- .command("show")
6
- .description("Show resolved Teacher emails and source for this repository")
7
- .option("--json", "Emit structured JSON")
8
- .action((opts) => {
9
- runTeacherShow({ json: opts.json });
10
- });
11
- teacher
12
- .command("set")
13
- .description(`Write ${".gitagent/foreman/TEACHER.allowlist.local"} (gitignored, per-repo)`)
14
- .argument("<emails...>", "One or more Teacher emails (comma-separated ok)")
15
- .action((emails) => {
16
- runTeacherSet({ emails });
17
- });
18
- }
19
- //# sourceMappingURL=program-teacher.js.map
@@ -1,4 +0,0 @@
1
- # One Git author email per line (case-insensitive). Committed team allowlist.
2
- # Personal override (gitignored): .gitagent/foreman/TEACHER.allowlist.local
3
- # Or: git config gantry.teacherEmails "you@example.com"
4
- teacher@example.com