pixelkiln 0.26.0 → 0.28.0
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 +2 -2
- package/SECURITY.md +12 -2
- package/dist/cli.d.ts +3 -1
- package/dist/cli.js +1158 -307
- package/dist/cli.js.map +1 -1
- package/dist/index.cjs +512 -31
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +101 -3
- package/dist/index.d.ts +101 -3
- package/dist/index.js +525 -44
- package/dist/index.js.map +1 -1
- package/docs/ARCHITECTURE.md +16 -0
- package/docs/ARTIFACTS.md +25 -0
- package/docs/CLI.md +56 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -77,8 +77,8 @@ Left/Right inspects alternatives, Enter or 1–9 selects, 0 leaves a row
|
|
|
77
77
|
unresolved, and closing without **Apply selections** applies nothing
|
|
78
78
|
([CLI reference](docs/CLI.md#pick)). [`pixelkiln gallery`](docs/CLI.md#gallery)
|
|
79
79
|
is its companion: every generation at integer zoom with its prompt, cost, hashes,
|
|
80
|
-
lineage, and quality record; `--edit` changes prompts
|
|
81
|
-
generates and reviews from the page
|
|
80
|
+
lineage, and quality record; `--edit` changes prompts, adds assets, and serves a pinned,
|
|
81
|
+
hash-verified [Pixelorama](docs/CLI.md#tools) build; `--budget` generates and reviews from the page.
|
|
82
82
|
|
|
83
83
|

|
|
84
84
|
|
package/SECURITY.md
CHANGED
|
@@ -28,8 +28,8 @@ reporter.
|
|
|
28
28
|
## Sensitive areas
|
|
29
29
|
|
|
30
30
|
PixelKiln handles provider credentials, paid API actions, remote object deletion,
|
|
31
|
-
local output paths, a localhost review server,
|
|
32
|
-
provider data. Temporary provider result URLs can also contain signing
|
|
31
|
+
local output paths, a localhost review server, generated HTML containing
|
|
32
|
+
provider data, and a downloaded editor build served to the browser. Temporary provider result URLs can also contain signing
|
|
33
33
|
credentials in their query string. Reports involving authentication leakage, path traversal,
|
|
34
34
|
cross-origin review actions, HTML/script injection, unsafe overwrite/delete
|
|
35
35
|
behavior, lockfile corruption, or budget bypass are security relevant.
|
|
@@ -46,3 +46,13 @@ download may retain its source locally so `fetch` can retry, but that in-flight
|
|
|
46
46
|
lockfile should not be committed. `npm run test:security` checks every tracked
|
|
47
47
|
JSON file for credential-bearing URLs and reports only the file and JSON path,
|
|
48
48
|
never the sensitive value.
|
|
49
|
+
|
|
50
|
+
The in-browser editor is fetched from a PixelKiln GitHub release and verified
|
|
51
|
+
file by file against SHA-256 hashes pinned inside the package before anything
|
|
52
|
+
is served; `PIXELKILN_EDITOR_URL` changes where the bytes come from but not
|
|
53
|
+
what is accepted. The gallery serves it only under the pinned release path and
|
|
54
|
+
only the pinned file names, with a Content-Security-Policy that keeps the
|
|
55
|
+
editor page to its own files and lets only the gallery frame it. A report that
|
|
56
|
+
the editor can be served from another location, that verification can be
|
|
57
|
+
bypassed, or that the editor page can reach beyond its origin is security
|
|
58
|
+
relevant.
|
package/dist/cli.d.ts
CHANGED
|
@@ -42,6 +42,8 @@ interface Args {
|
|
|
42
42
|
tag: boolean;
|
|
43
43
|
/** gallery: allow the page to edit manifest intent (prompts, sizes, tags, new assets). */
|
|
44
44
|
edit: boolean;
|
|
45
|
+
/** gallery: do not offer the in-browser editor even with --edit. */
|
|
46
|
+
noEditor: boolean;
|
|
45
47
|
/** fetch: re-download downloaded outputs and replace files whose object changed upstream. */
|
|
46
48
|
refresh: boolean;
|
|
47
49
|
from?: string;
|
|
@@ -88,7 +90,7 @@ interface Args {
|
|
|
88
90
|
*/
|
|
89
91
|
explicitLock?: string;
|
|
90
92
|
}
|
|
91
|
-
declare const COMMANDS: readonly ["init", "plan", "doctor", "gen", "submit", "poll", "pick", "fetch", "restore", "adopt", "accept", "salvage", "purge", "prune", "audit", "cache", "pack", "mount", "export", "tag", "balance", "status", "gallery", "edit", "quality", "refine", "recipe", "workspace", "help", "--help", "-h", "--version", "-v"];
|
|
93
|
+
declare const COMMANDS: readonly ["init", "plan", "doctor", "gen", "submit", "poll", "pick", "fetch", "restore", "adopt", "accept", "salvage", "purge", "prune", "audit", "cache", "pack", "mount", "export", "tag", "balance", "status", "gallery", "edit", "tools", "quality", "refine", "recipe", "workspace", "help", "--help", "-h", "--version", "-v"];
|
|
92
94
|
/**
|
|
93
95
|
* Strict parsing. Unknown flags are a hard error rather than being ignored,
|
|
94
96
|
* because a silently-dropped filter is expensive here: `--styles neon` (plural,
|