@plurnk/plurnk-execs-git 0.1.8 → 0.1.10
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 +11 -0
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -18,6 +18,17 @@ A `@plurnk/plurnk-execs-*` sibling built on the [plurnk-execs](https://github.co
|
|
|
18
18
|
|
|
19
19
|
The command is tokenized into **real argv** (`tokenizeArgv`) and the tag's binary is run directly — **never** through a shell. That's deliberate: shelling `git commit -m "costs $5"` would expand `$5` and corrupt the message; passing argv preserves `$`, backticks, and other specials literally. Shell metacharacters (`|`, `;`, `>`) are passed as literal args, not interpreted.
|
|
20
20
|
|
|
21
|
+
### Feeding stdin — the `(target)` slot
|
|
22
|
+
|
|
23
|
+
For commands that read **stdin** (`git apply`, `commit -F -`, `hash-object --stdin`, `mktree`), put the invocation in the **`(target)` slot** and the stdin content in the body (plurnk-execs#15):
|
|
24
|
+
|
|
25
|
+
```
|
|
26
|
+
<<EXEC[git](apply --index):<patch text>:EXEC
|
|
27
|
+
<<EXEC[git](hash-object -w --stdin):<blob bytes>:EXEC
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
The target is tokenized the same way; the body is written to the child's stdin. With no target, the body is the invocation (as above).
|
|
31
|
+
|
|
21
32
|
## Effect & gating
|
|
22
33
|
|
|
23
34
|
`effect` is **`host` for every command** (proposal-gated). This is required, not a shortcut: `effect(target)` classifies the target only and must never inspect the command, so `git status` and `git push` are indistinguishable to it. **The service owns all gating** — membership, proposal/confirm, the enable ceiling, and outward-confirm for `push` / `gh pr create`. The executor only runs the command and declares the effect.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@plurnk/plurnk-execs-git",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.10",
|
|
4
4
|
"description": "git + GitHub-CLI runtime executor for plurnk-service's exec scheme — shells the system git/gh binaries (no third-party lib) for EXEC[git] / EXEC[gh].",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"plurnk",
|
|
@@ -65,9 +65,9 @@
|
|
|
65
65
|
"devDependencies": {
|
|
66
66
|
"@types/node": "^26.0.0",
|
|
67
67
|
"typescript": "^6.0.3",
|
|
68
|
-
"@plurnk/plurnk-execs": "0.4.
|
|
68
|
+
"@plurnk/plurnk-execs": "0.4.29"
|
|
69
69
|
},
|
|
70
70
|
"peerDependencies": {
|
|
71
|
-
"@plurnk/plurnk-execs": "0.4.
|
|
71
|
+
"@plurnk/plurnk-execs": "0.4.29"
|
|
72
72
|
}
|
|
73
73
|
}
|