instar 0.10.3 → 0.10.5

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.
@@ -0,0 +1,117 @@
1
+ #!/bin/bash
2
+ # ── Free-Text Input Guard ─────────────────────────────────────────────
3
+ # PreToolUse hook on AskUserQuestion
4
+ #
5
+ # BLOCKS AskUserQuestion when the question is asking for free-text input
6
+ # like passwords, emails, tokens, or names. These should be collected via
7
+ # plain text output ("Type your password below:") followed by waiting for
8
+ # the user's next message — NOT via AskUserQuestion, which adds confusing
9
+ # multi-choice escape hatches beneath the input field.
10
+ #
11
+ # ALLOWS AskUserQuestion for legitimate multi-choice decisions where the
12
+ # user is choosing between distinct options (e.g., "Bitwarden or Local?").
13
+ #
14
+ # Structure > Willpower: training pressure makes Claude prefer structured
15
+ # tools. Prompt instructions alone cannot reliably prevent this. This hook
16
+ # is the programmatic gate.
17
+ # ──────────────────────────────────────────────────────────────────────
18
+
19
+ INPUT=$(cat)
20
+
21
+ # Use Python for reliable JSON parsing and nuanced pattern detection
22
+ RESULT=$(echo "$INPUT" | python3 -c "
23
+ import sys, json, re
24
+
25
+ try:
26
+ data = json.load(sys.stdin)
27
+ tool_input = data.get('tool_input', {})
28
+ questions = tool_input.get('questions', [])
29
+ except:
30
+ print('allow')
31
+ sys.exit(0)
32
+
33
+ if not questions:
34
+ print('allow')
35
+ sys.exit(0)
36
+
37
+ # Patterns that indicate the question expects the user to TYPE a response
38
+ # These match questions asking for credentials, personal info, or codes
39
+ free_text_patterns = [
40
+ r'\bpassword\b',
41
+ r'\bmaster password\b',
42
+ r'\bpassphrase\b',
43
+ r'\bapi[- _]?key\b',
44
+ r'\baccess[- _]?token\b',
45
+ r'\bauth[- _]?token\b',
46
+ r'\bcredential',
47
+ r'\b2fa\b',
48
+ r'\botp\b',
49
+ r'\bverification code\b',
50
+ r'\bauthenticator\b',
51
+ r'\bone[- ]time',
52
+ # Prompts asking user to enter/type/provide something
53
+ r'enter your ',
54
+ r'type your ',
55
+ r'provide your ',
56
+ r'input your ',
57
+ r'what(\x27s| is) your (email|password|name|token|key|code|address)',
58
+ r'your (bitwarden|master|vault) ',
59
+ ]
60
+
61
+ # Patterns that indicate a legitimate multi-choice DECISION
62
+ # If these match, the question is probably fine for AskUserQuestion
63
+ decision_patterns = [
64
+ r'\bwhich\b',
65
+ r'\bprefer\b',
66
+ r'\bchoose\b',
67
+ r'\bselect\b',
68
+ r'\bpick\b',
69
+ r'\bwant to\b',
70
+ r'\bwould you\b',
71
+ r'\bshould (we|i)\b',
72
+ r'\bhow should\b',
73
+ r'\bwhat (approach|method|option|strategy)\b',
74
+ ]
75
+
76
+ for q in questions:
77
+ text = q.get('question', '').lower()
78
+
79
+ # Check for decision patterns first — these take priority
80
+ is_decision = any(re.search(p, text) for p in decision_patterns)
81
+
82
+ # Check for free-text patterns
83
+ is_free_text = any(re.search(p, text) for p in free_text_patterns)
84
+
85
+ # Block if it looks like free-text AND not clearly a decision
86
+ if is_free_text and not is_decision:
87
+ print('block')
88
+ sys.exit(0)
89
+
90
+ print('allow')
91
+ " 2>/dev/null)
92
+
93
+ if [ "$RESULT" = "block" ]; then
94
+ cat >&2 <<'BLOCKED'
95
+ BLOCKED: AskUserQuestion cannot be used for free-text input.
96
+
97
+ You asked a question that expects the user to TYPE a response (password,
98
+ email, token, name, etc). AskUserQuestion adds multi-choice escape hatches
99
+ beneath the input, creating a confusing UX.
100
+
101
+ CORRECT APPROACH:
102
+ 1. Output the question as plain text (e.g., "What's your Bitwarden master password?")
103
+ 2. STOP — do not call any tool
104
+ 3. Wait for the user's next message — their response IS the answer
105
+
106
+ Example:
107
+ You output: "What's your Bitwarden master password? Type it below."
108
+ User types: their_password_here
109
+ You use that value in your next command.
110
+
111
+ AskUserQuestion is ONLY for multi-choice DECISIONS (pick A or B or C).
112
+ BLOCKED
113
+ exit 2
114
+ fi
115
+
116
+ # Legitimate decision — allow through
117
+ exit 0
@@ -0,0 +1,17 @@
1
+ {
2
+ "hooks": {
3
+ "PreToolUse": [
4
+ {
5
+ "matcher": "AskUserQuestion",
6
+ "hooks": [
7
+ {
8
+ "type": "command",
9
+ "command": "bash $CLAUDE_PROJECT_DIR/.claude/hooks/free-text-guard.sh",
10
+ "blocking": true,
11
+ "timeout": 5000
12
+ }
13
+ ]
14
+ }
15
+ ]
16
+ }
17
+ }
@@ -94,5 +94,6 @@ export declare class PostUpdateMigrator {
94
94
  private getConvergenceCheck;
95
95
  private getScopeCoherenceCollectorHook;
96
96
  private getScopeCoherenceCheckpointHook;
97
+ private getFreeTextGuardHook;
97
98
  }
98
99
  //# sourceMappingURL=PostUpdateMigrator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PostUpdateMigrator.d.ts","sourceRoot":"","sources":["../../src/core/PostUpdateMigrator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAKH,MAAM,WAAW,eAAe;IAC9B,wBAAwB;IACxB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,kCAAkC;IAClC,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,2CAA2C;IAC3C,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,MAAM,CAAiB;gBAEnB,MAAM,EAAE,cAAc;IAIlC;;;OAGG;IACH,OAAO,IAAI,eAAe;IAiB1B;;;OAGG;IACH,OAAO,CAAC,YAAY;IA4EpB;;;OAGG;IACH,OAAO,CAAC,eAAe;IAmQvB;;;OAGG;IACH,OAAO,CAAC,cAAc;IA6CtB;;;OAGG;IACH,OAAO,CAAC,eAAe;IA+HvB;;;OAGG;IACH,OAAO,CAAC,aAAa;IAyDrB;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAUxB,OAAO,CAAC,oBAAoB;IAkC5B;;;OAGG;IACH,cAAc,CAAC,IAAI,EAAE,eAAe,GAAG,qBAAqB,GAAG,yBAAyB,GAAG,mBAAmB,GAAG,wBAAwB,GAAG,8BAA8B,GAAG,2BAA2B,GAAG,4BAA4B,GAAG,MAAM;IAahP,oFAAoF;IACpF,iCAAiC,IAAI,MAAM;IAI3C,6EAA6E;IAC7E,yBAAyB,IAAI,MAAM;IAInC,OAAO,CAAC,mBAAmB;IAkR3B,OAAO,CAAC,wBAAwB;IAmEhC,OAAO,CAAC,2BAA2B;IA0DnC,OAAO,CAAC,yBAAyB;IAgGjC,OAAO,CAAC,qBAAqB;IAyN7B,OAAO,CAAC,uBAAuB;IAgE/B,OAAO,CAAC,2BAA2B;IAiDnC,OAAO,CAAC,iCAAiC;IA6DzC,OAAO,CAAC,4BAA4B;IAyJpC,OAAO,CAAC,sBAAsB;IAyD9B,OAAO,CAAC,iBAAiB;IAwBzB,OAAO,CAAC,mBAAmB;IAqB3B,OAAO,CAAC,8BAA8B;IA4GtC,OAAO,CAAC,+BAA+B;CA0IxC"}
1
+ {"version":3,"file":"PostUpdateMigrator.d.ts","sourceRoot":"","sources":["../../src/core/PostUpdateMigrator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAKH,MAAM,WAAW,eAAe;IAC9B,wBAAwB;IACxB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,kCAAkC;IAClC,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,2CAA2C;IAC3C,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,MAAM,CAAiB;gBAEnB,MAAM,EAAE,cAAc;IAIlC;;;OAGG;IACH,OAAO,IAAI,eAAe;IAiB1B;;;OAGG;IACH,OAAO,CAAC,YAAY;IAmFpB;;;OAGG;IACH,OAAO,CAAC,eAAe;IAmQvB;;;OAGG;IACH,OAAO,CAAC,cAAc;IA6CtB;;;OAGG;IACH,OAAO,CAAC,eAAe;IA+HvB;;;OAGG;IACH,OAAO,CAAC,aAAa;IAyDrB;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAUxB,OAAO,CAAC,oBAAoB;IAkC5B;;;OAGG;IACH,cAAc,CAAC,IAAI,EAAE,eAAe,GAAG,qBAAqB,GAAG,yBAAyB,GAAG,mBAAmB,GAAG,wBAAwB,GAAG,8BAA8B,GAAG,2BAA2B,GAAG,4BAA4B,GAAG,MAAM;IAahP,oFAAoF;IACpF,iCAAiC,IAAI,MAAM;IAI3C,6EAA6E;IAC7E,yBAAyB,IAAI,MAAM;IAInC,OAAO,CAAC,mBAAmB;IAkR3B,OAAO,CAAC,wBAAwB;IAmEhC,OAAO,CAAC,2BAA2B;IA0DnC,OAAO,CAAC,yBAAyB;IAgGjC,OAAO,CAAC,qBAAqB;IAyN7B,OAAO,CAAC,uBAAuB;IAgE/B,OAAO,CAAC,2BAA2B;IAiDnC,OAAO,CAAC,iCAAiC;IA6DzC,OAAO,CAAC,4BAA4B;IAyJpC,OAAO,CAAC,sBAAsB;IAyD9B,OAAO,CAAC,iBAAiB;IAwBzB,OAAO,CAAC,mBAAmB;IAqB3B,OAAO,CAAC,8BAA8B;IA4GtC,OAAO,CAAC,+BAA+B;IA2IvC,OAAO,CAAC,oBAAoB;CAM7B"}
@@ -120,6 +120,13 @@ export class PostUpdateMigrator {
120
120
  catch (err) {
121
121
  result.errors.push(`scope-coherence-checkpoint.js: ${err instanceof Error ? err.message : String(err)}`);
122
122
  }
123
+ try {
124
+ fs.writeFileSync(path.join(hooksDir, 'free-text-guard.sh'), this.getFreeTextGuardHook(), { mode: 0o755 });
125
+ result.upgraded.push('hooks/free-text-guard.sh (blocks AskUserQuestion for passwords/credentials)');
126
+ }
127
+ catch (err) {
128
+ result.errors.push(`free-text-guard.sh: ${err instanceof Error ? err.message : String(err)}`);
129
+ }
123
130
  }
124
131
  /**
125
132
  * Patch CLAUDE.md with any new sections that don't exist yet.
@@ -2058,5 +2065,11 @@ process.stdin.on('end', async () => {
2058
2065
  });
2059
2066
  `;
2060
2067
  }
2068
+ getFreeTextGuardHook() {
2069
+ // Read the hook from the templates directory instead of inline generation.
2070
+ // This avoids multi-layer escaping issues (TypeScript -> bash -> Python -> regex).
2071
+ const hookPath = path.join(path.dirname(new URL(import.meta.url).pathname), '..', 'templates', 'hooks', 'free-text-guard.sh');
2072
+ return fs.readFileSync(hookPath, 'utf-8');
2073
+ }
2061
2074
  }
2062
2075
  //# sourceMappingURL=PostUpdateMigrator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PostUpdateMigrator.js","sourceRoot":"","sources":["../../src/core/PostUpdateMigrator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAmB7B,MAAM,OAAO,kBAAkB;IACrB,MAAM,CAAiB;IAE/B,YAAY,MAAsB;QAChC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;;;OAGG;IACH,OAAO;QACL,MAAM,MAAM,GAAoB;YAC9B,QAAQ,EAAE,EAAE;YACZ,OAAO,EAAE,EAAE;YACX,MAAM,EAAE,EAAE;SACX,CAAC;QAEF,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAC1B,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QAC7B,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QAC5B,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QAC7B,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAC3B,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;QAE9B,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;OAGG;IACK,YAAY,CAAC,MAAuB;QAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC1D,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAE5C,IAAI,CAAC;YACH,iEAAiE;YACjE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,kBAAkB,CAAC,EAAE,IAAI,CAAC,mBAAmB,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YACvG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAC;QACxE,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,qBAAqB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC9F,CAAC;QAED,IAAI,CAAC;YACH,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,4BAA4B,CAAC,EAAE,IAAI,CAAC,wBAAwB,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YACtH,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;QAC3D,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,+BAA+B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACxG,CAAC;QAED,IAAI,CAAC;YACH,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,+BAA+B,CAAC,EAAE,IAAI,CAAC,2BAA2B,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YAC5H,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;QAC9D,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,kCAAkC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC3G,CAAC;QAED,IAAI,CAAC;YACH,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,wBAAwB,CAAC,EAAE,IAAI,CAAC,qBAAqB,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YAC/G,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;QACvD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,2BAA2B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACpG,CAAC;QAED,IAAI,CAAC;YACH,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,4BAA4B,CAAC,EAAE,IAAI,CAAC,4BAA4B,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YAC1H,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAC;QAClF,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,+BAA+B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACxG,CAAC;QAED,IAAI,CAAC;YACH,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,sBAAsB,CAAC,EAAE,IAAI,CAAC,uBAAuB,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YAC/G,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAC;QAC/E,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,yBAAyB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClG,CAAC;QAED,IAAI,CAAC;YACH,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,2BAA2B,CAAC,EAAE,IAAI,CAAC,2BAA2B,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YACxH,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAC;QAChF,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,8BAA8B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACvG,CAAC;QAED,IAAI,CAAC;YACH,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,iCAAiC,CAAC,EAAE,IAAI,CAAC,iCAAiC,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YACpI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAC;QACrF,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,oCAAoC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC7G,CAAC;QAED,IAAI,CAAC;YACH,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,8BAA8B,CAAC,EAAE,IAAI,CAAC,8BAA8B,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YAC9H,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,oEAAoE,CAAC,CAAC;QAC7F,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,iCAAiC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC1G,CAAC;QAED,IAAI,CAAC;YACH,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,+BAA+B,CAAC,EAAE,IAAI,CAAC,+BAA+B,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YAChI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,iEAAiE,CAAC,CAAC;QAC1F,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,kCAAkC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC3G,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,eAAe,CAAC,MAAuB;QAC7C,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;QACpE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YACjC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAC;YAC5E,OAAO;QACT,CAAC;QAED,IAAI,OAAe,CAAC;QACpB,IAAI,CAAC;YACH,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QACnD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC1F,OAAO;QACT,CAAC;QAED,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;QAE9B,yBAAyB;QACzB,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;YAC9E,MAAM,OAAO,GAAG;;;;;;wBAME,IAAI;;;;CAI3B,CAAC;YACI,sFAAsF;YACtF,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,mCAAmC,CAAC,CAAC;YACzE,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC;YACtE,MAAM,MAAM,GAAG,WAAW,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAExF,IAAI,MAAM,IAAI,CAAC,EAAE,CAAC;gBAChB,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG,OAAO,GAAG,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAC9E,CAAC;iBAAM,CAAC;gBACN,OAAO,IAAI,IAAI,GAAG,OAAO,CAAC;YAC5B,CAAC;YACD,OAAO,GAAG,IAAI,CAAC;YACf,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;QAClE,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;QAC3E,CAAC;QAED,gFAAgF;QAChF,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAC1G,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;CAqBrB,CAAC;YACI,OAAO,IAAI,IAAI,GAAG,OAAO,CAAC;YAC1B,OAAO,GAAG,IAAI,CAAC;YACf,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;QAClE,CAAC;QAED,+EAA+E;QAC/E,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAC,EAAE,CAAC;YACnH,MAAM,QAAQ,GAAG,gbAAgb,CAAC;YAClc,4DAA4D;YAC5D,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;YACtD,IAAI,QAAQ,IAAI,CAAC,EAAE,CAAC;gBAClB,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,GAAG,EAAE,CAAC,CAAC;gBAC3D,IAAI,WAAW,IAAI,CAAC,EAAE,CAAC;oBACrB,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,GAAG,CAAC,CAAC,GAAG,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC;oBACxF,OAAO,GAAG,IAAI,CAAC;oBACf,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,6DAA6D,CAAC,CAAC;gBACtF,CAAC;YACH,CAAC;QACH,CAAC;QAED,4EAA4E;QAC5E,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YAClG,MAAM,UAAU,GAAG,6TAA6T,CAAC;YACjV,2CAA2C;YAC3C,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;YACxD,IAAI,QAAQ,IAAI,CAAC,EAAE,CAAC;gBAClB,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,GAAG,UAAU,GAAG,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBACnF,OAAO,GAAG,IAAI,CAAC;gBACf,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAC;YACxF,CAAC;QACH,CAAC;QAED,kCAAkC;QAClC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YAC5E,MAAM,OAAO,GAAG;;4CAEsB,IAAI;yCACP,IAAI;kCACX,IAAI;2CACK,IAAI;8CACD,IAAI;;;;;oCAKd,IAAI;;;;;CAKvC,CAAC;YACI,4DAA4D;YAC5D,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;YAClD,IAAI,UAAU,IAAI,CAAC,EAAE,CAAC;gBACpB,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,GAAG,OAAO,GAAG,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YACtF,CAAC;iBAAM,CAAC;gBACN,OAAO,IAAI,IAAI,GAAG,OAAO,CAAC;YAC5B,CAAC;YACD,OAAO,GAAG,IAAI,CAAC;YACf,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,6DAA6D,CAAC,CAAC;QACtF,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;QAC3E,CAAC;QAED,oBAAoB;QACpB,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YAC1E,MAAM,OAAO,GAAG;;8BAEQ,IAAI;;;;4OAI0M,IAAI;CAC/O,CAAC;YACI,uDAAuD;YACvD,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;YACpD,IAAI,YAAY,IAAI,CAAC,EAAE,CAAC;gBACtB,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,GAAG,OAAO,GAAG,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YAC1F,CAAC;iBAAM,CAAC;gBACN,OAAO,IAAI,IAAI,GAAG,OAAO,CAAC;YAC5B,CAAC;YACD,OAAO,GAAG,IAAI,CAAC;YACf,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;QAC7D,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;QACtE,CAAC;QAED,yEAAyE;QACzE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC;YACjF,MAAM,OAAO,GAAG;;;;;0DAKoC,IAAI;;;+DAGC,IAAI;;;0CAGzB,IAAI;4CACF,IAAI;;;iCAGf,IAAI;qCACA,IAAI;CACxC,CAAC;YACI,kCAAkC;YAClC,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;YACpD,IAAI,YAAY,IAAI,CAAC,EAAE,CAAC;gBACtB,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,GAAG,OAAO,GAAG,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YAC1F,CAAC;iBAAM,CAAC;gBACN,OAAO,IAAI,IAAI,GAAG,OAAO,CAAC;YAC5B,CAAC;YACD,OAAO,GAAG,IAAI,CAAC;YACf,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;QAClE,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;QAC3E,CAAC;QAED,oFAAoF;QACpF,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,2BAA2B,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAC,EAAE,CAAC;YAChG,MAAM,OAAO,GAAG;;;;;;;;6EAQuD,IAAI;;;;;;;;8MAQ6H,IAAI;;;gDAGlK,IAAI;8CACN,IAAI;uCACX,IAAI;+CACI,IAAI;CAClD,CAAC;YACI,kCAAkC;YAClC,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;YACpD,IAAI,YAAY,IAAI,CAAC,EAAE,CAAC;gBACtB,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,GAAG,OAAO,GAAG,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YAC1F,CAAC;iBAAM,CAAC;gBACN,OAAO,IAAI,IAAI,GAAG,OAAO,CAAC;YAC5B,CAAC;YACD,OAAO,GAAG,IAAI,CAAC;YACf,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;QAC7E,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,8DAA8D,CAAC,CAAC;QACtF,CAAC;QAED,wEAAwE;QACxE,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;YAC5G,MAAM,OAAO,GAAG;;;;;;;;;;CAUrB,CAAC;YACI,OAAO,IAAI,IAAI,GAAG,OAAO,CAAC;YAC1B,OAAO,GAAG,IAAI,CAAC;YACf,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;QACtE,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC;YAC7E,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAC;QAC/E,CAAC;QAED,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC;gBACH,EAAE,CAAC,aAAa,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;YAC1C,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,oBAAoB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC7F,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,cAAc,CAAC,MAAuB;QAC5C,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QAC3E,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAE9C,4EAA4E;QAC5E,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YAC5B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAC;YAC9D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC/B,IAAI,CAAC;oBACH,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,sBAAsB,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;oBAC7E,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;gBAC9E,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,sBAAsB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAC/F,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC;YACpE,CAAC;QACH,CAAC;QAED,uCAAuC;QACvC,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,oBAAoB,CAAC,CAAC;QACjE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YACjC,IAAI,CAAC;gBACH,EAAE,CAAC,aAAa,CAAC,YAAY,EAAE,IAAI,CAAC,iBAAiB,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;gBAC1E,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;YACrD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,uBAAuB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChG,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;QACrE,CAAC;QAED,oFAAoF;QACpF,0EAA0E;QAC1E,8EAA8E;QAC9E,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QACpE,EAAE,CAAC,SAAS,CAAC,gBAAgB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACpD,IAAI,CAAC;YACH,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,sBAAsB,CAAC,EAAE,IAAI,CAAC,mBAAmB,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YACnH,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,2DAA2D,CAAC,CAAC;QACpF,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,yBAAyB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClG,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,eAAe,CAAC,MAAuB;QAC7C,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;QACnF,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YACjC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAC;YACxF,OAAO;QACT,CAAC;QAED,IAAI,QAAiC,CAAC;QACtC,IAAI,CAAC;YACH,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC;QAChE,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,uBAAuB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC9F,OAAO;QACT,CAAC;QAED,IAAI,OAAO,GAAG,KAAK,CAAC;QAEpB,iFAAiF;QACjF,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;YACzB,QAAQ,CAAC,UAAU,GAAG,EAAE,CAAC;QAC3B,CAAC;QACD,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAqC,CAAC;QAClE,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;YAC3B,UAAU,CAAC,UAAU,GAAG;gBACtB,OAAO,EAAE,KAAK;gBACd,IAAI,EAAE,CAAC,IAAI,EAAE,wBAAwB,CAAC;aACvC,CAAC;YACF,OAAO,GAAG,IAAI,CAAC;YACf,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;QAC7E,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAC;QAClF,CAAC;QAED,4EAA4E;QAC5E,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;YACpB,QAAQ,CAAC,KAAK,GAAG,EAAE,CAAC;QACtB,CAAC;QACD,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAkC,CAAC;QAE1D,MAAM,gBAAgB,GAAG;YACvB,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,qCAAqC;YAC9C,OAAO,EAAE,CAAC;SACX,CAAC;QAEF,oCAAoC;QACpC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;YACxB,KAAK,CAAC,YAAY,GAAG;gBACnB,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,gBAAgB,CAAC,EAAE;gBACjD,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,gBAAgB,CAAC,EAAE;gBAChD,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,gBAAgB,CAAC,EAAE;aAClD,CAAC;YACF,OAAO,GAAG,IAAI,CAAC;YACf,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,0EAA0E,CAAC,CAAC;QACnG,CAAC;QAED,yDAAyD;QACzD,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;YACtB,KAAK,CAAC,UAAU,GAAG,EAAE,CAAC;QACxB,CAAC;QACD,MAAM,UAAU,GAAG,KAAK,CAAC,UAA4D,CAAC;QACtF,MAAM,aAAa,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC;QACpE,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,UAAU,CAAC,IAAI,CAAC;gBACd,OAAO,EAAE,SAAS;gBAClB,KAAK,EAAE,CAAC;wBACN,IAAI,EAAE,SAAS;wBACf,OAAO,EAAE,+CAA+C;wBACxD,QAAQ,EAAE,IAAI;wBACd,OAAO,EAAE,IAAI;qBACd,CAAC;aACH,CAAC,CAAC;YACH,OAAO,GAAG,IAAI,CAAC;YACf,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,+EAA+E,CAAC,CAAC;QACxG,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAC;QACvF,CAAC;QAED,+EAA+E;QAC/E,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;YACtB,MAAM,WAAW,GAAG,KAAK,CAAC,WAA+E,CAAC;YAC1G,MAAM,QAAQ,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;gBACtC,IAAI,CAAC,CAAC,OAAO,KAAK,EAAE,IAAI,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC;oBACpF,OAAO,KAAK,CAAC;gBACf,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,CAAC;YACH,IAAI,QAAQ,CAAC,MAAM,KAAK,WAAW,CAAC,MAAM,EAAE,CAAC;gBAC3C,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC1B,OAAO,KAAK,CAAC,WAAW,CAAC;gBAC3B,CAAC;qBAAM,CAAC;oBACN,KAAK,CAAC,WAAW,GAAG,QAAQ,CAAC;gBAC/B,CAAC;gBACD,OAAO,GAAG,IAAI,CAAC;gBACf,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,sEAAsE,CAAC,CAAC;YAC/F,CAAC;QACH,CAAC;QAED,qEAAqE;QACrE,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;YACvB,MAAM,YAAY,GAAG,KAAK,CAAC,YAAgF,CAAC;YAC5G,MAAM,QAAQ,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;gBACvC,IAAI,CAAC,CAAC,OAAO,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,wBAAwB,CAAC,CAAC,EAAE,CAAC;oBACjG,OAAO,KAAK,CAAC;gBACf,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,CAAC;YACH,IAAI,QAAQ,CAAC,MAAM,KAAK,YAAY,CAAC,MAAM,EAAE,CAAC;gBAC5C,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC1B,OAAO,KAAK,CAAC,YAAY,CAAC;gBAC5B,CAAC;qBAAM,CAAC;oBACN,KAAK,CAAC,YAAY,GAAG,QAAQ,CAAC;gBAChC,CAAC;gBACD,OAAO,GAAG,IAAI,CAAC;gBACf,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,mFAAmF,CAAC,CAAC;YAC5G,CAAC;QACH,CAAC;QAED,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC;gBACH,EAAE,CAAC,aAAa,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YACpE,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,wBAAwB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACjG,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,aAAa,CAAC,MAAuB;QAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;QAClE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;YAC/C,OAAO;QACT,CAAC;QAED,IAAI,MAA+B,CAAC;QACpC,IAAI,CAAC;YACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;QAC5D,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,qBAAqB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC5F,OAAO;QACT,CAAC;QAED,IAAI,OAAO,GAAG,KAAK,CAAC;QAEpB,yEAAyE;QACzE,+EAA+E;QAC/E,IAAI,CAAC,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;YAC7C,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,cAAc;YAC/E,MAAM,CAAC,YAAY,GAAG,GAAG,CAAC;YAC1B,OAAO,GAAG,IAAI,CAAC;YACf,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,yCAAyC,GAAG,GAAG,CAAC,CAAC;QACxE,CAAC;aAAM,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;YAC/B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;QAChE,CAAC;QAED,0DAA0D;QAC1D,sFAAsF;QACtF,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,CAAC;YAC/B,MAAM,CAAC,kBAAkB,GAAG;gBAC1B,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;gBAC3B,QAAQ,EAAE,EAAE;gBACZ,gBAAgB,EAAE,EAAE;gBACpB,KAAK,EAAE;oBACL,KAAK,EAAE,YAAY;oBACnB,kBAAkB,EAAE,KAAK;oBACzB,kBAAkB,EAAE,EAAE;iBACvB;aACF,CAAC;YACF,OAAO,GAAG,IAAI,CAAC;YACf,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAC;QAC3F,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;QAC5E,CAAC;QAED,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC;gBACH,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAChE,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,sBAAsB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC/F,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,gBAAgB,CAAC,MAAuB;QAC9C,+BAA+B;QAC/B,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QACzE,IAAI,CAAC,oBAAoB,CAAC,gBAAgB,EAAE,wBAAwB,EAAE,MAAM,EAAE,oBAAoB,CAAC,CAAC;QAEpG,yEAAyE;QACzE,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QACtE,IAAI,CAAC,oBAAoB,CAAC,eAAe,EAAE,gBAAgB,EAAE,MAAM,EAAE,oBAAoB,CAAC,CAAC;IAC7F,CAAC;IAEO,oBAAoB,CAAC,aAAqB,EAAE,KAAa,EAAE,MAAuB,EAAE,KAAa;QACvG,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;YAClC,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;YACxD,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC7B,OAAO;YACT,CAAC;YAED,4DAA4D;YAC5D,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAClC,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;gBACxC,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,KAAK;oBAAE,OAAO,KAAK,CAAC;gBACxC,oGAAoG;gBACpG,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,KAAK;oBACtD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,2BAA2B,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;oBACnE,OAAO,KAAK,CAAC;gBACf,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,CAAC;YAEH,0CAA0C;YAC1C,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YAC/D,EAAE,CAAC,aAAa,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;YACzC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,KAAK,gBAAgB,KAAK,mCAAmC,CAAC,CAAC;QACzF,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,KAAK,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtF,CAAC;IACH,CAAC;IAED,sEAAsE;IAEtE;;;OAGG;IACH,cAAc,CAAC,IAAwN;QACrO,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,eAAe,CAAC,CAAC,OAAO,IAAI,CAAC,mBAAmB,EAAE,CAAC;YACxD,KAAK,qBAAqB,CAAC,CAAC,OAAO,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAChE,KAAK,yBAAyB,CAAC,CAAC,OAAO,IAAI,CAAC,4BAA4B,EAAE,CAAC;YAC3E,KAAK,mBAAmB,CAAC,CAAC,OAAO,IAAI,CAAC,uBAAuB,EAAE,CAAC;YAChE,KAAK,wBAAwB,CAAC,CAAC,OAAO,IAAI,CAAC,2BAA2B,EAAE,CAAC;YACzE,KAAK,8BAA8B,CAAC,CAAC,OAAO,IAAI,CAAC,iCAAiC,EAAE,CAAC;YACrF,KAAK,2BAA2B,CAAC,CAAC,OAAO,IAAI,CAAC,8BAA8B,EAAE,CAAC;YAC/E,KAAK,4BAA4B,CAAC,CAAC,OAAO,IAAI,CAAC,+BAA+B,EAAE,CAAC;QACnF,CAAC;IACH,CAAC;IAED,oFAAoF;IACpF,iCAAiC;QAC/B,OAAO,IAAI,CAAC,2BAA2B,EAAE,CAAC;IAC5C,CAAC;IAED,6EAA6E;IAC7E,yBAAyB;QACvB,OAAO,IAAI,CAAC,mBAAmB,EAAE,CAAC;IACpC,CAAC;IAEO,mBAAmB;QACzB,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8QV,CAAC;IACA,CAAC;IAEO,wBAAwB;QAC9B,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+DV,CAAC;IACA,CAAC;IAEO,2BAA2B;QACjC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsDV,CAAC;IACA,CAAC;IAEO,yBAAyB;QAC/B,0DAA0D;QAC1D,kEAAkE;QAClE,MAAM,MAAM,GAAG;YACb,aAAa;YACb,oFAAoF;YACpF,oEAAoE;YACpE,GAAG;YACH,6EAA6E;YAC7E,8EAA8E;YAC9E,GAAG;YACH,2CAA2C;YAC3C,GAAG;YACH,+EAA+E;YAC/E,wEAAwE;YACxE,sEAAsE;YACtE,gFAAgF;YAChF,wEAAwE;YACxE,2EAA2E;YAC3E,GAAG;YACH,sEAAsE;YACtE,8DAA8D;YAC9D,EAAE;YACF,gBAAgB;YAChB,WAAW;YACX,eAAe;YACf,EAAE;YACF,mFAAmF;YACnF,iNAAiN;YACjN,6JAA6J;YAC7J,oCAAoC;YACpC,IAAI;YACJ,EAAE;YACF,8EAA8E;YAC9E,kMAAkM;YAClM,oNAAoN;YACpN,oCAAoC;YACpC,IAAI;YACJ,EAAE;YACF,gEAAgE;YAChE,+OAA+O;YAC/O,yMAAyM;YACzM,oCAAoC;YACpC,IAAI;YACJ,EAAE;YACF,4FAA4F;YAC5F,4OAA4O;YAC5O,uMAAuM;YACvM,oCAAoC;YACpC,IAAI;YACJ,EAAE;YACF,0DAA0D;YAC1D,iUAAiU;YACjU,uNAAuN;YACvN,oCAAoC;YACpC,IAAI;YACJ,EAAE;YACF,sEAAsE;YACtE,0EAA0E;YAC1E,wFAAwF;YACxF,2DAA2D,GAAG,GAAG,GAAG,4BAA4B;YAChG,gCAAgC;YAChC,sBAAsB;YACtB,8BAA8B;YAC9B,+BAA+B;YAC/B,uCAAuC;YACvC,wrBAAwrB;YACxrB,gBAAgB;YAChB,QAAQ;YACR,iDAAiD;YACjD,2BAA2B;YAC3B,EAAE;YACF,sCAAsC;YACtC,qVAAqV;YACrV,sCAAsC;YACtC,MAAM;YACN,IAAI;YACJ,EAAE;YACF,kBAAkB;YAClB,qCAAqC;YACrC,mEAAmE;YACnE,WAAW;YACX,mCAAmC;YACnC,uBAAuB;YACvB,aAAa;YACb,QAAQ;YACR,8EAA8E;YAC9E,wCAAwC;YACxC,UAAU;YACV,MAAM;YACN,UAAU;YACV,IAAI;SACL,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACb,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,qBAAqB;QAC3B,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqNV,CAAC;IACA,CAAC;IAEO,uBAAuB;QAC7B,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4DV,CAAC;IACA,CAAC;IAEO,2BAA2B;QACjC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6CV,CAAC;IACA,CAAC;IAEO,iCAAiC;QACvC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyDV,CAAC;IACA,CAAC;IAEO,4BAA4B;QAClC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqJV,CAAC;IACA,CAAC;IAEO,sBAAsB;QAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;QAC9B,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBA8Ba,IAAI;;;;;;;;;;;;;;;;;;;;;;CAsB3B,CAAC;IACA,CAAC;IAEO,iBAAiB;QACvB,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;QAC9B,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;QAC5C,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACxE,OAAO;;kCAEuB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,oCAAoC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC;;QAExH,IAAI;kBACM,WAAW;eACd,iBAAiB;;;;;;;;;;;CAW/B,CAAC;IACA,CAAC;IAEO,mBAAmB;QACzB,oEAAoE;QACpE,+EAA+E;QAC/E,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;QAC/D,uEAAuE;QACvE,kEAAkE;QAClE,MAAM,UAAU,GAAG;YACjB,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,sBAAsB,CAAC;YAC1E,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,sBAAsB,CAAC;SACxF,CAAC;QACF,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACnC,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC7B,OAAO,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAC7C,CAAC;QACH,CAAC;QACD,yDAAyD;QACzD,OAAO,IAAI,CAAC,yBAAyB,EAAE,CAAC;IAC1C,CAAC;IAED,qEAAqE;IAE7D,8BAA8B;QACpC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;QAC9B,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuGV,CAAC;IACA,CAAC;IAEO,+BAA+B;QACrC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;QAC9B,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6CAsCkC,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgGhD,CAAC;IACA,CAAC;CACF"}
1
+ {"version":3,"file":"PostUpdateMigrator.js","sourceRoot":"","sources":["../../src/core/PostUpdateMigrator.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "instar",
3
- "version": "0.10.3",
3
+ "version": "0.10.5",
4
4
  "description": "Persistent autonomy infrastructure for AI agents",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -53,7 +53,9 @@
53
53
  "upgrades",
54
54
  "src/templates",
55
55
  ".claude/skills/setup-wizard",
56
- ".claude/skills/secret-setup"
56
+ ".claude/skills/secret-setup",
57
+ ".claude/hooks",
58
+ ".claude/settings.json"
57
59
  ],
58
60
  "license": "MIT",
59
61
  "engines": {
@@ -0,0 +1,96 @@
1
+ #!/bin/bash
2
+ # ── Free-Text Input Guard ─────────────────────────────────────────────
3
+ # PreToolUse hook on AskUserQuestion
4
+ #
5
+ # BLOCKS AskUserQuestion when the question is asking for free-text input
6
+ # like passwords, emails, tokens, or names. These should be collected via
7
+ # plain text output followed by waiting for the user's next message — NOT
8
+ # via AskUserQuestion, which adds confusing multi-choice escape hatches.
9
+ #
10
+ # ALLOWS AskUserQuestion for legitimate multi-choice decisions.
11
+ #
12
+ # Structure > Willpower: training pressure makes Claude prefer structured
13
+ # tools. Prompt instructions alone cannot reliably prevent this.
14
+ # ──────────────────────────────────────────────────────────────────────
15
+
16
+ INPUT=$(cat)
17
+
18
+ RESULT=$(echo "$INPUT" | python3 -c "
19
+ import sys, json, re
20
+
21
+ try:
22
+ data = json.load(sys.stdin)
23
+ tool_input = data.get('tool_input', {})
24
+ questions = tool_input.get('questions', [])
25
+ except:
26
+ print('allow')
27
+ sys.exit(0)
28
+
29
+ if not questions:
30
+ print('allow')
31
+ sys.exit(0)
32
+
33
+ free_text_patterns = [
34
+ r'\bpassword\b',
35
+ r'\bmaster password\b',
36
+ r'\bpassphrase\b',
37
+ r'\bapi[- _]?key\b',
38
+ r'\baccess[- _]?token\b',
39
+ r'\bauth[- _]?token\b',
40
+ r'\bcredential',
41
+ r'\b2fa\b',
42
+ r'\botp\b',
43
+ r'\bverification code\b',
44
+ r'\bauthenticator\b',
45
+ r'\bone[- ]time',
46
+ r'enter your ',
47
+ r'type your ',
48
+ r'provide your ',
49
+ r'input your ',
50
+ r'what(\x27s| is) your (email|password|name|token|key|code|address)',
51
+ r'your (bitwarden|master|vault) ',
52
+ ]
53
+
54
+ decision_patterns = [
55
+ r'\bwhich\b',
56
+ r'\bprefer\b',
57
+ r'\bchoose\b',
58
+ r'\bselect\b',
59
+ r'\bpick\b',
60
+ r'\bwant to\b',
61
+ r'\bwould you\b',
62
+ r'\bshould (we|i)\b',
63
+ r'\bhow should\b',
64
+ r'\bwhat (approach|method|option|strategy)\b',
65
+ ]
66
+
67
+ for q in questions:
68
+ text = q.get('question', '').lower()
69
+ is_decision = any(re.search(p, text) for p in decision_patterns)
70
+ is_free_text = any(re.search(p, text) for p in free_text_patterns)
71
+ if is_free_text and not is_decision:
72
+ print('block')
73
+ sys.exit(0)
74
+
75
+ print('allow')
76
+ " 2>/dev/null)
77
+
78
+ if [ "$RESULT" = "block" ]; then
79
+ cat >&2 <<'BLOCKED'
80
+ BLOCKED: AskUserQuestion cannot be used for free-text input.
81
+
82
+ You asked a question that expects the user to TYPE a response (password,
83
+ email, token, name, etc). AskUserQuestion adds multi-choice escape hatches
84
+ beneath the input, creating a confusing UX.
85
+
86
+ CORRECT APPROACH:
87
+ 1. Output the question as plain text
88
+ 2. STOP — do not call any tool
89
+ 3. Wait for the user's next message — their response IS the answer
90
+
91
+ AskUserQuestion is ONLY for multi-choice DECISIONS (pick A or B or C).
92
+ BLOCKED
93
+ exit 2
94
+ fi
95
+
96
+ exit 0
@@ -25,6 +25,17 @@
25
25
  "timeout": 5000
26
26
  }
27
27
  ]
28
+ },
29
+ {
30
+ "matcher": "AskUserQuestion",
31
+ "hooks": [
32
+ {
33
+ "type": "command",
34
+ "command": "bash .instar/hooks/free-text-guard.sh",
35
+ "blocking": true,
36
+ "timeout": 5000
37
+ }
38
+ ]
28
39
  }
29
40
  ],
30
41
  "SessionStart": [
@@ -0,0 +1,26 @@
1
+ # Upgrade Guide — v0.10.4
2
+
3
+ <!-- bump: patch -->
4
+
5
+ ## What Changed
6
+
7
+ Added a `PreToolUse` hook that structurally blocks `AskUserQuestion` when the question asks for free-text input (passwords, emails, tokens, API keys, 2FA codes). The hook uses Python-based pattern detection to distinguish between:
8
+
9
+ - **Free-text prompts** (blocked): "What's your password?", "Enter your API key", "Provide your email"
10
+ - **Multi-choice decisions** (allowed): "Which backend would you prefer?", "Should I install Telegram?"
11
+
12
+ When blocked, Claude receives a clear message telling it to use plain text output instead and wait for the user's next message. This enforces the "no AskUserQuestion for passwords" rule that prompt instructions alone could not reliably enforce.
13
+
14
+ The hook is installed in two places:
15
+ 1. `.claude/settings.json` + `.claude/hooks/free-text-guard.sh` in the Instar package root (active during setup wizard)
16
+ 2. `settings-template.json` + `PostUpdateMigrator` (installed in all agent projects on init/update)
17
+
18
+ ## What to Tell Your User
19
+
20
+ - **Cleaner setup experience**: "Password and credential prompts during setup are smoother now — no more confusing multi-choice menus when you just need to type something."
21
+
22
+ ## Summary of New Capabilities
23
+
24
+ | Capability | How to Use |
25
+ |-----------|-----------|
26
+ | Free-text input guard hook | Automatic — blocks AskUserQuestion misuse for credentials |
@@ -0,0 +1,19 @@
1
+ # Upgrade Guide — v0.10.5
2
+
3
+ <!-- bump: patch -->
4
+
5
+ ## What Changed
6
+
7
+ Supersedes v0.10.4 (which was published with a now-reverted approach). This version adds a PreToolUse hook that structurally blocks `AskUserQuestion` when the question asks for free-text input (passwords, emails, tokens, API keys, 2FA codes). Multi-choice decisions pass through normally.
8
+
9
+ When blocked, Claude receives a clear message to use plain text output instead and wait for the user's next message. The v0.10.4 approach of removing the Claude Code session entirely was reverted — the conversational setup wizard remains, now with a structural guard preventing the specific misuse pattern.
10
+
11
+ ## What to Tell Your User
12
+
13
+ - **Cleaner setup experience**: "Password and credential prompts during setup are smoother now — no more confusing multi-choice menus when you just need to type something."
14
+
15
+ ## Summary of New Capabilities
16
+
17
+ | Capability | How to Use |
18
+ |-----------|-----------|
19
+ | Free-text input guard hook | Automatic — blocks AskUserQuestion misuse for credentials |