persona-harness 0.8.28 → 0.8.30

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 (64) hide show
  1. package/.persona/harness.jsonc +1 -0
  2. package/CHANGELOG.md +18 -0
  3. package/README.md +21 -7
  4. package/dist/cli/agents-contract.js +10 -3
  5. package/dist/cli/agents-contract.js.map +1 -1
  6. package/dist/cli/cli-usage.js +4 -0
  7. package/dist/cli/cli-usage.js.map +1 -1
  8. package/dist/cli/feedback.d.ts +2 -1
  9. package/dist/cli/feedback.js +6 -0
  10. package/dist/cli/feedback.js.map +1 -1
  11. package/dist/cli/index.js +1 -1
  12. package/dist/cli/index.js.map +1 -1
  13. package/dist/cli/init-harness-overlay.js +8 -1
  14. package/dist/cli/init-harness-overlay.js.map +1 -1
  15. package/dist/cli/intake-profile.d.ts +1 -1
  16. package/dist/cli/owner-dogfood-feedback-store.d.ts +4 -0
  17. package/dist/cli/owner-dogfood-feedback-store.js +234 -0
  18. package/dist/cli/owner-dogfood-feedback-store.js.map +1 -0
  19. package/dist/cli/owner-dogfood-feedback.d.ts +8 -0
  20. package/dist/cli/owner-dogfood-feedback.js +58 -0
  21. package/dist/cli/owner-dogfood-feedback.js.map +1 -0
  22. package/dist/config/harness-config.d.ts +7 -0
  23. package/dist/config/harness-config.js +7 -0
  24. package/dist/config/harness-config.js.map +1 -1
  25. package/dist/config/project-profile.d.ts +6 -0
  26. package/dist/config/project-profile.js +54 -0
  27. package/dist/config/project-profile.js.map +1 -1
  28. package/dist/index.js +47 -5
  29. package/dist/index.js.map +1 -1
  30. package/dist/io/no-follow-directory-chain.d.ts +1 -0
  31. package/dist/io/no-follow-directory-chain.js +173 -0
  32. package/dist/io/no-follow-directory-chain.js.map +1 -0
  33. package/dist/runtime/auth-design-decision.d.ts +5 -0
  34. package/dist/runtime/auth-design-decision.js +97 -9
  35. package/dist/runtime/auth-design-decision.js.map +1 -1
  36. package/dist/runtime/hooks.js +27 -4
  37. package/dist/runtime/hooks.js.map +1 -1
  38. package/dist/runtime/injection.js +2 -0
  39. package/dist/runtime/injection.js.map +1 -1
  40. package/dist/runtime/opencode-skill-adapter.js +1 -0
  41. package/dist/runtime/opencode-skill-adapter.js.map +1 -1
  42. package/dist/runtime/project-philosophy.d.ts +4 -0
  43. package/dist/runtime/project-philosophy.js +21 -0
  44. package/dist/runtime/project-philosophy.js.map +1 -0
  45. package/docs/current/persona-shared-skills-core.md +41 -4
  46. package/docs/current/personalization-profile-v1.md +12 -2
  47. package/docs/current/release/consumer-authority-v0829-acceptance.json +1228 -0
  48. package/docs/current/release/consumer-authority-v0830-acceptance.json +1230 -0
  49. package/docs/current/release/history.md +11 -3
  50. package/docs/current/release/v0.8.29-release-notes.md +34 -0
  51. package/docs/current/release/v0.8.30-release-notes.md +22 -0
  52. package/docs/releases/package-index.md +2 -0
  53. package/package.json +5 -1
  54. package/packages/shared-skills/README.md +8 -1
  55. package/packages/shared-skills/catalog.json +1 -1
  56. package/packages/shared-skills/package.json +1 -1
  57. package/packages/shared-skills/skills/philosophy-refinement/SKILL.md +4 -3
  58. package/scripts/clean-package-exercise-phase.mjs +3 -0
  59. package/scripts/consumer-authority-v0829-acceptance-schema.d.mts +28 -0
  60. package/scripts/consumer-authority-v0829-acceptance-schema.mjs +86 -0
  61. package/scripts/consumer-authority-v0830-acceptance-schema.d.mts +28 -0
  62. package/scripts/consumer-authority-v0830-acceptance-schema.mjs +87 -0
  63. package/scripts/preflight-consumer-authority-external-artifact-transport.mjs +2 -2
  64. package/scripts/preflight-consumer-authority-external-attestation.mjs +2 -2
@@ -8,6 +8,7 @@
8
8
  },
9
9
  "features": {
10
10
  "entrySteering": false,
11
+ "projectPhilosophyInjection": true,
11
12
  "runtimeInjection": false
12
13
  },
