@devrouter/cli 0.0.50 → 0.0.52

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.
package/README.md CHANGED
@@ -88,6 +88,24 @@ The report contains the canonical selection and exact apps, dependencies,
88
88
  readiness checks, managed services, and process markers. Invalid configuration
89
89
  or profile input fails before any runtime operation.
90
90
 
91
+ Repository automation can bind those app identities to build arguments,
92
+ readiness URLs, or other literal values through a separate repository-owned
93
+ contract:
94
+
95
+ ```bash
96
+ devrouter profile plan \
97
+ --repo . \
98
+ --profile manage,pwa \
99
+ --contract ci/profile-plan.yml \
100
+ --output /tmp/profile-plan.json \
101
+ --json
102
+ ```
103
+
104
+ Devrouter validates the selected resources and emits deterministic arrays. It
105
+ does not interpret binding names, expand strings, execute commands, or start a
106
+ runtime. See [Repository onboarding](./docs/REPO_ONBOARDING.md#bind-profiles-to-repository-automation)
107
+ for the version-1 contract.
108
+
91
109
  Use devrouter lifecycle commands for managed environments. Raw DevPod or Devsy
92
110
  `up`/`stop`/`delete` calls bypass ownership locks and exact checkout validation.
93
111
  Devrouter auto-detects the installed workspace runtime CLI (DevPod or Devsy) and
@@ -187,9 +187,9 @@ process_owned() {
187
187
  [ "$actual_pgid" = "$pgid" ] || return 1
188
188
  [ "$pgid" = "$pid" ] || return 1
189
189
  tr '\0' '\n' <"/proc/$pid/environ" 2>/dev/null |
190
- grep -Fqx "DEVROUTER_PROCESS_NAME=$name" || return 1
190
+ grep -Fx "DEVROUTER_PROCESS_NAME=$name" >/dev/null || return 1
191
191
  tr '\0' '\n' <"/proc/$pid/environ" 2>/dev/null |
192
- grep -Fqx "DEVROUTER_PROCESS_FINGERPRINT=$expected_fingerprint"
192
+ grep -Fx "DEVROUTER_PROCESS_FINGERPRINT=$expected_fingerprint" >/dev/null
193
193
  }
194
194
 
195
195
  process_group_alive() {
@@ -217,7 +217,7 @@ is_helper_process() {
217
217
  local candidate="$1"
218
218
 
219
219
  [ -r "/proc/$candidate/cmdline" ] || return 1
220
- tr '\0' '\n' <"/proc/$candidate/cmdline" 2>/dev/null | grep -Fqx "$0"
220
+ tr '\0' '\n' <"/proc/$candidate/cmdline" 2>/dev/null | grep -Fx "$0" >/dev/null
221
221
  }
222
222
 
223
223
  marked_process_exists() {
@@ -230,7 +230,7 @@ marked_process_exists() {
230
230
  pid="${pid%/environ}"
231
231
  process_alive "$pid" || continue
232
232
  is_self_or_ancestor "$pid" && continue
233
- if tr '\0' '\n' <"$environ" 2>/dev/null | grep -Fqx "DEVROUTER_PROCESS_NAME=$name"; then
233
+ if tr '\0' '\n' <"$environ" 2>/dev/null | grep -Fx "DEVROUTER_PROCESS_NAME=$name" >/dev/null; then
234
234
  return 0
235
235
  fi
236
236
  done