scenri 0.20.6 → 0.20.7
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/CHANGELOG.md +8 -0
- package/dist/serve.js +15 -11
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.20.7](https://github.com/tonygorb/Scenri/compare/v0.20.6...v0.20.7) (2026-10-03)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Bug Fixes
|
|
7
|
+
|
|
8
|
+
* keep a parent's reference photo off a refinement ([6d74815](https://github.com/tonygorb/Scenri/commit/6d74815fdcdb246ef7c7038a639a20a63042ea29))
|
|
9
|
+
* keep a parent's reference photo off a refinement ([0acd180](https://github.com/tonygorb/Scenri/commit/0acd18031c72c9aeabd971fd72e140a88006accb))
|
|
10
|
+
|
|
3
11
|
## [0.20.6](https://github.com/tonygorb/Scenri/compare/v0.20.5...v0.20.6) (2026-10-02)
|
|
4
12
|
|
|
5
13
|
|
package/dist/serve.js
CHANGED
|
@@ -5468,9 +5468,6 @@ function inheritedIdentityDirective(kinds) {
|
|
|
5468
5468
|
return "The attached product references show the same product that is already in this picture. Use them to hold its identity exact while you make the change, not as a reason to re-stage the shot.";
|
|
5469
5469
|
return "The attached person reference shows the same person who is already in this picture. Use it to hold their identity exact while you make the change, not as a reason to re-stage the shot.";
|
|
5470
5470
|
}
|
|
5471
|
-
function inheritedRefDirective() {
|
|
5472
|
-
return "The carried reference is attached for composition, lighting and treatment only. Any person or product visible in it lends mood, never identity \u2014 nobody and nothing in this photograph takes a face, a body or a design from it.";
|
|
5473
|
-
}
|
|
5474
5471
|
function productFactDirectives(p) {
|
|
5475
5472
|
const out = [];
|
|
5476
5473
|
if (p.preservationNotes) out.push(String(p.preservationNotes));
|
|
@@ -16386,6 +16383,17 @@ function registerImageRoutes(app, deps) {
|
|
|
16386
16383
|
var HEADLINES_KEPT = 5;
|
|
16387
16384
|
var FIRST_PUBLIC = "0.2.0";
|
|
16388
16385
|
var RELEASES = [
|
|
16386
|
+
{
|
|
16387
|
+
version: "0.20.7",
|
|
16388
|
+
date: "2026-10-03",
|
|
16389
|
+
title: "A refinement keeps the shot, not the reference",
|
|
16390
|
+
sections: [
|
|
16391
|
+
{
|
|
16392
|
+
heading: "Refine",
|
|
16393
|
+
body: "A shot made with a reference picture keeps its own person, product and brand when you refine it. The reference shaped the first picture, and it is not sent again."
|
|
16394
|
+
}
|
|
16395
|
+
]
|
|
16396
|
+
},
|
|
16389
16397
|
{
|
|
16390
16398
|
version: "0.20.6",
|
|
16391
16399
|
date: "2026-10-02",
|
|
@@ -18828,7 +18836,6 @@ function buildServer(opts) {
|
|
|
18828
18836
|
);
|
|
18829
18837
|
const inheritedDirectives = [];
|
|
18830
18838
|
let inheritedMark = false;
|
|
18831
|
-
let inheritedRef = false;
|
|
18832
18839
|
const inheritedProduct = inheritedTokens.some((t) => t.t === "product");
|
|
18833
18840
|
const inheritedPerson = inheritedTokens.some((t) => t.t === "character");
|
|
18834
18841
|
for (const tok of inheritedTokens) {
|
|
@@ -18849,9 +18856,6 @@ function buildServer(opts) {
|
|
|
18849
18856
|
} else if (tok.t === "mark" && !inheritedMark) {
|
|
18850
18857
|
inheritedMark = true;
|
|
18851
18858
|
inheritedDirectives.push(markEditDirective());
|
|
18852
|
-
} else if (tok.t === "ref" && !inheritedRef) {
|
|
18853
|
-
inheritedRef = true;
|
|
18854
|
-
inheritedDirectives.push(inheritedRefDirective());
|
|
18855
18859
|
}
|
|
18856
18860
|
}
|
|
18857
18861
|
if (inheritedPerson) inheritedDirectives.push(personSkinDirective());
|
|
@@ -18871,9 +18875,9 @@ function buildServer(opts) {
|
|
|
18871
18875
|
editScope: verdict.scope,
|
|
18872
18876
|
editRemoval: verdict.removal ?? false,
|
|
18873
18877
|
// Kinds, not a count: the identity claim speaks only about the kinds
|
|
18874
|
-
// that actually ride. A mark-only
|
|
18875
|
-
//
|
|
18876
|
-
//
|
|
18878
|
+
// that actually ride. A mark-only inheritance emits no generic claim.
|
|
18879
|
+
// markEditDirective speaks for the mark. A carried reference photograph
|
|
18880
|
+
// is recorded and not attached, so it emits nothing either.
|
|
18877
18881
|
inheritedIdentity: inheritedProduct || inheritedPerson ? { product: inheritedProduct, person: inheritedPerson } : false,
|
|
18878
18882
|
inheritedDirectives,
|
|
18879
18883
|
// Only the explicit op drops the dimension promise: an implicit legacy
|
|
@@ -18896,7 +18900,7 @@ function buildServer(opts) {
|
|
|
18896
18900
|
productAngles.set(String(a.id ?? a.hash), n);
|
|
18897
18901
|
return n <= 2;
|
|
18898
18902
|
}
|
|
18899
|
-
return a.essential || a.role === "brand"
|
|
18903
|
+
return a.essential || a.role === "brand";
|
|
18900
18904
|
}).map((a) => ({ ...a, inherited: true }));
|
|
18901
18905
|
}
|
|
18902
18906
|
const cap2 = Math.max(0, engineCaps.maxReferenceImages - 1);
|