13
14
  "enforce": {
package/CHANGELOG.md CHANGED
@@ -8,6 +8,24 @@ preparation alone does not establish stable support or channel state.
8
8
 
9
9
  ## Unreleased
10
10
 
11
+ - Add `ph feedback dogfood <code>` for bounded, append-only owner dogfooding
12
+ events. It records only a fixed diagnostic code and timestamp in a private
13
+ user-state JSONL file; invalid or unsafe state fails closed and the event has
14
+ no workflow, release, or authority effect.
15
+
16
+ ## [0.8.29] - 2026-08-24
17
+
18
+ - Add safe ready-project philosophy guidance to OpenCode without enabling the
19
+ broader runtime injection rail, and register the bundled Persona skill
20
+ catalog with OpenCode's native skill loader.
21
+ - Keep OAuth design interviews in place when a user asks for clarification,
22
+ clear them for a clear stop or non-auth workflow diagnostic, retain approved
23
+ auth context for later related work, and tolerate a bounded standalone
24
+ approval typo.
25
+ - Show a compact user-language notice when Persona selects a shared skill.
26
+
27
+ ## [0.8.28] - 2026-08-24
28
+
11
29
  - Add opt-in project-local updates. `ph update enable --yes` preserves an
12
30
  owned project's other OpenCode plugin entries and schedules a bounded
13
31
  next-session check for a newer stable Persona Harness pin. Invalid ownership,
package/README.md CHANGED
@@ -87,10 +87,11 @@ A workflow + evidence CLI (`ph`) with an optional OpenCode plugin, for Java/Spri
87
87
  - can block completion when required reports or evidence for defined gates are
88
88
  missing.
89
89
 
90
- The optional runtime adapter can also route to a portable Persona-owned shared
91
- skill catalog. Product ideas start with a one-question interview and explicit
92
- brief approval; adapters advise only and never create workflow state or invoke
93
- host agents automatically. See [Persona Shared Skills Core](docs/current/persona-shared-skills-core.md).
90
+ The optional runtime adapter also registers the bundled portable Persona-owned
91
+ shared-skill catalog with OpenCode. Product ideas start with a one-question
92
+ interview and explicit brief approval; adapters advise only and never create
93
+ workflow state or invoke host agents automatically. See [Persona Shared Skills
94
+ Core](docs/current/persona-shared-skills-core.md).
94
95
 
95
96
  It is **not** a code-quality guarantee, a token-saving product, a broad linter,
96
97
  proof that generated apps are production-ready, or a strong completion-integrity
@@ -137,9 +138,11 @@ npx ph attach --repair --yes
137
138
 
138
139
  `attach` refuses unrecognized or corrupt existing Persona Harness files rather
139
140
  than overwriting them, and it rejects repair for an already-ready attachment.
140
- A successful attach enables PH-run verification while keeping
141
- `runtimeInjection`, `systemConstitution`, `idleContinuation`, and the Ralph
142
- loop off.
141
+ A successful attach enables PH-run verification and the narrow
142
+ `projectPhilosophyInjection` default: when a ready project profile has one safe
143
+ `philosophy.project` convention, it is available automatically as project-local
144
+ guidance. It does not enable the broader `runtimeInjection`,
145
+ `systemConstitution`, `idleContinuation`, or Ralph loop rails, which remain off.
143
146
 
144
147
  `ph go` is the host-neutral single entry for one concrete implementation
145
148
  requirement after bootstrap and plan acceptance. It captures the requirement,
@@ -214,12 +217,23 @@ npx ph workflow split README.md && npx ph workflow next # multi-ticket
214
217
  npx ph bearshell --shell 'gradle test' # bounded execution
215
218
  npx ph evidence summary | metrics --json | ab-report --json | pminus-report --json
216
219
  npx ph authority status | enroll github <owner/repository> --workflow <path> | fetch github [owner/repository]
220
+ npx ph feedback # project-local tester feedback template
221
+ npx ph feedback dogfood source-read-runtime-unavailable # private bounded owner dogfooding event
217
222
  npx ph observe src/main/java # Java/Spring observer findings
218
223
  npx ph review backend-shape
219
224
  ```
220
225
 
221
226
  Run `npx ph --help` for the full list. The workflow ledger lives under `.persona/workflow/` (`work/`, `history/`, `requirements/`).
222
227
 
228
+ `ph feedback dogfood <code>` is intentionally separate from the project
229
+ feedback template. It records only a fixed diagnostic code and timestamp in
230
+ `events.jsonl` inside the private owner state directory
231
+ `~/.local/state/persona-harness/owner-dogfood-feedback`. Set
232
+ `PH_OWNER_DOGFOOD_FEEDBACK_ROOT` only to an absolute replacement state
233
+ directory; the command appends `events.jsonl` inside it. It does not capture
234
+ project files or conversation text, and it cannot grant workflow, release,
235
+ authority, or external-observation permission.
236
+
223
237
  ## Advanced surfaces
224
238
 
225
239
  Preview integrations, shared-skill source material, Role Checklist Relay, and
@@ -9,12 +9,19 @@ export function backendAgentInstructions() {
9
9
  "",
10
10
  "This project is initialized with Persona Harness for Java/Spring backend work.",
11
11
  "",
12
- "Before implementation:",
13
- "- Run `npx ph workflow implement` and follow the single AI-facing rail.",
12
+ "Project-local philosophy:",
14
13
  "- Read `.persona/project-profile.jsonc` directly. Do not rely on Glob results for hidden `.persona` paths.",
15
14
  "- Use the project profile as the source of truth for language, framework, build tool, storage, persistence, migration, package style, and architecture style.",
15
+ "- When its ready `philosophy.project` convention is relevant, apply it directly to implementation or review work.",
16
+ "- A direct code-change request or one-off coding preference is not a request to refine philosophy. Use `ph philosophy refine --stdin` only when the user explicitly asks to change, review, or persist a reusable philosophy.",
16
17
  "- If README.md does not mention a technology stack, keep the stack from `.persona/project-profile.jsonc`.",
17
18
  "",
19
+ "Workflow evidence:",
20
+ "- `ph workflow` is product behavior, not a ceremony for every code edit.",
21
+ "- For a small, concrete change: inspect the relevant code, make the minimum change, and run focused verification. Do not start a workflow solely for that edit.",
22
+ "- For a public delivery boundary that is concrete and approved, run `npx ph workflow implement` once and follow the selected rail.",
23
+ "- For an ambiguous product requirement, use the deep-interview route before starting implementation. For an explicit design pressure-test request, use the grill-me route.",
24
+ "",
18
25
  "Do not infer a Node/CommonJS project from package.json.",
19
26
  "- package.json may exist only because Persona Harness is installed through npm.",
20
27
  "- node_modules is dependency/vendor material, not product implementation context.",
@@ -25,7 +32,7 @@ export function backendAgentInstructions() {
25
32
  "- .persona/rules",
26
33
  "- .persona/evidence",
27
34
  "",
28
- "After implementation:",
35
+ "After a workflow implementation boundary:",
29
36
  "- Fill `.persona/workflow/implementation-report.md`.",
30
37
  "- Fill `.persona/workflow/review-report.md`.",
31
38
  "- Run `npx ph workflow finish implement` before claiming completion.",
@@ -1 +1 @@
1
- {"version":3,"file":"agents-contract.js","sourceRoot":"","sources":["../../src/cli/agents-contract.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,mBAAmB,GAC9B,wEAAwE,CAAA;AAC1E,MAAM,CAAC,MAAM,iBAAiB,GAAG,qCAAqC,CAAA;AACtE,MAAM,CAAC,MAAM,mBAAmB,GAAG,sCAAsC,CAAA;AACzE,MAAM,CAAC,MAAM,wBAAwB,GAAG,2BAA2B,CAAA;AACnE,MAAM,CAAC,MAAM,qBAAqB,GAAG,kCAAkC,CAAA;AAEvE,MAAM,UAAU,wBAAwB;IACtC,OAAO;QACL,mBAAmB;QACnB,EAAE;QACF,gFAAgF;QAChF,EAAE;QACF,wBAAwB;QACxB,yEAAyE;QACzE,4GAA4G;QAC5G,+JAA+J;QAC/J,2GAA2G;QAC3G,EAAE;QACF,yDAAyD;QACzD,iFAAiF;QACjF,mFAAmF;QACnF,EAAE;QACF,8CAA8C;QAC9C,gBAAgB;QAChB,0BAA0B;QAC1B,kBAAkB;QAClB,qBAAqB;QACrB,EAAE;QACF,uBAAuB;QACvB,sDAAsD;QACtD,8CAA8C;QAC9C,sEAAsE;QACtE,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACd,CAAC;AAED,MAAM,UAAU,+BAA+B;IAC7C,OAAO;QACL,mBAAmB;QACnB,wBAAwB,EAAE,CAAC,OAAO,EAAE;QACpC,iBAAiB;QACjB,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACd,CAAC;AAED,MAAM,UAAU,qCAAqC,CAAC,QAAgB;IACpE,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IACrC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAA;IAChD,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAA;IAC5C,IAAI,KAAK,IAAI,CAAC,IAAI,GAAG,GAAG,KAAK,EAAE,CAAC;QAC9B,OAAO;YACL,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC;YACxB,GAAG,+BAA+B,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;YAC1D,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC;SACxB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;IACrC,CAAC;IACD,OAAO,+BAA+B,EAAE,CAAA;AAC1C,CAAC"}
1
+ {"version":3,"file":"agents-contract.js","sourceRoot":"","sources":["../../src/cli/agents-contract.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,mBAAmB,GAC9B,wEAAwE,CAAA;AAC1E,MAAM,CAAC,MAAM,iBAAiB,GAAG,qCAAqC,CAAA;AACtE,MAAM,CAAC,MAAM,mBAAmB,GAAG,sCAAsC,CAAA;AACzE,MAAM,CAAC,MAAM,wBAAwB,GAAG,2BAA2B,CAAA;AACnE,MAAM,CAAC,MAAM,qBAAqB,GAAG,kCAAkC,CAAA;AAEvE,MAAM,UAAU,wBAAwB;IACtC,OAAO;QACL,mBAAmB;QACnB,EAAE;QACF,gFAAgF;QAChF,EAAE;QACF,2BAA2B;QAC3B,4GAA4G;QAC5G,+JAA+J;QAC/J,mHAAmH;QACnH,+NAA+N;QAC/N,2GAA2G;QAC3G,EAAE;QACF,oBAAoB;QACpB,0EAA0E;QAC1E,iKAAiK;QACjK,oIAAoI;QACpI,4KAA4K;QAC5K,EAAE;QACF,yDAAyD;QACzD,iFAAiF;QACjF,mFAAmF;QACnF,EAAE;QACF,8CAA8C;QAC9C,gBAAgB;QAChB,0BAA0B;QAC1B,kBAAkB;QAClB,qBAAqB;QACrB,EAAE;QACF,2CAA2C;QAC3C,sDAAsD;QACtD,8CAA8C;QAC9C,sEAAsE;QACtE,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACd,CAAC;AAED,MAAM,UAAU,+BAA+B;IAC7C,OAAO;QACL,mBAAmB;QACnB,wBAAwB,EAAE,CAAC,OAAO,EAAE;QACpC,iBAAiB;QACjB,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACd,CAAC;AAED,MAAM,UAAU,qCAAqC,CAAC,QAAgB;IACpE,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IACrC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAA;IAChD,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAA;IAC5C,IAAI,KAAK,IAAI,CAAC,IAAI,GAAG,GAAG,KAAK,EAAE,CAAC;QAC9B,OAAO;YACL,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC;YACxB,GAAG,+BAA+B,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;YAC1D,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC;SACxB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;IACrC,CAAC;IACD,OAAO,+BAA+B,EAAE,CAAA;AAC1C,CAAC"}
@@ -11,6 +11,7 @@ function englishUsage(invocationName) {
11
11
  " update Control opt-in project-local automatic Persona Harness updates.",
12
12
  " observe <path> Report Java/Spring observer findings for a file or directory.",
13
13
  " authority Inspect or enroll bounded external consumer authority.",
14
+ " feedback Write a project feedback template or capture a bounded owner dogfood event.",
14
15
  " philosophy Inspect and resolve the local personalization profile.",
15
16
  "",
16
17
  "Examples:",
@@ -24,6 +25,7 @@ function englishUsage(invocationName) {
24
25
  ` ${invocationName} update enable --yes`,
25
26
  ` ${invocationName} observe src/main/java`,
26
27
  ` ${invocationName} authority status`,
28
+ ` ${invocationName} feedback dogfood source-read-runtime-unavailable`,
27
29
  ` ${invocationName} philosophy status`,
28
30
  ].join("\n");
29
31
  }
@@ -40,6 +42,7 @@ function koreanUsage(invocationName) {
40
42
  " update 프로젝트별 자동 Persona Harness 업데이트를 제어합니다.",
41
43
  " observe <path> 파일 또는 디렉터리의 Java/Spring observer 관측 결과를 보고합니다.",
42
44
  " authority 제한된 외부 consumer authority 상태를 확인하거나 등록합니다.",
45
+ " feedback 프로젝트 feedback 템플릿 또는 제한된 owner dogfood event를 기록합니다.",
43
46
  " philosophy 개인화 profile을 확인하고 결정을 append-only로 관리합니다.",
44
47
  "",
45
48
  "도움말 언어 선택: --lang en 또는 --lang ko",
@@ -55,6 +58,7 @@ function koreanUsage(invocationName) {
55
58
  ` ${invocationName} update enable --yes`,
56
59
  ` ${invocationName} observe src/main/java`,
57
60
  ` ${invocationName} authority status`,
61
+ ` ${invocationName} feedback dogfood source-read-runtime-unavailable`,
58
62
  ` ${invocationName} philosophy status`,
59
63
  ].join("\n");
60
64
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cli-usage.js","sourceRoot":"","sources":["../../src/cli/cli-usage.ts"],"names":[],"mappings":"AAEA,SAAS,YAAY,CAAC,cAAsB;IAC1C,OAAO;QACL,UAAU,cAAc,sBAAsB;QAC9C,EAAE;QACF,kBAAkB;QAClB,4EAA4E;QAC5E,2FAA2F;QAC3F,iGAAiG;QACjG,+HAA+H;QAC/H,gGAAgG;QAChG,gGAAgG;QAChG,8FAA8F;QAC9F,uFAAuF;QACvF,uFAAuF;QACvF,EAAE;QACF,WAAW;QACX,KAAK,cAAc,UAAU;QAC7B,KAAK,cAAc,YAAY;QAC/B,KAAK,cAAc,OAAO;QAC1B,KAAK,cAAc,eAAe;QAClC,KAAK,cAAc,qCAAqC;QACxD,mCAAmC,cAAc,aAAa;QAC9D,KAAK,cAAc,SAAS;QAC5B,KAAK,cAAc,sBAAsB;QACzC,KAAK,cAAc,wBAAwB;QAC3C,KAAK,cAAc,mBAAmB;QACtC,KAAK,cAAc,oBAAoB;KACxC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACd,CAAC;AAED,SAAS,WAAW,CAAC,cAAsB;IACzC,OAAO;QACL,QAAQ,cAAc,eAAe;QACrC,EAAE;QACF,QAAQ;QACR,gEAAgE;QAChE,6EAA6E;QAC7E,6EAA6E;QAC7E,8EAA8E;QAC9E,4EAA4E;QAC5E,sEAAsE;QACtE,+EAA+E;QAC/E,2EAA2E;QAC3E,0EAA0E;QAC1E,EAAE;QACF,mCAAmC;QACnC,EAAE;QACF,KAAK;QACL,KAAK,cAAc,UAAU;QAC7B,KAAK,cAAc,YAAY;QAC/B,KAAK,cAAc,OAAO;QAC1B,KAAK,cAAc,eAAe;QAClC,KAAK,cAAc,6BAA6B;QAChD,sCAAsC,cAAc,aAAa;QACjE,KAAK,cAAc,SAAS;QAC5B,KAAK,cAAc,sBAAsB;QACzC,KAAK,cAAc,wBAAwB;QAC3C,KAAK,cAAc,mBAAmB;QACtC,KAAK,cAAc,oBAAoB;KACxC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACd,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,cAAsB,EAAE,SAAwB,IAAI;IAClF,OAAO,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,cAAc,CAAC,CAAA;AACrF,CAAC"}
1
+ {"version":3,"file":"cli-usage.js","sourceRoot":"","sources":["../../src/cli/cli-usage.ts"],"names":[],"mappings":"AAEA,SAAS,YAAY,CAAC,cAAsB;IAC1C,OAAO;QACL,UAAU,cAAc,sBAAsB;QAC9C,EAAE;QACF,kBAAkB;QAClB,4EAA4E;QAC5E,2FAA2F;QAC3F,iGAAiG;QACjG,+HAA+H;QAC/H,gGAAgG;QAChG,gGAAgG;QAChG,8FAA8F;QAC9F,uFAAuF;QACvF,4GAA4G;QAC5G,uFAAuF;QACvF,EAAE;QACF,WAAW;QACX,KAAK,cAAc,UAAU;QAC7B,KAAK,cAAc,YAAY;QAC/B,KAAK,cAAc,OAAO;QAC1B,KAAK,cAAc,eAAe;QAClC,KAAK,cAAc,qCAAqC;QACxD,mCAAmC,cAAc,aAAa;QAC9D,KAAK,cAAc,SAAS;QAC5B,KAAK,cAAc,sBAAsB;QACzC,KAAK,cAAc,wBAAwB;QAC3C,KAAK,cAAc,mBAAmB;QACtC,KAAK,cAAc,mDAAmD;QACtE,KAAK,cAAc,oBAAoB;KACxC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACd,CAAC;AAED,SAAS,WAAW,CAAC,cAAsB;IACzC,OAAO;QACL,QAAQ,cAAc,eAAe;QACrC,EAAE;QACF,QAAQ;QACR,gEAAgE;QAChE,6EAA6E;QAC7E,6EAA6E;QAC7E,8EAA8E;QAC9E,4EAA4E;QAC5E,sEAAsE;QACtE,+EAA+E;QAC/E,2EAA2E;QAC3E,qFAAqF;QACrF,0EAA0E;QAC1E,EAAE;QACF,mCAAmC;QACnC,EAAE;QACF,KAAK;QACL,KAAK,cAAc,UAAU;QAC7B,KAAK,cAAc,YAAY;QAC/B,KAAK,cAAc,OAAO;QAC1B,KAAK,cAAc,eAAe;QAClC,KAAK,cAAc,6BAA6B;QAChD,sCAAsC,cAAc,aAAa;QACjE,KAAK,cAAc,SAAS;QAC5B,KAAK,cAAc,sBAAsB;QACzC,KAAK,cAAc,wBAAwB;QAC3C,KAAK,cAAc,mBAAmB;QACtC,KAAK,cAAc,mDAAmD;QACtE,KAAK,cAAc,oBAAoB;KACxC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACd,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,cAAsB,EAAE,SAAwB,IAAI;IAClF,OAAO,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,cAAc,CAAC,CAAA;AACrF,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import type { CliRunResult } from "./bearshell.js";
2
- type FeedbackOptions = {
2
+ import { type OwnerDogfoodFeedbackOptions } from "./owner-dogfood-feedback.js";
3
+ type FeedbackOptions = OwnerDogfoodFeedbackOptions & {
3
4
  readonly projectDir?: string;
4
5
  };
5
6
  export declare function runFeedbackCommand(args: readonly string[], options?: FeedbackOptions, invocationName?: string): CliRunResult;
@@ -2,11 +2,13 @@ import { mkdirSync } from "node:fs";
2
2
  import { dirname, join, resolve } from "node:path";
3
3
  import process from "node:process";
4
4
  import { writeFileAtomic } from "../io/atomic-file.js";
5
+ import { runOwnerDogfoodFeedbackCommand } from "./owner-dogfood-feedback.js";
5
6
  import { readWorkflowStatus } from "./workflow-status.js";
6
7
  const FEEDBACK_REPORT_PATH = ".persona/workflow/feedback-report.md";
7
8
  function feedbackUsage(invocationName) {
8
9
  return [
9
10
  `Usage: ${invocationName} feedback`,
11
+ ` ${invocationName} feedback dogfood <code>`,
10
12
  "",
11
13
  "Write a tester feedback template to .persona/workflow/feedback-report.md.",
12
14
  "",
@@ -17,6 +19,7 @@ function feedbackUsage(invocationName) {
17
19
  "",
18
20
  "Scope:",
19
21
  "- report-only tester feedback template",
22
+ "- bounded diagnostic-only owner dogfooding event capture",
20
23
  "- not generated app product-quality certification",
21
24
  ].join("\n");
22
25
  }
@@ -62,6 +65,9 @@ function createFeedbackTemplate(projectDir) {
62
65
  ].join("\n");
63
66
  }
64
67
  export function runFeedbackCommand(args, options = {}, invocationName = "ph") {
68
+ if (args[0] === "dogfood") {
69
+ return runOwnerDogfoodFeedbackCommand(args.slice(1), options, invocationName);
70
+ }
65
71
  if (args.length === 1 && (args[0] === "--help" || args[0] === "-h" || args[0] === "help")) {
66
72
  return { status: 0, stdout: `${feedbackUsage(invocationName)}\n`, stderr: "" };
67
73
  }
@@ -1 +1 @@
1
- {"version":3,"file":"feedback.js","sourceRoot":"","sources":["../../src/cli/feedback.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AACnC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAClD,OAAO,OAAO,MAAM,cAAc,CAAA;AAElC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAEtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAMzD,MAAM,oBAAoB,GAAG,sCAAsC,CAAA;AAEnE,SAAS,aAAa,CAAC,cAAsB;IAC3C,OAAO;QACL,UAAU,cAAc,WAAW;QACnC,EAAE;QACF,2EAA2E;QAC3E,EAAE;QACF,sBAAsB;QACtB,iBAAiB;QACjB,yBAAyB;QACzB,gBAAgB;QAChB,EAAE;QACF,QAAQ;QACR,wCAAwC;QACxC,mDAAmD;KACpD,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACd,CAAC;AAED,SAAS,sBAAsB,CAAC,UAAkB;IAChD,MAAM,MAAM,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAA;IAC7C,OAAO;QACL,mCAAmC;QACnC,EAAE;QACF,cAAc,UAAU,IAAI;QAC5B,oBAAoB,MAAM,CAAC,OAAO,EAAE;QACpC,EAAE;QACF,UAAU;QACV,EAAE;QACF,OAAO;QACP,aAAa;QACb,aAAa;QACb,2BAA2B;QAC3B,EAAE;QACF,aAAa;QACb,EAAE;QACF,gBAAgB;QAChB,4BAA4B;QAC5B,2CAA2C;QAC3C,oBAAoB;QACpB,iBAAiB;QACjB,EAAE;QACF,OAAO;QACP,EAAE;QACF,oCAAoC;QACpC,qCAAqC;QACrC,qDAAqD;QACrD,6BAA6B;QAC7B,EAAE;QACF,YAAY;QACZ,EAAE;QACF,IAAI;QACJ,EAAE;QACF,qBAAqB;QACrB,EAAE;QACF,WAAW;QACX,WAAW;QACX,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACd,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAuB,EAAE,UAA2B,EAAE,EAAE,cAAc,GAAG,IAAI;IAC9G,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,EAAE,CAAC;QAC1F,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,aAAa,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAA;IAChF,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,0CAA0C,aAAa,CAAC,cAAc,CAAC,IAAI,EAAE,CAAA;IACvH,CAAC;IACD,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAA;IAC/D,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,EAAE,oBAAoB,CAAC,CAAA;IACzD,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IACnD,eAAe,CAAC,UAAU,EAAE,sBAAsB,CAAC,UAAU,CAAC,CAAC,CAAA;IAC/D,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,8BAA8B,UAAU,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAA;AACxF,CAAC"}
1
+ {"version":3,"file":"feedback.js","sourceRoot":"","sources":["../../src/cli/feedback.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AACnC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAClD,OAAO,OAAO,MAAM,cAAc,CAAA;AAElC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAEtD,OAAO,EAAE,8BAA8B,EAAoC,MAAM,6BAA6B,CAAA;AAC9G,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAMzD,MAAM,oBAAoB,GAAG,sCAAsC,CAAA;AAEnE,SAAS,aAAa,CAAC,cAAsB;IAC3C,OAAO;QACL,UAAU,cAAc,WAAW;QACnC,UAAU,cAAc,0BAA0B;QAClD,EAAE;QACF,2EAA2E;QAC3E,EAAE;QACF,sBAAsB;QACtB,iBAAiB;QACjB,yBAAyB;QACzB,gBAAgB;QAChB,EAAE;QACF,QAAQ;QACR,wCAAwC;QACxC,0DAA0D;QAC1D,mDAAmD;KACpD,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACd,CAAC;AAED,SAAS,sBAAsB,CAAC,UAAkB;IAChD,MAAM,MAAM,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAA;IAC7C,OAAO;QACL,mCAAmC;QACnC,EAAE;QACF,cAAc,UAAU,IAAI;QAC5B,oBAAoB,MAAM,CAAC,OAAO,EAAE;QACpC,EAAE;QACF,UAAU;QACV,EAAE;QACF,OAAO;QACP,aAAa;QACb,aAAa;QACb,2BAA2B;QAC3B,EAAE;QACF,aAAa;QACb,EAAE;QACF,gBAAgB;QAChB,4BAA4B;QAC5B,2CAA2C;QAC3C,oBAAoB;QACpB,iBAAiB;QACjB,EAAE;QACF,OAAO;QACP,EAAE;QACF,oCAAoC;QACpC,qCAAqC;QACrC,qDAAqD;QACrD,6BAA6B;QAC7B,EAAE;QACF,YAAY;QACZ,EAAE;QACF,IAAI;QACJ,EAAE;QACF,qBAAqB;QACrB,EAAE;QACF,WAAW;QACX,WAAW;QACX,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACd,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAuB,EAAE,UAA2B,EAAE,EAAE,cAAc,GAAG,IAAI;IAC9G,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,8BAA8B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,cAAc,CAAC,CAAA;IAC/E,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,EAAE,CAAC;QAC1F,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,aAAa,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAA;IAChF,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,0CAA0C,aAAa,CAAC,cAAc,CAAC,IAAI,EAAE,CAAA;IACvH,CAAC;IACD,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAA;IAC/D,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,EAAE,oBAAoB,CAAC,CAAA;IACzD,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IACnD,eAAe,CAAC,UAAU,EAAE,sBAAsB,CAAC,UAAU,CAAC,CAAC,CAAA;IAC/D,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,8BAA8B,UAAU,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAA;AACxF,CAAC"}
package/dist/cli/index.js CHANGED
@@ -141,7 +141,7 @@ export function runPersonaCli(args, options = {}) {
141
141
  return runSmokeCommand(args.slice(1), { projectDir: options.cwd }, invocationName);
142
142
  }
143
143
  if (command === "feedback") {
144
- return runFeedbackCommand(args.slice(1), { projectDir: options.cwd }, invocationName);
144
+ return runFeedbackCommand(args.slice(1), { env: options.env, projectDir: options.cwd }, invocationName);
145
145
  }
146
146
  if (command === "philosophy") {
147
147
  return runPhilosophyCommand(args.slice(1), {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
@@ -17,9 +17,10 @@ export function mergeBootstrapHarnessOptIns(templateBytes, currentBytes) {
17
17
  const template = parseHarness(templateBytes, "Persona Harness template");
18
18
  const current = parseHarness(currentBytes, HARNESS_CONFIG_PATH);
19
19
  const executeVerification = isRecord(current.enforce) && current.enforce.executeVerification === true;
20
+ const projectPhilosophyInjectionDisabled = isRecord(current.features) && current.features.projectPhilosophyInjection === false;
20
21
  const runtimeInjection = isRecord(current.features) && current.features.runtimeInjection === true;
21
22
  const multiAgent = isRecord(current.multiAgent) && current.multiAgent.enabled === true;
22
- if (!executeVerification && !runtimeInjection && !multiAgent)
23
+ if (!executeVerification && !projectPhilosophyInjectionDisabled && !runtimeInjection && !multiAgent)
23
24
  return templateBytes;
24
25
  const next = { ...template };
25
26
  if (executeVerification) {
@@ -34,6 +35,12 @@ export function mergeBootstrapHarnessOptIns(templateBytes, currentBytes) {
34
35
  runtimeInjection: true,
35
36
  };
36
37
  }
38
+ if (projectPhilosophyInjectionDisabled) {
39
+ next.features = {
40
+ ...(isRecord(next.features) ? next.features : {}),
41
+ projectPhilosophyInjection: false,
42
+ };
43
+ }
37
44
  if (multiAgent) {
38
45
  next.multiAgent = {
39
46
  ...(isRecord(template.multiAgent) ? template.multiAgent : {}),
@@ -1 +1 @@
1
- {"version":3,"file":"init-harness-overlay.js","sourceRoot":"","sources":["../../src/cli/init-harness-overlay.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init-harness-overlay.js","sourceRoot":"","sources":["../../src/cli/init-harness-overlay.ts"],"names":[],"mappings":"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"}
@@ -25,7 +25,7 @@ export type ProjectProfile = {
25
25
  readonly philosophy: {
26
26
  readonly company: null;
27
27
  readonly personal: null;
28
- readonly project: null;
28
+ readonly project: string | null;
29
29
  readonly priority: readonly [
30
30
  "project-specific",
31
31
  "company/team",
@@ -0,0 +1,4 @@
1
+ export declare const OWNER_DOGFOOD_FEEDBACK_CODES: readonly ["bootstrap-workspace-intake-failed", "interview-repeated-question", "project-philosophy-not-injected", "shared-skill-routing-unavailable", "source-read-runtime-unavailable", "unnecessary-interview", "workflow-history-missing"];
2
+ export type OwnerDogfoodFeedbackCode = typeof OWNER_DOGFOOD_FEEDBACK_CODES[number];
3
+ export declare function parseOwnerDogfoodFeedbackCode(value: string | undefined): OwnerDogfoodFeedbackCode | undefined;
4
+ export declare function recordOwnerDogfoodFeedback(root: string, code: OwnerDogfoodFeedbackCode, recordedAt: Date): boolean;
@@ -0,0 +1,234 @@
1
+ import { closeSync, constants, fchmodSync, fstatSync, fsyncSync, lstatSync, openSync, unlinkSync, writeSync, } from "node:fs";
2
+ import { captureNoFollowDirectory, noFollowPathIdentityFromStat, readNoFollowRegularFile, sameNoFollowPathIdentity, sameNoFollowPathLocation, } from "../io/no-follow-file.js";
3
+ import { withNoFollowDirectoryChain } from "../io/no-follow-directory-chain.js";
4
+ const EVENT_FILE_NAME = "events.jsonl";
5
+ const EVENT_LOCK_NAME = ".events.lock";
6
+ const EVENT_SCHEMA_VERSION = "owner-dogfood-feedback.1";
7
+ const MAX_EVENT_BYTES = 512;
8
+ const MAX_STORE_BYTES = 256 * 1024;
9
+ const MAX_STORED_EVENTS = 512;
10
+ export const OWNER_DOGFOOD_FEEDBACK_CODES = [
11
+ "bootstrap-workspace-intake-failed",
12
+ "interview-repeated-question",
13
+ "project-philosophy-not-injected",
14
+ "shared-skill-routing-unavailable",
15
+ "source-read-runtime-unavailable",
16
+ "unnecessary-interview",
17
+ "workflow-history-missing",
18
+ ];
19
+ export function parseOwnerDogfoodFeedbackCode(value) {
20
+ for (const code of OWNER_DOGFOOD_FEEDBACK_CODES) {
21
+ if (value === code)
22
+ return code;
23
+ }
24
+ return undefined;
25
+ }
26
+ export function recordOwnerDogfoodFeedback(root, code, recordedAt) {
27
+ const event = createEvent(code, recordedAt);
28
+ if (event === undefined)
29
+ return false;
30
+ const payload = `${JSON.stringify(event)}\n`;
31
+ if (Buffer.byteLength(payload, "utf8") > MAX_EVENT_BYTES)
32
+ return false;
33
+ return withNoFollowDirectoryChain(root, 0o700, () => recordAtCurrentRoot(payload)) === true;
34
+ }
35
+ function createEvent(code, recordedAt) {
36
+ try {
37
+ return { code, recordedAt: recordedAt.toISOString(), schemaVersion: EVENT_SCHEMA_VERSION };
38
+ }
39
+ catch {
40
+ return undefined;
41
+ }
42
+ }
43
+ function recordAtCurrentRoot(payload) {
44
+ if (!hasPrivateCurrentRoot())
45
+ return false;
46
+ const lock = acquireEventLock();
47
+ if (lock === undefined)
48
+ return false;
49
+ try {
50
+ const existing = readExistingEvents();
51
+ if (existing.kind === "blocked" || (existing.kind === "ready" && existing.count >= MAX_STORED_EVENTS)) {
52
+ return false;
53
+ }
54
+ return appendEvent(existing, payload);
55
+ }
56
+ finally {
57
+ releaseEventLock(lock);
58
+ }
59
+ }
60
+ function readExistingEvents() {
61
+ const source = readNoFollowRegularFile(EVENT_FILE_NAME, MAX_STORE_BYTES, ".");
62
+ if (source.kind === "absent")
63
+ return { kind: "absent" };
64
+ if (source.kind !== "ready")
65
+ return { kind: "blocked" };
66
+ const count = countEventLines(source.value.bytes.toString("utf8"));
67
+ if (!hasPrivateCurrentRoot() || !isPrivateMode(source.value.identity.mode, "0600") || count === undefined) {
68
+ return { kind: "blocked" };
69
+ }
70
+ return { count, identity: source.value.identity, kind: "ready" };
71
+ }
72
+ function countEventLines(text) {
73
+ if (text.length === 0 || !text.endsWith("\n"))
74
+ return undefined;
75
+ const lines = text.slice(0, -1).split("\n");
76
+ if (lines.length > MAX_STORED_EVENTS || lines.some((line) => line.length === 0))
77
+ return undefined;
78
+ return lines.every((line) => isOwnerDogfoodFeedbackEventJson(line)) ? lines.length : undefined;
79
+ }
80
+ function isOwnerDogfoodFeedbackEventJson(line) {
81
+ try {
82
+ return isOwnerDogfoodFeedbackEvent(JSON.parse(line));
83
+ }
84
+ catch {
85
+ return false;
86
+ }
87
+ }
88
+ function isOwnerDogfoodFeedbackEvent(value) {
89
+ if (!isRecord(value))
90
+ return false;
91
+ const record = value;
92
+ return Object.keys(record).length === 3
93
+ && parseOwnerDogfoodFeedbackCode(typeof record.code === "string" ? record.code : undefined) !== undefined
94
+ && typeof record.recordedAt === "string"
95
+ && Number.isFinite(Date.parse(record.recordedAt))
96
+ && record.schemaVersion === EVENT_SCHEMA_VERSION;
97
+ }
98
+ function isRecord(value) {
99
+ return value !== null && typeof value === "object" && !Array.isArray(value);
100
+ }
101
+ function appendEvent(existing, payload) {
102
+ let descriptor;
103
+ try {
104
+ const flags = existing.kind === "absent"
105
+ ? constants.O_CREAT | constants.O_EXCL | constants.O_NOFOLLOW | constants.O_WRONLY
106
+ : constants.O_APPEND | constants.O_NOFOLLOW | constants.O_WRONLY;
107
+ descriptor = openSync(EVENT_FILE_NAME, flags, 0o600);
108
+ const before = fstatSync(descriptor, { bigint: true });
109
+ if (!before.isFile())
110
+ return false;
111
+ const beforeIdentity = noFollowPathIdentityFromStat(before);
112
+ if (existing.kind === "ready" && !sameNoFollowPathIdentity(existing.identity, beforeIdentity))
113
+ return false;
114
+ fchmodSync(descriptor, 0o600);
115
+ const afterMode = fstatSync(descriptor, { bigint: true });
116
+ if (!afterMode.isFile() || !isPrivateMode(noFollowPathIdentityFromStat(afterMode).mode, "0600"))
117
+ return false;
118
+ if (!writeAll(descriptor, payload))
119
+ return false;
120
+ fsyncSync(descriptor);
121
+ const after = fstatSync(descriptor, { bigint: true });
122
+ const current = lstatSync(EVENT_FILE_NAME, { bigint: true });
123
+ return after.isFile()
124
+ && current.isFile()
125
+ && !current.isSymbolicLink()
126
+ && hasPrivateCurrentRoot()
127
+ && sameNoFollowPathLocation(noFollowPathIdentityFromStat(after), noFollowPathIdentityFromStat(current))
128
+ && isPrivateMode(noFollowPathIdentityFromStat(after).mode, "0600");
129
+ }
130
+ catch {
131
+ return false;
132
+ }
133
+ finally {
134
+ if (descriptor !== undefined)
135
+ closeDescriptor(descriptor);
136
+ }
137
+ }
138
+ function acquireEventLock() {
139
+ let descriptor;
140
+ let identity;
141
+ try {
142
+ descriptor = openSync(EVENT_LOCK_NAME, constants.O_CREAT | constants.O_EXCL | constants.O_NOFOLLOW | constants.O_WRONLY, 0o600);
143
+ const before = fstatSync(descriptor, { bigint: true });
144
+ if (!before.isFile())
145
+ return undefined;
146
+ identity = noFollowPathIdentityFromStat(before);
147
+ const current = lstatSync(EVENT_LOCK_NAME, { bigint: true });
148
+ if (!current.isFile() || current.isSymbolicLink() || !sameNoFollowPathIdentity(identity, noFollowPathIdentityFromStat(current))) {
149
+ return undefined;
150
+ }
151
+ fchmodSync(descriptor, 0o600);
152
+ const after = fstatSync(descriptor, { bigint: true });
153
+ if (!after.isFile() || !isPrivateMode(noFollowPathIdentityFromStat(after).mode, "0600"))
154
+ return undefined;
155
+ identity = noFollowPathIdentityFromStat(after);
156
+ const updated = lstatSync(EVENT_LOCK_NAME, { bigint: true });
157
+ if (!updated.isFile() || updated.isSymbolicLink() || !sameNoFollowPathIdentity(identity, noFollowPathIdentityFromStat(updated))) {
158
+ return undefined;
159
+ }
160
+ const lock = { descriptor, identity };
161
+ descriptor = undefined;
162
+ identity = undefined;
163
+ return lock;
164
+ }
165
+ catch {
166
+ return undefined;
167
+ }
168
+ finally {
169
+ if (descriptor !== undefined)
170
+ closeDescriptor(descriptor);
171
+ if (identity !== undefined)
172
+ removeOwnedEventLock(identity);
173
+ }
174
+ }
175
+ function releaseEventLock(lock) {
176
+ const current = currentOwnedEventLock(lock);
177
+ closeDescriptor(lock.descriptor);
178
+ if (current)
179
+ removeOwnedEventLock(lock.identity);
180
+ }
181
+ function currentOwnedEventLock(lock) {
182
+ try {
183
+ const descriptorStat = fstatSync(lock.descriptor, { bigint: true });
184
+ if (!descriptorStat.isFile())
185
+ return false;
186
+ const descriptor = noFollowPathIdentityFromStat(descriptorStat);
187
+ const current = lstatSync(EVENT_LOCK_NAME, { bigint: true });
188
+ return current.isFile()
189
+ && !current.isSymbolicLink()
190
+ && sameNoFollowPathIdentity(lock.identity, descriptor)
191
+ && sameNoFollowPathIdentity(descriptor, noFollowPathIdentityFromStat(current));
192
+ }
193
+ catch {
194
+ return false;
195
+ }
196
+ }
197
+ function removeOwnedEventLock(identity) {
198
+ try {
199
+ const current = lstatSync(EVENT_LOCK_NAME, { bigint: true });
200
+ if (current.isFile() && !current.isSymbolicLink() && sameNoFollowPathIdentity(identity, noFollowPathIdentityFromStat(current))) {
201
+ unlinkSync(EVENT_LOCK_NAME);
202
+ }
203
+ }
204
+ catch {
205
+ // A changed lock remains in place and blocks later writes rather than removing an unknown file.
206
+ }
207
+ }
208
+ function writeAll(descriptor, payload) {
209
+ const bytes = Buffer.from(payload, "utf8");
210
+ let offset = 0;
211
+ while (offset < bytes.byteLength) {
212
+ const written = writeSync(descriptor, bytes, offset, bytes.byteLength - offset);
213
+ if (written <= 0)
214
+ return false;
215
+ offset += written;
216
+ }
217
+ return true;
218
+ }
219
+ function hasPrivateCurrentRoot() {
220
+ const current = captureNoFollowDirectory(".");
221
+ return current.kind === "ready" && isPrivateMode(current.value.mode, "0700");
222
+ }
223
+ function isPrivateMode(mode, expected) {
224
+ return process.platform === "win32" || mode === expected;
225
+ }
226
+ function closeDescriptor(descriptor) {
227
+ try {
228
+ closeSync(descriptor);
229
+ }
230
+ catch {
231
+ // Cleanup must not turn a failed diagnostic recording into a process failure.
232
+ }
233
+ }
234
+ //# sourceMappingURL=owner-dogfood-feedback-store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"owner-dogfood-feedback-store.js","sourceRoot":"","sources":["../../src/cli/owner-dogfood-feedback-store.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { CliRunResult } from "./bearshell.js";
2
+ export type OwnerDogfoodFeedbackOptions = Readonly<{
3
+ readonly env?: Readonly<Record<string, string | undefined>>;
4
+ readonly homeDir?: string;
5
+ readonly now?: Date;
6
+ }>;
7
+ export declare function ownerDogfoodFeedbackUsage(invocationName: string): string;
8
+ export declare function runOwnerDogfoodFeedbackCommand(args: readonly string[], options?: OwnerDogfoodFeedbackOptions, invocationName?: string): CliRunResult;