@windyroad/architect 0.14.0-preview.512 → 0.14.1-preview.514

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.
@@ -123,5 +123,5 @@
123
123
  }
124
124
  },
125
125
  "name": "wr-architect",
126
- "version": "0.14.0"
126
+ "version": "0.14.1"
127
127
  }
@@ -36,10 +36,17 @@
36
36
  # Exported functions:
37
37
  # emit_stderr_advisory <skill> <field> <value> <source> [reversibility]
38
38
  # derive_kebab_slug <description> [max_tokens=8]
39
- # lexical_classify_two_sided <text> <side_a_patterns_var> <side_b_patterns_var>
40
39
  # risk_policy_matrix_lookup <text> <impact_high> <impact_mod> <impact_low>
41
40
  # <likelihood_high> <likelihood_med> <likelihood_low>
42
41
  #
42
+ # RETIRED 2026-06-02 (P287): lexical_classify_two_sided was the two-sided
43
+ # binary classifier used exclusively by capture-problem Step 1.5 Type
44
+ # classification (technical vs user-business). With the type axis retired
45
+ # per twice-confirmed user direction, the function has no remaining
46
+ # consumer and was removed. The slug + advisory + matrix helpers stay —
47
+ # they serve manage-incident severity, manage-problem priority, and
48
+ # create-adr title derivation.
49
+ #
43
50
  # @adr ADR-002 (Monorepo per-plugin packages — architecture context for ADR-017)
44
51
  # @adr ADR-017 (Shared code duplicated into per-package lib/ kept in sync)
45
52
  # @adr ADR-044 (Decision-Delegation Contract — derive-first framework boundary)
@@ -105,60 +112,6 @@ derive_kebab_slug() {
105
112
  | paste -sd '-' -
106
113
  }
107
114
 
108
- # ---------------------------------------------------------------------------
109
- # lexical_classify_two_sided — two-sided binary lexical classifier.
110
- #
111
- # Used by capture-problem Step 1.5 Type classification (technical vs
112
- # user-business). Callers pass description text plus two regex pattern
113
- # arrays (by name); helper counts hits per side and echoes one of:
114
- #
115
- # SIDE_A_UNAMBIGUOUS|<matched signals (comma-separated)>
116
- # ≥1 side-A signal hit AND 0 side-B signals hit.
117
- # SIDE_B_UNAMBIGUOUS|<matched signals (comma-separated)>
118
- # 0 side-A signals hit AND ≥1 side-B signal hit.
119
- # AMBIGUOUS|<a=N b=N>
120
- # Mixed (both sides matched) OR zero (neither side matched).
121
- #
122
- # Caller is responsible for:
123
- # - Mapping SIDE_A/SIDE_B to its domain values (e.g. technical / user-business).
124
- # - Calling emit_stderr_advisory on the unambiguous path.
125
- # - Firing AskUserQuestion on the AMBIGUOUS path (ADR-044 category-5 taste fallback).
126
- # ---------------------------------------------------------------------------
127
- lexical_classify_two_sided() {
128
- local description="$1"
129
- local -n _side_a_patterns_ref="$2"
130
- local -n _side_b_patterns_ref="$3"
131
- local a_hits=()
132
- local b_hits=()
133
- local pattern
134
-
135
- for pattern in "${_side_a_patterns_ref[@]}"; do
136
- if printf '%s' "$description" | grep -qiE "$pattern" 2>/dev/null; then
137
- a_hits+=("$pattern")
138
- fi
139
- done
140
- for pattern in "${_side_b_patterns_ref[@]}"; do
141
- if printf '%s' "$description" | grep -qiE "$pattern" 2>/dev/null; then
142
- b_hits+=("$pattern")
143
- fi
144
- done
145
-
146
- local a_count="${#a_hits[@]}"
147
- local b_count="${#b_hits[@]}"
148
-
149
- if (( a_count >= 1 && b_count == 0 )); then
150
- local joined
151
- joined=$(IFS=,; echo "${a_hits[*]}")
152
- printf 'SIDE_A_UNAMBIGUOUS|%s\n' "$joined"
153
- elif (( a_count == 0 && b_count >= 1 )); then
154
- local joined
155
- joined=$(IFS=,; echo "${b_hits[*]}")
156
- printf 'SIDE_B_UNAMBIGUOUS|%s\n' "$joined"
157
- else
158
- printf 'AMBIGUOUS|a=%d b=%d\n' "$a_count" "$b_count"
159
- fi
160
- }
161
-
162
115
  # ---------------------------------------------------------------------------
163
116
  # risk_policy_matrix_lookup — RISK-POLICY.md Impact × Likelihood lookup.
164
117
  #
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@windyroad/architect",
3
- "version": "0.14.0-preview.512",
3
+ "version": "0.14.1-preview.514",
4
4
  "description": "Architecture decision enforcement for AI coding agents",
5
5
  "bin": {
6
6
  "windyroad-architect": "./bin/install.mjs"