persona-harness 0.8.2 → 0.8.3

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 (41) hide show
  1. package/CHANGELOG.md +14 -3
  2. package/dist/cli/workflow-safe-rendering.d.ts +8 -8
  3. package/dist/runtime/hooks.js +3 -4
  4. package/dist/runtime/hooks.js.map +1 -1
  5. package/dist/runtime/intent-workflow.d.ts +2 -2
  6. package/dist/runtime/intent-workflow.js +9 -2
  7. package/dist/runtime/intent-workflow.js.map +1 -1
  8. package/dist/runtime/opencode-skill-adapter.d.ts +5 -2
  9. package/dist/runtime/opencode-skill-adapter.js +10 -2
  10. package/dist/runtime/opencode-skill-adapter.js.map +1 -1
  11. package/dist/runtime/persona-shared-skill-activation.d.ts +26 -0
  12. package/dist/runtime/persona-shared-skill-activation.js +74 -0
  13. package/dist/runtime/persona-shared-skill-activation.js.map +1 -0
  14. package/dist/runtime/product-deep-interview.js +12 -2
  15. package/dist/runtime/product-deep-interview.js.map +1 -1
  16. package/dist/runtime/top-level-intent-router.d.ts +8 -2
  17. package/dist/runtime/top-level-intent-router.js +53 -16
  18. package/dist/runtime/top-level-intent-router.js.map +1 -1
  19. package/dist/runtime/workflow-skill-loader.d.ts +11 -1
  20. package/dist/runtime/workflow-skill-loader.js +33 -2
  21. package/dist/runtime/workflow-skill-loader.js.map +1 -1
  22. package/docs/current/persona-harness-detailed-usage.md +2 -2
  23. package/docs/current/persona-shared-skills-core.md +24 -4
  24. package/docs/current/release/README.md +2 -2
  25. package/docs/current/release/consumer-authority-v082-acceptance.json +27 -27
  26. package/docs/current/release/consumer-authority-v083-acceptance.json +1026 -0
  27. package/docs/current/release/v0.8.2-release-notes.md +9 -3
  28. package/docs/current/release/v0.8.3-release-notes.md +41 -0
  29. package/docs/releases/package-index.md +3 -1
  30. package/package.json +5 -1
  31. package/packages/shared-skills/README.md +4 -1
  32. package/packages/shared-skills/package.json +1 -1
  33. package/scripts/clean-package-exercise-phase.mjs +2 -0
  34. package/scripts/consumer-authority-beta33-acceptance-schema.mjs +50 -3
  35. package/scripts/consumer-authority-v082-acceptance-schema.mjs +6 -6
  36. package/scripts/consumer-authority-v083-acceptance-schema.d.mts +65 -0
  37. package/scripts/consumer-authority-v083-acceptance-schema.mjs +117 -0
  38. package/scripts/opencode-interview-observation-contract.d.mts +29 -0
  39. package/scripts/opencode-interview-observation-contract.mjs +318 -0
  40. package/scripts/preflight-consumer-authority-external-artifact-transport.mjs +2 -2
  41. package/scripts/preflight-consumer-authority-external-attestation.mjs +2 -2
package/CHANGELOG.md CHANGED
@@ -8,13 +8,24 @@ preparation alone does not establish stable support or channel state.
8
8
 
9
9
  ## Unreleased
10
10
 
11
- - Add the portable Persona-owned shared-skill catalog and one-question product
12
- interview route. Hosts route advisory references only; legacy OMO workflow
13
- payloads are excluded from the package surface.
14
11
  - Keep process-only evaluation cleanup in the normal CI lane while reserving
15
12
  the single-worker resource-sensitive lane for fixtures that own mutable
16
13
  package, Gradle, staged-consumer, workflow-loop, or producer runtime state.
17
14
 
15
+ ## [0.8.3] - 2026-08-10
16
+
17
+ - Prepare portable automatic skill activation: ambiguous new-product requests
18
+ begin a one-question deep interview, ambiguous brownfield requests begin
19
+ code-first discovery, explicit commands take precedence, and direct work
20
+ bypasses discovery. Frontend remains an explicit optional overlay.
21
+ - Keep hosts advisory-only, prevent pre-approval workflow or project mutation,
22
+ and retain the package's installed-only/no-source-fallback boundary.
23
+ - Preserve an existing source-bound draft or revision plan during strict
24
+ bootstrap, then require the current V4 readiness route to use explicit
25
+ `ph plan --accept` before its Gradle, report, and evidence prerequisites.
26
+ - `0.8.3` is an unpublished source candidate. The immutable published `0.8.2`
27
+ package cannot be repacked or reused for this release.
28
+
18
29
  ## [0.8.0-beta.19] - 2026-08-02
19
30
 
20
31
  - Replaces the unsupported postpublish registry `gitHead` predicate with a
@@ -48,7 +48,7 @@ export declare function safeWorkflowClosureNextPayload(payload: ClosureNextPaylo
48
48
  } | null;
