@msn-control/liftoff 0.5.1 → 0.6.1

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.
@@ -68,7 +68,11 @@ liftoff update
68
68
  liftoff update --apply
69
69
  ```
70
70
 
71
- Update is a read-only drift check unless `--apply` is present.
71
+ In an interactive terminal, plain update reports drift and impact, then asks
72
+ with a default of No before applying safe managed changes. Local or user-owned
73
+ conflicts require a separate default-No overwrite decision. Redirected and
74
+ JSON checks remain read-only and prompt-free; use `--apply` for explicit
75
+ automation consent.
72
76
 
73
77
  ## Existing non-Liftoff application
74
78
 
@@ -50,24 +50,39 @@ Individual project files use temporary-file replacement. Initialization keeps
50
50
  backups for replaced files and records created files and directories. A handled
51
51
  merge failure restores or removes those entries in reverse order.
52
52
 
53
- `liftoff update --apply` preflights all affected paths and applies generated
54
- file, move, delete, and manifest mutations as one rollback-capable
55
- transaction. Schema upgrades are committed only after the other mutations
56
- succeed. A corrected retry converges from the restored state.
53
+ An accepted interactive update or `liftoff update --apply` preflights all
54
+ affected paths and applies generated file, move, delete, and manifest mutations
55
+ as one rollback-capable transaction. Schema upgrades are committed only after
56
+ the other mutations succeed. A corrected retry converges from the restored
57
+ state.
57
58
 
58
59
  If automatic rollback itself cannot safely restore a path because another
59
60
  process changed it, Liftoff reports the incomplete rollback rather than
60
61
  overwriting unknown bytes.
61
62
 
63
+ Update snapshots exist only for rollback after a failed transaction. Liftoff
64
+ does not retain them as backups after success.
65
+
62
66
  ## Update ownership
63
67
 
64
- `liftoff update` is read-only by default:
68
+ Plain `liftoff update` always reports drift before any write:
65
69
 
66
70
  - Clean generated files remain unchanged.
67
- - New, missing, untouched-upgrade, and clean-move states can be applied.
71
+ - In an interactive terminal, new, missing, untouched-upgrade, clean-move, and
72
+ recorded-state changes are summarized and offered through a default-No
73
+ confirmation.
74
+ - With redirected input or output, or with `--json`, update remains a
75
+ prompt-free read-only check unless `--apply` is explicitly supplied.
68
76
  - Developer edits that also differ from the current template are conflicts.
69
- - Conflicts are skipped unless `--apply --force` is explicitly supplied.
77
+ - Safe-update consent does not authorize conflicts. Interactive conflicts are
78
+ listed by portable relative path and require a separate default-No overwrite
79
+ confirmation; automation uses `--apply --force`.
70
80
  - Orphans are reported and left on disk for manual review.
81
+ - Dependency definitions may be updated, but update never installs
82
+ dependencies.
83
+
84
+ All interactive decisions are collected before preflight or mutation.
85
+ Declining the safe update changes nothing and leaves drift exit code 2.
71
86
 
72
87
  Power Apps reconciliation reads only the packaged immutable starter. It does
73
88
  not fetch the upstream repository. Workload kind and user-edited starter
@@ -67,14 +67,21 @@ hand-edited unsafe path.
67
67
 
68
68
  ## Update reports conflicts or orphans
69
69
 
70
- `liftoff update` does not write. Review the report:
71
-
72
- - Apply safe changes with `liftoff update --apply`.
73
- - Developer conflicts remain untouched unless you explicitly use
74
- `liftoff update --apply --force`.
70
+ In an interactive terminal, `liftoff update` shows an impact summary and asks
71
+ before applying safe managed changes. The default answer is No.
72
+
73
+ - Local or user-owned conflicts are listed separately and require their own
74
+ default-No overwrite confirmation.
75
+ - With redirected input or output, review the report and apply safe changes
76
+ with `liftoff update --apply`.
77
+ - For prompt-free conflict replacement, use `liftoff update --apply --force`
78
+ only after reviewing every listed path.
75
79
  - Orphans are never deleted automatically.
80
+ - Update reports dependency-definition impact but does not install
81
+ dependencies.
76
82
 
77
- Commit local work before applying when possible.
83
+ Commit or copy local work before overwriting. Transaction rollback protects a
84
+ failed update, but Liftoff keeps no backup after success.
78
85
 
79
86
  ## Power Apps dependencies or CLI are missing
80
87
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@msn-control/liftoff",
3
- "version": "0.5.1",
3
+ "version": "0.6.1",
4
4
  "description": "Interactive CLI for governed GenAI, API, and Power Apps code app projects.",
5
5
  "type": "module",
6
6
  "license": "GPL-3.0-only",