49
49
  evidence: "missing" | "present";
50
50
  finish: "blocked" | "passed";
51
- implementationReport: "missing" | "malformed" | "conflicting" | "filled" | "template" | "unknown";
51
+ implementationReport: "malformed" | "missing" | "conflicting" | "filled" | "template" | "unknown";
52
52
  lifecycle: {
53
53
  blockers: {
54
54
  source?: string | undefined;
@@ -67,9 +67,9 @@ export declare function safeWorkflowClosureNextPayload(payload: ClosureNextPaylo
67
67
  readonly workflow: "absent" | "current" | "malformed" | "stale" | "unassessed" | "unsafe";
68
68
  };
69
69
  paths: {
70
- readonly evidence: "unsafe" | "safe" | "unavailable";
70
+ readonly evidence: "unsafe" | "unavailable" | "safe";
71
71
  readonly harness: "invalid" | "safe";
72
- readonly rules: "unsafe" | "safe" | "unavailable";
72
+ readonly rules: "unsafe" | "unavailable" | "safe";
73
73
  };
74
74
  readiness: "blocked" | "ready-for-closure";
75
75
  reports: {
@@ -84,7 +84,7 @@ export declare function safeWorkflowClosureNextPayload(payload: ClosureNextPaylo
84
84
  pendingTickets: string[];
85
85
  plan: string;
86
86
  reportCoverage: "missing" | "not-checked" | "sufficient";
87
- reviewReport: "missing" | "malformed" | "conflicting" | "filled" | "template" | "unknown";
87
+ reviewReport: "malformed" | "missing" | "conflicting" | "filled" | "template" | "unknown";
88
88
  tdd: {
89
89
  source?: string | undefined;
90
90
  kind: "passed" | "unavailable" | "disabled" | "no-ticket" | "red-missing" | "red-without-green";
@@ -128,7 +128,7 @@ export declare function safeWorkflowClosureStatusPayload(payload: ClosureStatusP
128
128
  archive: "pending" | "complete" | "history-only-repair";
129
129
  evidence: "missing" | "present";
130
130
  finish: "blocked" | "passed";
131
- implementationReport: "missing" | "malformed" | "conflicting" | "filled" | "template" | "unknown";
131
+ implementationReport: "malformed" | "missing" | "conflicting" | "filled" | "template" | "unknown";
132
132
  lifecycle: {
133
133
  blockers: {
134
134
  source?: string | undefined;
@@ -147,9 +147,9 @@ export declare function safeWorkflowClosureStatusPayload(payload: ClosureStatusP
147
147
  readonly workflow: "absent" | "current" | "malformed" | "stale" | "unassessed" | "unsafe";
148
148
  };
149
149
  paths: {
150
- readonly evidence: "unsafe" | "safe" | "unavailable";
150
+ readonly evidence: "unsafe" | "unavailable" | "safe";
151
151
  readonly harness: "invalid" | "safe";
152
- readonly rules: "unsafe" | "safe" | "unavailable";
152
+ readonly rules: "unsafe" | "unavailable" | "safe";
153
153
  };
154
154
  readiness: "blocked" | "ready-for-closure";
155
155
  reports: {
@@ -164,7 +164,7 @@ export declare function safeWorkflowClosureStatusPayload(payload: ClosureStatusP
164
164
  pendingTickets: string[];
165
165
  plan: string;
166
166
  reportCoverage: "missing" | "not-checked" | "sufficient";
167
- reviewReport: "missing" | "malformed" | "conflicting" | "filled" | "template" | "unknown";
167
+ reviewReport: "malformed" | "missing" | "conflicting" | "filled" | "template" | "unknown";
168
168
  verification: import("./workflow-closure-verification.js").ClosureVerification;
169
169
  };
170
170
  steps: {
@@ -100,9 +100,8 @@ export function createPhase0Hooks(options = {}) {
100
100
  }
101
101
  const evidenceDir = evidencePath.path;
102
102
  const compliance = new RailComplianceTracker({ evidenceDir });
103
- const productInterview = new ProductDeepInterviewTracker({
104
- mode: existsSync(join(projectDir, "src")) ? "brownfield-change-discovery" : "new-product",
105
- });
103
+ const productInterviewMode = existsSync(join(projectDir, "src")) ? "brownfield-change-discovery" : "new-product";
104
+ const productInterview = new ProductDeepInterviewTracker({ mode: productInterviewMode });
106
105
  const continuation = new ContinuationTracker({ evidenceDir });
107
106
  const entrySteering = new EntrySteeringTracker(projectDir, config);
108
107
  const runtimeInjectionEnabled = isRuntimeInjectionEnabled(config);
@@ -335,7 +334,7 @@ export function createPhase0Hooks(options = {}) {
335
334
  }
336
335
  if (runtimeInjectionEnabled && allowsRuntimeInjection(sessionId, "intent-workflow")) {
337
336
  const productInterviewInjected = config.enabledDomains.includes("product")
338
- && maybeInjectProductDeepInterview(output, sessionId, productInterview);
337
+ && maybeInjectProductDeepInterview(output, sessionId, productInterview, productInterviewMode);
339
338
  if (productInterviewInjected) {
340
339
  store.take(sessionId);
341
340
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../src/runtime/hooks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../src/runtime/hooks.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
1
  import { loadHarnessConfig } from "../config/harness-config.js";
2
- import { ProductDeepInterviewTracker } from "./product-deep-interview.js";
2
+ import { ProductDeepInterviewTracker, type ProductDeepInterviewMode } from "./product-deep-interview.js";
3
3
  import { RailComplianceTracker } from "./rail-compliance.js";
4
4
  import type { TransformMessagesOutput } from "./types.js";
5
5
  type IntentWorkflowOptions = {
6
6
  readonly evidenceDir?: string;
7
7
  };
8
- export declare function maybeInjectProductDeepInterview(output: TransformMessagesOutput, sessionID: string, tracker: ProductDeepInterviewTracker): boolean;
8
+ export declare function maybeInjectProductDeepInterview(output: TransformMessagesOutput, sessionID: string, tracker: ProductDeepInterviewTracker, productMode: ProductDeepInterviewMode): boolean;
9
9
  export declare function maybeInjectIntentWorkflow(output: TransformMessagesOutput, projectDir: string, sessionID: string, config: ReturnType<typeof loadHarnessConfig>, compliance: RailComplianceTracker, options?: IntentWorkflowOptions): boolean;
10
10
  export {};
@@ -7,6 +7,7 @@ import { formatRefactorWorkflowBlock } from "./refactor-workflow-skill.js";
7
7
  import { formatRequirementsWorkflowBlock, hasPersonaWorkflowOptIn, hasRequirementsDraft, } from "./requirements-workflow-skill.js";
8
8
  import { formatReviewWorkflowBlock } from "./review-workflow-skill.js";
9
9
  import { detectTopLevelIntent } from "./top-level-intent-router.js";
10
+ import { formatExplicitPersonaSkillActivationBlock, formatUnavailablePersonaSkillActivationBlock, } from "./workflow-skill-loader.js";
10
11
  const IMPLEMENTATION_PROFILE_GUARD_LINES = [
11
12
  "- Before implementation, if `.persona/project-profile.jsonc` exists, read it and do not create a stack that conflicts with its language/framework/build tool/profile constraints.",
12
13
  "- If the profile exists but has not been read yet, do not implement; read the profile plus README/requirements/current task card first.",
@@ -17,12 +18,12 @@ function latestUserText(output) {
17
18
  const textPart = latestUserMessage?.parts.find((part) => part.type === "text" && typeof part.text === "string");
18
19
  return textPart?.type === "text" ? textPart.text : undefined;
19
20
  }
20
- export function maybeInjectProductDeepInterview(output, sessionID, tracker) {
21
+ export function maybeInjectProductDeepInterview(output, sessionID, tracker, productMode) {
21
22
  const text = latestUserText(output);
22
23
  if (text === undefined) {
23
24
  return false;
24
25
  }
25
- if (!tracker.hasActiveSession(sessionID) && detectTopLevelIntent(text)?.primary !== "product-interview") {
26
+ if (!tracker.hasActiveSession(sessionID) && detectTopLevelIntent(text, { productMode })?.primary !== "product-interview") {
26
27
  return false;
27
28
  }
28
29
  const result = tracker.route(sessionID, text);
@@ -111,6 +112,12 @@ export function maybeInjectIntentWorkflow(output, projectDir, sessionID, config,
111
112
  return false;
112
113
  }
113
114
  const intent = detectTopLevelIntent(text);
115
+ if (intent?.primary === "unavailable") {
116
+ return injectIntentWorkflowRail(output, projectDir, sessionID, text, intent, formatUnavailablePersonaSkillActivationBlock(intent), "[Persona Harness Skill Activation]", compliance, options);
117
+ }
118
+ if (intent?.activation?.decision === "explicit") {
119
+ return injectIntentWorkflowRail(output, projectDir, sessionID, text, intent, formatExplicitPersonaSkillActivationBlock(intent), "[Persona Harness Skill Activation]", compliance, options);
120
+ }
114
121
  if (intent?.primary === "debug") {
115
122
  return injectIntentWorkflowRail(output, projectDir, sessionID, text, intent, formatDebugWorkflowBlock(intent), "[Persona Harness Debug Workflow]", compliance, options);
116
123
  }
@@ -1 +1 @@
1
- {"version":3,"file":"intent-workflow.js","sourceRoot":"","sources":["../../src/runtime/intent-workflow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"intent-workflow.js","sourceRoot":"","sources":["../../src/runtime/intent-workflow.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,11 @@
1
1
  import { type PersonaSharedSkillId } from "./persona-shared-skill-catalog.js";
2
- export type OpenCodeSkillRouteDecision = "none" | "suggest" | "explicit";
2
+ import type { PersonaSharedSkillActivation } from "./persona-shared-skill-activation.js";
3
+ export type OpenCodeSkillRouteDecision = "activate" | "explicit";
3
4
  export type OpenCodeSkillRouteInput = {
4
- readonly decision: Exclude<OpenCodeSkillRouteDecision, "none">;
5
+ readonly decision: OpenCodeSkillRouteDecision;
6
+ readonly firstAction: PersonaSharedSkillActivation["firstAction"];
5
7
  readonly skillId: PersonaSharedSkillId;
6
8
  readonly reason: string;
7
9
  };
8
10
  export declare function createOpenCodeSkillRoute(input: OpenCodeSkillRouteInput): string;
11
+ export declare function createOpenCodeUnavailableSkillRoute(reasonCode: "malformed-explicit-skill-command" | "unavailable-explicit-skill"): string;
@@ -17,9 +17,17 @@ export function createOpenCodeSkillRoute(input) {
17
17
  `Skill: ${skill.id}`,
18
18
  `Reference: ${personaSharedSkillPath(skill.id)}`,
19
19
  `Reason: ${boundedReason(input.reason)}`,
20
+ `First safe action: ${input.firstAction}`,
20
21
  `Handoff: ${handoff}`,
21
- "OpenCode advises and routes only. It does not create plans, tickets, branches, files, agents, or workflow state, load a full skill body, or advance a workflow automatically.",
22
- "Use the referenced skill only when the user explicitly chooses that next step.",
22
+ "OpenCode activates this catalog reference for the current turn only. OpenCode advises and routes only: it does not load a full skill body. It does not create plans, tickets, branches, files, agents, or workflow state, or advance a workflow automatically.",
23
+ ].join("\n");
24
+ }
25
+ export function createOpenCodeUnavailableSkillRoute(reasonCode) {
26
+ return [
27
+ "[Persona Harness Skill Route]",
28
+ "Decision: unavailable",
29
+ `Reason code: ${reasonCode}`,
30
+ "OpenCode does not load a skill body, create state, or fall back to a different procedure.",
23
31
  ].join("\n");
24
32
  }
25
33
  //# sourceMappingURL=opencode-skill-adapter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"opencode-skill-adapter.js","sourceRoot":"","sources":["../../src/runtime/opencode-skill-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,yBAAyB,GAE1B,MAAM,mCAAmC,CAAA;AAU1C,SAAS,aAAa,CAAC,MAAc;IACnC,OAAO,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,qDAAqD,CAAA;AACvH,CAAC;AAED,SAAS,aAAa,CAAC,KAAmD;IACxE,IAAI,KAAK,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;QACxB,OAAO,4BAA4B,CAAA;IACrC,CAAC;IACD,OAAO,KAAK,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAA;AACxD,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,KAA8B;IACrE,MAAM,KAAK,GAAG,yBAAyB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IACtD,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,CAAC,CAAA;IAEpC,OAAO;QACL,+BAA+B;QAC/B,aAAa,KAAK,CAAC,QAAQ,EAAE;QAC7B,UAAU,KAAK,CAAC,EAAE,EAAE;QACpB,cAAc,sBAAsB,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE;QAChD,WAAW,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;QACxC,YAAY,OAAO,EAAE;QACrB,+KAA+K;QAC/K,gFAAgF;KACjF,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACd,CAAC"}
1
+ {"version":3,"file":"opencode-skill-adapter.js","sourceRoot":"","sources":["../../src/runtime/opencode-skill-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,yBAAyB,GAE1B,MAAM,mCAAmC,CAAA;AAY1C,SAAS,aAAa,CAAC,MAAc;IACnC,OAAO,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,qDAAqD,CAAA;AACvH,CAAC;AAED,SAAS,aAAa,CAAC,KAAmD;IACxE,IAAI,KAAK,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;QACxB,OAAO,4BAA4B,CAAA;IACrC,CAAC;IACD,OAAO,KAAK,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAA;AACxD,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,KAA8B;IACrE,MAAM,KAAK,GAAG,yBAAyB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IACtD,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,CAAC,CAAA;IAEpC,OAAO;QACL,+BAA+B;QAC/B,aAAa,KAAK,CAAC,QAAQ,EAAE;QAC7B,UAAU,KAAK,CAAC,EAAE,EAAE;QACpB,cAAc,sBAAsB,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE;QAChD,WAAW,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;QACxC,sBAAsB,KAAK,CAAC,WAAW,EAAE;QACzC,YAAY,OAAO,EAAE;QACrB,gQAAgQ;KACjQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACd,CAAC;AAED,MAAM,UAAU,mCAAmC,CAAC,UAA6E;IAC/H,OAAO;QACL,+BAA+B;QAC/B,uBAAuB;QACvB,gBAAgB,UAAU,EAAE;QAC5B,2FAA2F;KAC5F,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACd,CAAC"}
@@ -0,0 +1,26 @@
1
+ import { type PersonaSharedSkillId } from "./persona-shared-skill-catalog.js";
2
+ export type PersonaProductDiscoveryMode = "new-product" | "brownfield-change-discovery";
3
+ export type PersonaSharedSkillActivation = {
4
+ readonly decision: "automatic" | "explicit";
5
+ readonly firstAction: "one-question-product-interview" | "code-first-change-discovery" | "advisory-reference";
6
+ readonly handoff: PersonaSharedSkillId | null;
7
+ readonly reason: string;
8
+ readonly skillId: PersonaSharedSkillId;
9
+ };
10
+ export type ExplicitPersonaSkillCommand = {
11
+ readonly kind: "none";
12
+ } | {
13
+ readonly kind: "valid";
14
+ readonly skillId: PersonaSharedSkillId;
15
+ } | {
16
+ readonly kind: "malformed";
17
+ } | {
18
+ readonly kind: "unavailable";
19
+ };
20
+ export type AutomaticPersonaSkillIntent = "product-interview" | "requirements" | "debug" | "review" | "refactor" | "git" | "programming";
21
+ export declare function parseExplicitPersonaSkillCommand(message: string): ExplicitPersonaSkillCommand;
22
+ export declare function isProductDiscoverySuppressed(message: string): boolean;
23
+ export declare function isClearDirectImplementationRequest(message: string): boolean;
24
+ export declare function activateExplicitPersonaSkill(skillId: PersonaSharedSkillId, reason: string, productMode?: PersonaProductDiscoveryMode): PersonaSharedSkillActivation;
25
+ export declare function activateAutomaticPersonaSkill(intent: AutomaticPersonaSkillIntent, reason: string, productMode?: PersonaProductDiscoveryMode): PersonaSharedSkillActivation;
26
+ export declare function primaryIntentForPersonaSkill(skillId: PersonaSharedSkillId): AutomaticPersonaSkillIntent;
@@ -0,0 +1,74 @@
1
+ import { PERSONA_CORE_SKILL_IDS, PERSONA_OPTIONAL_SKILL_IDS, resolvePersonaSharedSkill, } from "./persona-shared-skill-catalog.js";
2
+ const EXPLICIT_COMMAND = "/persona";
3
+ const SKILL_ID_PATTERN = /^[a-z][a-z-]*$/u;
4
+ const KNOWN_SKILL_IDS = new Set([...PERSONA_CORE_SKILL_IDS, ...PERSONA_OPTIONAL_SKILL_IDS]);
5
+ const DISCOVERY_SUPPRESSION_PATTERN = /(?:\b(?:skip|defer|stop|pause)\b.*\b(?:product\s+)?(?:discovery|interview)\b|(?:제품|프로덕트)?(?:\s*(?:탐색|인터뷰)).*(?:건너뛰|보류|중단|그만))/iu;
6
+ const CLEAR_DIRECT_IMPLEMENTATION_PATTERN = /(?:\b(?:implement|fix|repair|edit|resolve)\b|구현|수정|고쳐|고치|해결)/iu;
7
+ const AUTOMATIC_SKILL_IDS = {
8
+ "product-interview": "deep-interview",
9
+ requirements: "plan",
10
+ debug: "debug",
11
+ review: "review",
12
+ refactor: "refactor",
13
+ git: "git",
14
+ programming: "programming",
15
+ };
16
+ function isKnownPersonaSharedSkillId(value) {
17
+ return KNOWN_SKILL_IDS.has(value);
18
+ }
19
+ function firstActionFor(skillId, productMode) {
20
+ if (skillId !== "deep-interview") {
21
+ return "advisory-reference";
22
+ }
23
+ return productMode === "brownfield-change-discovery"
24
+ ? "code-first-change-discovery"
25
+ : "one-question-product-interview";
26
+ }
27
+ function buildActivation(skillId, decision, reason, productMode) {
28
+ const skill = resolvePersonaSharedSkill(skillId);
29
+ return {
30
+ decision,
31
+ firstAction: firstActionFor(skill.id, productMode),
32
+ handoff: skill.handoff,
33
+ reason,
34
+ skillId: skill.id,
35
+ };
36
+ }
37
+ export function parseExplicitPersonaSkillCommand(message) {
38
+ const tokens = message.trim().split(/\s+/u);
39
+ if (tokens[0] !== EXPLICIT_COMMAND) {
40
+ return { kind: "none" };
41
+ }
42
+ const skillId = tokens[1];
43
+ if (skillId === undefined || !SKILL_ID_PATTERN.test(skillId)) {
44
+ return { kind: "malformed" };
45
+ }
46
+ if (!isKnownPersonaSharedSkillId(skillId)) {
47
+ return { kind: "unavailable" };
48
+ }
49
+ return { kind: "valid", skillId };
50
+ }
51
+ export function isProductDiscoverySuppressed(message) {
52
+ return DISCOVERY_SUPPRESSION_PATTERN.test(message.trim());
53
+ }
54
+ export function isClearDirectImplementationRequest(message) {
55
+ return CLEAR_DIRECT_IMPLEMENTATION_PATTERN.test(message);
56
+ }
57
+ export function activateExplicitPersonaSkill(skillId, reason, productMode = "new-product") {
58
+ return buildActivation(skillId, "explicit", reason, productMode);
59
+ }
60
+ export function activateAutomaticPersonaSkill(intent, reason, productMode = "new-product") {
61
+ return buildActivation(AUTOMATIC_SKILL_IDS[intent], "automatic", reason, productMode);
62
+ }
63
+ export function primaryIntentForPersonaSkill(skillId) {
64
+ if (skillId === "deep-interview")
65
+ return "product-interview";
66
+ if (skillId === "technical-intake" || skillId === "plan" || skillId === "ralplan" || skillId === "tdd" || skillId === "implementation") {
67
+ return "requirements";
68
+ }
69
+ if (skillId === "debug" || skillId === "review" || skillId === "refactor" || skillId === "git" || skillId === "programming") {
70
+ return skillId;
71
+ }
72
+ return "programming";
73
+ }
74
+ //# sourceMappingURL=persona-shared-skill-activation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"persona-shared-skill-activation.js","sourceRoot":"","sources":["../../src/runtime/persona-shared-skill-activation.ts"],"names":[],"mappings":"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"}
@@ -49,7 +49,7 @@ const TOPICS = [
49
49
  tradeoff: "Naming real constraints early avoids surprise rework; speculative technical choices can wait for technical intake.",
50
50
  },
51
51
  ];
52
- const START_PATTERN = /(만들래|만들고\s*싶|기획해|구상해|서비스\s*만들|웹\s*서비스|기존\s*(?:서비스|제품|앱|흐름).*(?:개선|변경)|product\s+idea|want\s+to\s+(?:build|explore)|build\s+(?:an?|the)\s+(?:app|service|product)|new\s+(?:app|service|product)|(?:app|service|product)\s+idea|(?:improve|change)\s+(?:an?\s+)?existing(?:\s+\w+){0,2}\s+(?:app|service|product|flow))/iu;
52
+ const START_PATTERN = /(만들래|만들고\s*싶|기획해|구상해|서비스\s*만들|웹\s*서비스|기존\s*(?:서비스|제품|앱|흐름).*(?:개선|변경)|product\s+idea|want\s+to\s+(?:build|create|make|explore)|(?:build|create|make)\s+(?:an?|the)\s+(?:app|service|product)|new\s+(?:app|service|product)|(?:app|service|product)\s+idea|(?:improve|change)\s+(?:an?\s+)?existing(?:\s+\w+){0,2}\s+(?:app|service|product|flow))/iu;
53
53
  const APPROVAL_PATTERN = /^(?:승인|진행하자|시작하자|approve|proceed|go\s+ahead)$/iu;
54
54
  const STOP_PATTERN = /^(?:stop|pause|그만|중단)$/iu;
55
55
  const DEFER_PATTERN = /^(?:defer|skip|later|보류|넘겨)$/iu;
@@ -71,12 +71,22 @@ function renderQuestion(session, approvalBlocked = false) {
71
71
  block: [
72
72
  "[Persona Harness Product Interview]",
73
73
  createOpenCodeSkillRoute({
74
- decision: "suggest",
74
+ decision: "activate",
75
+ firstAction: session.mode === "brownfield-change-discovery" ? "code-first-change-discovery" : "one-question-product-interview",
75
76
  skillId: "deep-interview",
76
77
  reason: "Product facts are still unresolved, so technical intake and planning remain deferred.",
77
78
  }),
78
79
  "",
79
80
  "Current understanding: product discovery is in progress in this conversation.",
81
+ ...(session.mode === "brownfield-change-discovery"
82
+ ? [
83
+ "First-action contract: inspect relevant existing code before asking for facts it already answers.",
84
+ "Do not implement or create project state in this turn.",
85
+ ]
86
+ : [
87
+ "Required first response: ask exactly one product question now, then wait for the user's answer.",
88
+ "Do not propose a solution, implementation, technical plan, command, or file change in this turn.",
89
+ ]),
80
90
  ...(session.mode === "brownfield-change-discovery"
81
91
  ? [
82
92
  "Mode: brownfield-change-discovery.",
@@ -1 +1 @@
1
- {"version":3,"file":"product-deep-interview.js","sourceRoot":"","sources":["../../src/runtime/product-deep-interview.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"product-deep-interview.js","sourceRoot":"","sources":["../../src/runtime/product-deep-interview.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,15 @@
1
1
  import { type RequirementsIntent } from "./requirements-intent-router.js";
2
- export type TopLevelIntentKind = "product-interview" | "requirements" | "debug" | "review" | "refactor" | "git" | "programming";
2
+ import { type PersonaProductDiscoveryMode, type PersonaSharedSkillActivation } from "./persona-shared-skill-activation.js";
3
+ export type TopLevelIntentKind = "product-interview" | "requirements" | "debug" | "review" | "refactor" | "git" | "programming" | "unavailable";
3
4
  export type TopLevelIntent = {
5
+ readonly activation?: PersonaSharedSkillActivation;
4
6
  readonly primary: TopLevelIntentKind;
7
+ readonly reasonCode?: "malformed-explicit-skill-command" | "unavailable-explicit-skill";
5
8
  readonly secondary: readonly TopLevelIntentKind[];
6
9
  readonly reason: string;
7
10
  readonly requirementsIntent?: RequirementsIntent;
8
11
  };
9
- export declare function detectTopLevelIntent(message: string): TopLevelIntent | undefined;
12
+ export type TopLevelIntentOptions = {
13
+ readonly productMode?: PersonaProductDiscoveryMode;
14
+ };
15
+ export declare function detectTopLevelIntent(message: string, options?: TopLevelIntentOptions): TopLevelIntent | undefined;
@@ -1,11 +1,12 @@
1
1
  import { detectRequirementsIntent } from "./requirements-intent-router.js";
2
+ import { activateAutomaticPersonaSkill, activateExplicitPersonaSkill, isClearDirectImplementationRequest, isProductDiscoverySuppressed, parseExplicitPersonaSkillCommand, primaryIntentForPersonaSkill, } from "./persona-shared-skill-activation.js";
2
3
  import { isProductDeepInterviewStart } from "./product-deep-interview.js";
3
4
  const REQUIREMENT_CONTEXT_PATTERN = /(?:\bREADME(?:\.md)?\b|\brequirements(?:\.md)?\b|리드미|요구사항|backlog|task\s*card|step|단계)/iu;
4
- const DEBUG_PATTERN = /(왜\s*안|안\s*돼|안됨|에러|오류|실패|버그|고장|멈춤|깨졌|문제|원인|debug|bug|error|fail(?:ed|ing|s)?|failure|crash|hang|broken|not\s+working|why)/iu;
5
+ const DEBUG_PATTERN = /(왜\s*안|안\s*돼|안됨|에러|오류|실패|버그|고장|멈춤|깨졌|문제|원인|debug|bug|error|fail(?:ed|ing|s)?|failure|crash|\bhang(?:s|ing)?\b|broken|not\s+working|why)/iu;
5
6
  const REVIEW_PATTERN = /(리뷰|검토|분석|냉정하게|살펴봐|봐봐|review|audit|qa|verify|validate|check\s+(?:this|my|the))/iu;
6
7
  const REFACTOR_PATTERN = /(리팩터|리팩토|구조\s*개선|구조\s*정리|정리하고|cleanup|clean\s+up|refactor|restructure|simplif)/iu;
7
8
  const GIT_PATTERN = /(커밋|푸쉬|푸시|태그|릴리즈|\bgit\s+(?:log|show|blame|rebase|status)\b|\bcommit\b|\bpush\b|\btag\b|\brelease\b|\brebase\b|\bblame\b)/iu;
8
- const PROGRAMMING_PATTERN = /(구현|만들|작성|개발|완성|수정|고치|고쳐|해결|build|implement|create|make|edit|fix|repair|resolve)/iu;
9
+ const PROGRAMMING_PATTERN = /(구현|만들|작성|개발|완성|수정|고치|고쳐|해결|\b(?:build|implement(?:ing)?|create|make|edit|fix|repair|resolve)\b)/iu;
9
10
  function includesIntent(intents, intent) {
10
11
  return intents.includes(intent);
11
12
  }
@@ -15,9 +16,14 @@ function appendSecondary(intents, primary, candidate) {
15
16
  }
16
17
  return [...intents, candidate];
17
18
  }
18
- function buildIntent(primary, message, reason, requirementsIntent) {
19
+ function buildIntent(primary, message, reason, requirementsIntent, activation) {
19
20
  if (primary === "product-interview") {
20
- return { primary, secondary: [], reason };
21
+ return {
22
+ ...(activation === undefined ? {} : { activation }),
23
+ primary,
24
+ reason,
25
+ secondary: [],
26
+ };
21
27
  }
22
28
  const hasRequirementsContext = requirementsIntent !== undefined || REQUIREMENT_CONTEXT_PATTERN.test(message);
23
29
  const hasProgrammingIntent = requirementsIntent?.kind === "requirement-drafting" ? false : PROGRAMMING_PATTERN.test(message);
@@ -33,17 +39,43 @@ function buildIntent(primary, message, reason, requirementsIntent) {
33
39
  secondary = appendSecondary(secondary, primary, "git");
34
40
  }
35
41
  return {
42
+ ...(activation === undefined ? {} : { activation }),
36
43
  primary,
37
44
  secondary,
38
45
  reason,
39
46
  ...(requirementsIntent !== undefined ? { requirementsIntent } : {}),
40
47
  };
41
48
  }
42
- export function detectTopLevelIntent(message) {
49
+ function unavailableIntent(reasonCode) {
50
+ return {
51
+ primary: "unavailable",
52
+ reason: "The explicit Persona skill command is unavailable and was not routed.",
53
+ reasonCode,
54
+ secondary: [],
55
+ };
56
+ }
57
+ export function detectTopLevelIntent(message, options = {}) {
43
58
  const normalized = message.trim();
44
59
  if (normalized.length === 0) {
45
60
  return undefined;
46
61
  }
62
+ const productMode = options.productMode ?? "new-product";
63
+ const explicitCommand = parseExplicitPersonaSkillCommand(normalized);
64
+ if (explicitCommand.kind === "malformed") {
65
+ return unavailableIntent("malformed-explicit-skill-command");
66
+ }
67
+ if (explicitCommand.kind === "unavailable") {
68
+ return unavailableIntent("unavailable-explicit-skill");
69
+ }
70
+ if (explicitCommand.kind === "valid") {
71
+ const primary = primaryIntentForPersonaSkill(explicitCommand.skillId);
72
+ return {
73
+ activation: activateExplicitPersonaSkill(explicitCommand.skillId, "The user explicitly selected this Persona skill command.", productMode),
74
+ primary,
75
+ reason: "The explicit Persona skill command takes precedence over automatic intent routing.",
76
+ secondary: [],
77
+ };
78
+ }
47
79
  const requirementsIntent = detectRequirementsIntent(normalized);
48
80
  const hasDebugIntent = DEBUG_PATTERN.test(normalized);
49
81
  const hasReviewIntent = REVIEW_PATTERN.test(normalized);
@@ -51,26 +83,31 @@ export function detectTopLevelIntent(message) {
51
83
  const hasGitIntent = GIT_PATTERN.test(normalized);
52
84
  const hasProgrammingIntent = PROGRAMMING_PATTERN.test(normalized);
53
85
  const hasWorkIntent = requirementsIntent !== undefined || hasDebugIntent || hasReviewIntent || hasRefactorIntent || hasProgrammingIntent;
54
- if (isProductDeepInterviewStart(normalized) && !hasDebugIntent && !hasReviewIntent && !hasRefactorIntent) {
55
- return buildIntent("product-interview", normalized, "Product facts require a one-question interview before technical intake.", undefined);
56
- }
57
86
  if (hasGitIntent && !hasWorkIntent) {
58
- return buildIntent("git", normalized, "Git-only operation requested.", requirementsIntent);
87
+ return buildIntent("git", normalized, "Git-only operation requested.", requirementsIntent, activateAutomaticPersonaSkill("git", "Git-only operation requested."));
59
88
  }
60
89
  if (hasDebugIntent) {
61
- return buildIntent("debug", normalized, "Failure or broken-behavior signal detected.", requirementsIntent);
90
+ return buildIntent("debug", normalized, "Failure or broken-behavior signal detected.", requirementsIntent, activateAutomaticPersonaSkill("debug", "Failure or broken-behavior signal detected."));
62
91
  }
63
92
  if (hasReviewIntent && !hasProgrammingIntent) {
64
- return buildIntent("review", normalized, "Review or analysis request detected without a fix request.", requirementsIntent);
65
- }
66
- if (requirementsIntent !== undefined) {
67
- return buildIntent("requirements", normalized, requirementsIntent.reason, requirementsIntent);
93
+ return buildIntent("review", normalized, "Review or analysis request detected without a fix request.", requirementsIntent, activateAutomaticPersonaSkill("review", "Review or analysis request detected without a fix request."));
68
94
  }
69
95
  if (hasRefactorIntent) {
70
- return buildIntent("refactor", normalized, "Behavior-preserving structure improvement requested.", requirementsIntent);
96
+ return buildIntent("refactor", normalized, "Behavior-preserving structure improvement requested.", requirementsIntent, activateAutomaticPersonaSkill("refactor", "Behavior-preserving structure improvement requested."));
97
+ }
98
+ const productInterviewStart = isProductDeepInterviewStart(normalized);
99
+ if (productInterviewStart && isProductDiscoverySuppressed(normalized)) {
100
+ return undefined;
101
+ }
102
+ if (productInterviewStart && !isClearDirectImplementationRequest(normalized)) {
103
+ const reason = "Product facts require a one-question interview before technical intake.";
104
+ return buildIntent("product-interview", normalized, reason, undefined, activateAutomaticPersonaSkill("product-interview", reason, productMode));
105
+ }
106
+ if (requirementsIntent !== undefined) {
107
+ return buildIntent("requirements", normalized, requirementsIntent.reason, requirementsIntent, activateAutomaticPersonaSkill("requirements", requirementsIntent.reason));
71
108
  }
72
109
  if (hasProgrammingIntent) {
73
- return buildIntent("programming", normalized, "Direct code creation or edit request detected.", requirementsIntent);
110
+ return buildIntent("programming", normalized, "Direct code creation or edit request detected.", requirementsIntent, activateAutomaticPersonaSkill("programming", "Direct code creation or edit request detected."));
74
111
  }
75
112
  return undefined;
76
113
  }