Nishi Family › Compare › Photograph-to-Garment Digital Twin
Nishi Compare · measured, not asserted
Photograph-to-Garment Digital Twin
Nishi vs the field — every Nishi cell is measured against real organ source at emit time; each gap names the watch contract that will close it.
Nishi colorimetric photo twin on licensed Supima cotton apparel and prints (measured colour, measured wash fastness, the license chain as data) vs Kornit-class industrial DTG and the POD platforms and the DTG print shops and dye-sub or DTF transfer -- Aug-2026 field
Where we are. MEASURED 2026-08-24 against the catalogue: the image substrate is LIVE or REGISTERED-DARK (nx_img_to_rgb, nx_imgfacts, nx_dedither, nx_color_v2 palette, nx_recolor, nx_editjudge_lib, nx_grade, nx_nxa_texbake LIVE, nx_garment_lib), the rights substrate is built (nx_licgate_lib lg_verdict, nx_realperson rp_decision, nx_takedown td_action) and the business engines are live (lc_calc, gtm_channel_best, pd_parse). The estate has NO CIELAB or CIEDE2000, NO ICC profile parser, NO wash ledger, NO license chain, NO royalty ledger and NO market-entry verdict organ. The reference photograph (FotoRoom, Roden [fotoroom]) decodes as a 1707x2560 JPEG of dune grass on sand under a blue sky.
Where we need to go. OPERATOR ASK (2026-08-24): a /compare on a physical business -- true digital twinning of a photograph, licensed onto a print or a Supima cotton tee that does not bleed -- and, generalised, an emit that says per rung what best-in-class looks like as of August 2026, what capabilities we have that must grow, and whether, how and when to enter, with the ecosystem able to establish that itself. Deliverable: the colorimetric twin lane (colour core, gamut report, soft proof, wash ledger), the license chain, the garment twin, and the ladder verdict organ, so ENTER or HOLD is computed.
Research bar. CIEDE2000, the field's colour-difference ruler is measured on Printing United Alliance, February 2025. Theirs: colour difference quantified in CIELAB, the formula evolved to CIEDE2000, acceptable thresholds vary by application [@deltae]. Ours: PT2 prints per-pixel DE2000 against the substrate gamut and REFUSES a proof whose declared tolerance is exceeded on the subject image -- the tolerance is a conf row the artist and the operator agree, never a number picked in code.
Business case
| Axis | Position | Figures | Decision |
|---|---|---|---|
| Investment | Hobbyist rung is zero capex (a licensed image on a POD account [gelato] or a print shop's Supima blank [ofblank]); the small-business rung is 6 u of organ work plus one contract swatch run; a press stays BOUGHT-AS-A-SERVICE until a computed volume case | 11 u to version 2.0; no hardware in any rung | fund PT1 to PT3 now -- the colour core is reused by every image product on the estate |
| Market | DTG in 2026 is about speed, automation and sustainability at the industrial end [kornitbest]; artist royalties at the platform end are 5 to 15 percent of wholesale [gelato]; Supima DTG blanks are off-the-shelf [ofblank] | the differentiated unit is a MEASURED twin (colour plus wash plus chain), priced above commodity POD and below fine-art editions | no price point is picked before PT2 and PT3 print their numbers on the first subject |
| Opportunity cost | PT1 (colour science) and PT4 (license chain) generalise to every image product and every licensed-content domain on the estate; PT6 generalises to every /compare domain | the ladder organ is the reusable asset; the tee is its first subject | charge PT1, PT4 and PT6 to the platform, only PT3, PT5 and PT7 to this product |
| Competitive position | the field owns the press [kornit], the blank [ofblank] and the marketplace [gelato]; nobody owns measured colour plus measured wash plus the license chain as data [fespa] [iso105c06] | our position is the instrument, not the factory | compete on the proof, buy the printing |
| Go to market | artist-partner DTC under the photographer's name vs a white-label twin-proof service to print shops vs licensing the proof itself to platforms | the GTM facade ranks the three once PT2 hands it product rows | the channel decision is downstream of the gamut and wash numbers, not upstream |
| Buy vs build | Printing: BUY (contract DTG, then industrial [kornitguide]). Blanks: BUY [ofblank]. Colour science, wash ledger, license chain, garment twin, entry verdict: BUILD -- they do not exist to buy | the only build is the instrument; production stays bought until M3 proves a vertical case | instrument first, verticalise only on computed evidence |
Market-entry ladder
| Level | Best in class (Aug 2026) | What we have | What must grow | Verdict |
|---|---|---|---|---|
| Hobbyist | A POD account (Gelato class) with the artist's file uploaded and a 5 to 15 percent royalty [gelato], or a DTG-ready Supima blank printed by a shop per unit [ofblank]; no colour management, no wash data, a terms checkbox for rights | decode, resolution facts, palette, photoreal grade, license gate, takedown posture, PBR render substrate (the measured rows) | nothing structural -- a written license from the photographer [copyright] and one listing | ENTER NOW at zero capex as the learning lane; it produces the first swatches PT7 measures computed: NO-REQUIREMENT |
| Small business | A shop-class DTG line run as pretreat, print, cure [kornitguide] with an ICC-profiled press and a spectrophotometer [fespa], a declared DE2000 tolerance [deltae], blanks bought wholesale [ofblank] and wash claims tested to ISO 105-C06 [iso105c06] | none of the colour core, no wash ledger, no chain -- every one of those is an _ABSENT_ contract today | PT1, PT2, PT3 and PT7 on a CONTRACT line before owning any press | GROW-FIRST -- enter when M1 (a wash-proven SKU) is green; a press stays bought as a service until the volume case is computed computed: GROW-FIRST (6/7 landed, binding rows:knowledge/phototwin_wash.tsv) |
| Market leader | Kornit-class industrial DTG with automation, zero-pretreatment and connected production flow [kornitbest] [kornit], a brand licensing program and verified sourcing under the Supima mark [supimaguide], platform-scale takedown operations | the trade engines (lc_calc, gtm), the chain and royalty ledger (PT4), the flat-front twin (PT5) and the verdict organ (PT6) are all landed; the mesh drape (PT8) and a wash-proven SKU are not; the operations are not ours at all | PT8, a wash-proven SKU in the ledger, plus operations the estate does not own (a press floor, fulfilment) | GROW-FIRST -- a market leader is a wash-proven SKU on a body-mesh twin, not a landed organ list; the call is printed by PT6 from the ladder state, never asserted on this page computed: GROW-FIRST (4/6 landed, binding PT8) |
| Innovation leader | Nobody in the field sells a colorimetric twin with per-SKU wash data; the trade press describes ICC practice as unusual on the textile side [fespa] and vendors state fastness in prose [iso105c06] | the substrate to build it on (decoder, palette, grader, compliance judge, render) is measured present | PT2 soft proof and PT3 wash ledger PUBLISHED on every product -- that pair is the exceed | GROW-FIRST -- this is THE WEDGE, reachable at M1 without market-leader scale (proof first, press never); it is ENTER the moment the swatch ledger holds measured rows computed: GROW-FIRST (3/4 landed, binding rows:knowledge/phototwin_wash.tsv) |
| Research leader | Spectral rather than tri-stimulus reproduction, fiber-level colour retention on extra-long-staple cotton [fiberguide], pigment fixation science on cotton at the press vendors [kornitguide] | the swatch corpus PT7 produces and the colour core PT1 | a spectral intake on measured reflectance (pt_gamut_report over spectra) and a swatch corpus with DE2000 per wash cycle across blanks and lines | GROW-FIRST -- after M3; the swatch corpus is the research asset and it accrues from the first bench run, so the research rung is a by-product of the small-business rung, not a separate investment computed: GROW-FIRST (1/2 landed, binding rows:knowledge/phototwin_wash.tsv) |
27 of 28 capabilities measured|8 of them measured exceeds|1 open|coverage 964/1000|adoption 12 full / 15 partial
Do this next — computed by the ranker, never chosen by a seat
Order from nx_compare_rank (nx_dr_ocm: (deficit + cost-of-delay + option + enables) x sponsor x self-sufficiency x momentum / cost). FINISH rows are rungs whose symbol is present but whose organ is short of full adoption: the cheapest closures on this board, listed before any new work. Stamp: # asof=1787883579 domain=phototwin target_version=- rungs=8 done=7 open=1 finish=5 ranker=nx_dr_ocm
| # | Stage | Rung | Priority | Derivation |
|---|---|---|---|---|
| F | FINISH | Gamut report and soft proof (PT2) pt_soft_proof | REGISTERED-UNAUTHORISED | registered, no cap ever minted; no execution surface runs it either (clock, cron, daemon, roster, actlog and surfaced forks checked) |
| F | FINISH | Wash-fastness ledger (PT3) pt_wash_ledger | REGISTERED-UNAUTHORISED | registered, no cap ever minted; no execution surface runs it either (clock, cron, daemon, roster, actlog and surfaced forks checked) |
| F | FINISH | License chain and royalty ledger (PT4) al_license_chain | REGISTERED-UNAUTHORISED | registered, no cap ever minted; no execution surface runs it either (clock, cron, daemon, roster, actlog and surfaced forks checked) |
| F | FINISH | Garment twin placement (flat-front knit) (PT5) gt_print_place | REGISTERED-UNAUTHORISED | registered, no cap ever minted; no execution surface runs it either (clock, cron, daemon, roster, actlog and surfaced forks checked) |
| F | FINISH | Bench gate on printed swatches (PT7) pt_bench_gate | REGISTERED-UNAUTHORISED | registered, no cap ever minted; no execution surface runs it either (clock, cron, daemon, roster, actlog and surfaced forks checked) |
| #1 | later | Garment twin on the tee MESH (PT8) gt_drape_mesh | 80 | v=1 m=2 c=25 |
Critical path — contract, done-rule, executor, cost
| Rung | Closes with | Definition of done (pre-declared) | Executor | Est. |
|---|---|---|---|---|
| Colour science core (PT1) | cs_de2000 | sRGB to CIELAB and CIEDE2000 in integer arithmetic with a KAT against published pairs [@deltae]; ICC profile parsed to a substrate gamut [@icc]; neg-control: a pair known to differ by more than 4 DE00 must never read under 1 | Organ | 2 u |
| Gamut report and soft proof (PT2) after PT1 | pt_soft_proof | per-photograph gamut coverage permil and a DE2000 heat-map against the Supima-plus-pigment profile [@fespa]; the FotoRoom dune image is the declared subject [@fotoroom]; refuses when the profile is absent; the output is the artist's approval artifact | Organ | 1.5 u |
| Wash-fastness ledger (PT3) after PT1 | pt_wash_ledger | swatch rows measured before and after declared ISO 105-C06 laundering cycles [@iso105c06], DE2000 per cycle as DATA on the SKU; a SKU with no ledger row prints UNMEASURED, never a claim | Organ | 1.5 u |
| License chain and royalty ledger (PT4) | al_license_chain | photographer, rights granted (reproduce, derive, distribute [@copyright]), term, territory and royalty permil of wholesale [@gelato] as rows; a SKU without a chain REFUSES to publish; royalties in integer cents composing lg_verdict; a Supima-mark chain when the blank is sold under the mark [@supimaguide] | Organ | 2 u |
| Garment twin placement (flat-front knit) (PT5) after PT2 | gt_print_place | the print ink-multiplied over the blank's albedo [@ofblank] under a procedural jersey-knit relief lit from the upper left, every parameter in knowledge/garment_twin.conf, the albedo rows replaced by the PT7 bench swatch when measured; honest about its surface: FLAT-FRONT, mesh drape is PT8 | Organ | 1 u |
| Garment twin on the tee MESH (PT8) after PT5 | gt_drape_mesh | the print placed on the tee mesh UV through ntb_bake_pbr and rendered on a body, with the Supima fiber rows [@fiberguide] as the material data; stays OPEN until the mesh path ships -- PT5 is not this | Organ | 2.5 u |
| Market-entry verdict (PT6) after PT3,PT4 | ml_entry_verdict | reads this plan's ladder rows plus the catalogue ladder state of every symbol on the matrix and prints ENTER, HOLD or GROW-FIRST per level with the binding rung named; neg-control: a domain whose rungs are all ABSENT must never print ENTER above hobbyist; generic to every /compare domain | Organ | 1.5 u |
| Bench gate on printed swatches (PT7) after PT3 | pt_bench_gate | a declared swatch set printed on a contract DTG line [@kornitguide] [@kornitbest] and on one industrial line [@kornit], measured by spectrophotometer before and after cycles, REFUSING on partial coverage -- the physical proof the ladder's small-business rung needs | Gate | 1 u |
Milestones
| Milestone | Rungs | Cumulative |
|---|---|---|
| M0 · Colorimetric proof | PT1,PT2 | 3.5 u |
| M1 · Wash-proven SKU | PT3,PT7 | 6 u |
| M2 · License-clean catalogue | PT4 | 8 u |
| M3 · Computed entry verdict with a lit twin | PT5,PT6 | 11 u |
comparewatch- plane row flips with it. The flip is necessary, not sufficient: it proves the symbol exists, never that the capability is good. The bar is the rung's pre-declared done-rule, proven by its gate — a symbol shipped without the behaviour behind it is a defect, and the flip is exactly what makes that defect visible instead of quiet. Competitor marks record documented capability presence — presence, not depth or scale. Adoption is measured too: every measured row carries where its organ stands on the estate's ladder (source → built → promoted → registered → invoked; libraries by importer reach minus validation importers; gates by the execution surfaces that run them). A row is fully adopted only at the top of its ladder; anything short is tagged partial with the exact remedy, so a build nobody promoted can no longer read as shipped. Census stamps: importers asof 1787849099, gate census asof 1787855507 (unix seconds; -1 = census absent).Capability matrix — measured against source
◉ leads / measured exceed● present◐ partial○ absent · click any capability for its evidence
| Capability | Nishi | Kornit-class industrial DTG | POD platform (Gelato class) | DTG print shop (DTLA class) | Dye-sub or DTF transfer |
|---|---|---|---|---|---|
| INTAKE | |||||
Decode the source photograph to RGB (baseline JPEG, PNG)Measured:nx_img_to_rgb exists in runtime/nx_img_to_rgb.nx, verified at emit. Every rival ingests a file. Ours is a sovereign decoder with a graceful-degradation contract: baseline JPEG and partial PNG; a progressive JPEG must be REFUSED by name, never decoded to garbage (debt row on the plan) Adoption: LIB-WIRED importers=20 nonval=11 — fully adopted (top of its ladder). | ● | ● | ● | ● | ● |
Print-resolution facts per asset (dimensions and bytes)Measured:if_fsize exists in runtime/nx_imgfacts.nx, verified at emit. The operator's own question that organ was built for: are the images too small. A print needs the pixel count against the print size before any colour work; the field checks this at upload Adoption: LIVE — fully adopted (top of its ladder). | ● | ● | ● | ● | ● |
Palette-crush detection (photograph or crushed palette file)Measured:dd_classify exists in runtime/nx_dedither.nx, verified at emit. A submitted file that is a palette-crushed export is not a photograph; the classifier says so before a twin is attempted. No platform in the field screens for it Adoption: REGISTERED-DARK — PARTIAL: callable, authorised, no MCP invocation on record (a direct fork logs the runner, so this is not proof it never ran); no execution surface runs it either (clock, cron, daemon, roster, actlog and surfaced forks checked). | ● | ○ | ○ | ○ | ○ |
| COLOUR | |||||
Dominant-palette extraction as the gamut-check inputMeasured:nx_color_kmeans_palette exists in runtime/nx_color_v2.nx, verified at emit. The RIP inside an industrial line handles gamut best [kornitguide]; the sovereign k-means palette is what the gamut report will score against the substrate profile Adoption: LIB-WIRED importers=10 nonval=8 — fully adopted (top of its ladder). | ● | ◉ | ● | ● | ● |
Deterministic masked recolour (a real colour-edit channel)Measured:r_paint exists in runtime/_hdl_build/nx_recolor.nx, verified at emit. An artist-approved gamut remap needs a deterministic edit channel, not a re-roll; press operators do this by hand in the field Adoption: REGISTERED-DARK — PARTIAL: callable, authorised, no MCP invocation on record (a direct fork logs the runner, so this is not proof it never ran); no execution surface runs it either (clock, cron, daemon, roster, actlog and surfaced forks checked). | ● | ● | ○ | ● | ○ |
Edit-compliance judge (did the requested colour change actually happen)Measured:ej_compliance exists in runtime/_hdl_build/nx_editjudge_lib.nx, verified at emit. The measured lesson that organ carries: retention converged while the requested change never happened. The twin loop needs the same judge on every remap Adoption: LIB-WIRED importers=4 nonval=3 — fully adopted (top of its ladder). | ● | ○ | ○ | ○ | ○ |
| JUDGE | |||||
Photoreal grader on any JPEG (is the twin still a photograph)Measured:g_run exists in runtime/_hdl_build/nx_grade.nx, verified at emit. After gamut mapping the result must still grade as a photograph on the estate's own red-team grader; no rival grades its proof Adoption: REGISTERED-DARK — PARTIAL: callable, authorised, no MCP invocation on record (a direct fork logs the runner, so this is not proof it never ran); no execution surface runs it either (clock, cron, daemon, roster, actlog and surfaced forks checked). | ● | ○ | ○ | ○ | ○ |
| TWIN | |||||
PBR atlas bake and lit textured render (the garment preview substrate)Measured exceed:ntb_bake_pbr in runtime/nx_nxa_texbake_lib.nx, verified at emit. Field mockups are flat composites of the design over a product photo; ours bakes albedo, specular, gloss and normal maps and renders a lit turntable -- the substrate for a garment that is actually lit like cotton Adoption: LIB-WIRED importers=5 nonval=2 — fully adopted (top of its ladder). | ◉ | ◐ | ◐ | ◐ | ○ |
Spatially-coherent garment mask (segment the garment, not the skin)Measured:gm_segment_grow exists in runtime/_hdl_build/nx_garment_lib.nx, verified at emit. Placing a print needs the garment region, and that lib was built because a hue mask caught the model's face; the field places prints on a fixed template Adoption: LIB-WIRED importers=1 nonval=1 — fully adopted (top of its ladder). | ● | ○ | ○ | ○ | ○ |
| RIGHTS | |||||
Shippability verdict, may I SELL what this chain producedMeasured:lg_verdict exists in runtime/nx_licgate_lib.nx, verified at emit. The estate's license gate as a lib on the emit path; POD platforms run an IP check at upload [gelato]. A garment SKU composes the same verdict before it is listed Adoption: LIB-WIRED importers=2 nonval=2 — fully adopted (top of its ladder). | ● | ○ | ● | ○ | ○ |
Real-person depiction decision (portrait and likeness)Measured:rp_decision exists in runtime/nx_realperson.nx, verified at emit. A photographer's portfolio includes people; likeness, minors and consent are a decision matrix here, a policy page at the platforms Adoption: LIB-GATE-ONLY importers=1 — PARTIAL: imported only by validation organs (gates, tests, benches): wire it into a shipping program. | ● | ○ | ◐ | ○ | ○ |
Notice-and-takedown posture (counter-notice and restoration)Measured:td_action exists in runtime/nx_takedown.nx, verified at emit. The safe-harbour posture as code: an infringement notice against a listed SKU resolves to remove, review or reject-incomplete with the deadline named; platforms own this best today [gelato] Adoption: LIB-WIRED importers=2 nonval=1 — fully adopted (top of its ladder). | ● | ● | ◉ | ○ | ○ |
| BUSINESS | |||||
Landed-cost and tariff corridor pricing for blanks and inkMeasured:lc_calc exists in runtime/_hdl_build/nx_landed_cost.nx, verified at emit. Blanks [ofblank], pretreatment and ink priced through the live trade engine before they enter the unit economics Adoption: LIVE — fully adopted (top of its ladder). | ● | ○ | ○ | ○ | ○ |
Go-to-market channel engineMeasured:gtm_channel_best exists in runtime/nx_gtm_svc.nx, verified at emit. The GTM facade ranks channels per product in an adjacent domain; artist-partner DTC, white-label twin service and print-proof licensing are its rows here Adoption: REGISTERED-DARK — PARTIAL: callable, authorised, no MCP invocation on record (a direct fork logs the runner, so this is not proof it never ran); no execution surface runs it either (clock, cron, daemon, roster, actlog and surfaced forks checked). | ● | ○ | ○ | ○ | ○ |
| DESIGN | |||||
Outcome-to-capability decompositionMeasured:pd_parse exists in runtime/_hdl_build/nx_product_decompose.nx, verified at emit. The decomposer maps the twin outcome onto required capabilities and gaps over the design-to-market planes -- it is how this matrix's gap rows were derived Adoption: REGISTERED-DARK — PARTIAL: callable, authorised, no MCP invocation on record (a direct fork logs the runner, so this is not proof it never ran); no execution surface runs it either (clock, cron, daemon, roster, actlog and surfaced forks checked). | ● | ○ | ○ | ○ | ○ |
| EVIDENCE | |||||
Sovereign mirrored and pinned reference register for this fieldMeasured:knowledge/fetched/cmp_phototwin exists in knowledge/compare/phototwin.refs, verified at emit. Every rival claim on this page resolves to a mirror in the estate evidence store, content-pinned by hash and re-measured on every emit Adoption: ABSENT — PARTIAL: no source and no binary: this is a build contract, not a partial deploy. | ● | ○ | ○ | ○ | ○ |
| COLOUR | |||||
sRGB to CIELAB and CIEDE2000 in integer arithmeticMeasured exceed:cs_de2000 in runtime/nx_colorsci_lib.nx, verified at emit. The field's colour-difference metric evolved to CIEDE2000 and thresholds vary by application [deltae]; RIPs compute it inside the press. Contract = the sovereign colour core with a KAT against published pairs, the ruler every proof is judged by Adoption: LIB-WIRED importers=4 nonval=2 — fully adopted (top of its ladder). | ◉ | ● | ○ | ● | ○ |
ICC profile parse and substrate gamut (the Supima-plus-pigment gamut as data)Measured:cs_icc_gamut exists in runtime/nx_colorsci_lib.nx, verified at emit. The ICC profile is the file that describes what gamut a device can reproduce [icc] [fespa]. Contract = parse the press-plus-blank profile into the gamut the twin maps into Adoption: LIB-WIRED importers=4 nonval=2 — fully adopted (top of its ladder). | ● | ◉ | ◐ | ● | ● |
| TWIN | |||||
Gamut-coverage report per photographMeasured exceed:pt_gamut_report in runtime/nx_phototwin.nx, verified at emit. Per image: what permil of the palette lies outside the substrate gamut, named by region (the dune image's sky blue and yellow-green). Nobody hands the artist this number today Adoption: REGISTERED-UNAUTHORISED — PARTIAL: registered, no cap ever minted; no execution surface runs it either (clock, cron, daemon, roster, actlog and surfaced forks checked). | ◉ | ● | ○ | ● | ○ |
Perceptual gamut mapping to the substrate (a twin, not a clip)Measured exceed:pt_gamut_map in runtime/nx_phototwin.nx, verified at emit. The press clips or the RIP maps generically [kornitguide]. Contract = a mapping that preserves the photograph's relationships, proven by the grader and the compliance judge, approved by the artist Adoption: REGISTERED-UNAUTHORISED — PARTIAL: registered, no cap ever minted; no execution surface runs it either (clock, cron, daemon, roster, actlog and surfaced forks checked). | ◉ | ● | ◐ | ● | ● |
Soft proof with a DE2000 heat-map and a declared toleranceMeasured exceed:pt_soft_proof in runtime/nx_phototwin.nx, verified at emit. Soft proofing simulates the press on a calibrated monitor [fespa]; ours adds the per-pixel DE2000 map against the declared tolerance [deltae] and REFUSES a proof that exceeds it Adoption: REGISTERED-UNAUTHORISED — PARTIAL: registered, no cap ever minted; no execution surface runs it either (clock, cron, daemon, roster, actlog and surfaced forks checked). | ◉ | ● | ○ | ● | ○ |
| FASTNESS | |||||
Wash-fastness ledger measured to ISO 105-C06, printed on the SKUMeasured exceed:pt_wash_ledger in runtime/nx_phototwin.nx, verified at emit. Vendors state fastness in prose; the standard measures it [iso105c06]. Contract = swatch rows before and after declared laundering cycles with DE2000 per cycle as DATA; a SKU without rows prints UNMEASURED Adoption: REGISTERED-UNAUTHORISED — PARTIAL: registered, no cap ever minted; no execution surface runs it either (clock, cron, daemon, roster, actlog and surfaced forks checked). | ◉ | ◐ | ○ | ○ | ◐ |
| GARMENT | |||||
Print placed on a lit, procedurally knitted cotton front (ink multiplies the fabric, relief shades it)Measured:gt_print_place exists in runtime/nx_garment_twin.nx, verified at emit. Every rival previews on a flat template with no fabric physics. Contract = ink-multiply over the blank's albedo [ofblank] under a jersey-knit relief, every parameter in knowledge/garment_twin.conf, the albedo rows replaced by the bench swatch (PT7) when measured Adoption: REGISTERED-UNAUTHORISED — PARTIAL: registered, no cap ever minted; no execution surface runs it either (clock, cron, daemon, roster, actlog and surfaced forks checked). | ● | ● | ● | ● | ● |
Print draped on the tee MESH through the PBR bake (body-on-mesh render)Open — watchingruntime/nx_garment_twin.nx : gt_drape_mesh, re-measured on every compare beat. Ship that symbol and this mark flips itself; the comparewatch- plane row flips with it. No rival previews on a body mesh at all. Contract = the print placed on the tee mesh UV through ntb_bake_pbr with the Supima fiber rows [fiberguide] as the material data; stays OPEN until the mesh path ships -- the flat-front rung above is not this | ○ | ○ | ○ | ○ | ● |
| RIGHTS | |||||
License chain as data, photographer to SKU, refusing a SKU without its chainMeasured exceed:al_license_chain in runtime/nx_artlicense.nx, verified at emit. The rights are the photographer's by default [copyright]; platforms hold a terms checkbox [gelato]. Contract = owner, rights granted, term, territory and royalty as rows; a SKU without a chain cannot publish; selling under the Supima mark adds its own chain [supimaguide] Adoption: REGISTERED-UNAUTHORISED — PARTIAL: registered, no cap ever minted; no execution surface runs it either (clock, cron, daemon, roster, actlog and surfaced forks checked). | ◉ | ○ | ● | ○ | ○ |
Royalty ledger in integer cents per sale on the immutable planeMeasured:al_royalty_ledger exists in runtime/nx_artlicense.nx, verified at emit. Platforms pay 5 to 15 percent of wholesale [gelato] and own the ledger. Contract = per-sale royalty rows in integer cents the artist can audit Adoption: REGISTERED-UNAUTHORISED — PARTIAL: registered, no cap ever minted; no execution surface runs it either (clock, cron, daemon, roster, actlog and surfaced forks checked). | ● | ○ | ● | ○ | ○ |
| MARKET | |||||
Autonomous market-entry verdict from the ladder rows and the catalogueMeasured exceed:ml_entry_verdict in runtime/nx_market_ladder_lib.nx, verified at emit. The operator ask: the ecosystem establishes best-in-class per rung and says ENTER, HOLD or GROW-FIRST itself. Contract = read this plan's ladder rows plus the catalogue ladder state and print the verdict with the binding rung named; generic to every domain Adoption: LIB-WIRED importers=3 nonval=2 — fully adopted (top of its ladder). | ◉ | ○ | ○ | ○ | ○ |
| FIELD | |||||
Bench gate on real printed swatches (spectrophotometer plus laundering cycles)Measured:pt_bench_gate exists in runtime/nx_phototwin.nx, verified at emit. Incumbents are proven presses [kornit]; ours is unproven until swatches printed on a contract line [kornitbest] are measured before and after cycles, REFUSING on partial coverage Adoption: REGISTERED-UNAUTHORISED — PARTIAL: registered, no cap ever minted; no execution surface runs it either (clock, cron, daemon, roster, actlog and surfaced forks checked). | ● | ● | ● | ● | ● |
Debt register
| Id | Sev | What it is | Unblock |
|---|---|---|---|
| phototwin-progressive-jpeg | 3 | nx_img_to_rgb decodes baseline JPEG and partial PNG only; scaled portfolio exports are often progressive JPEG, which today would fail silently rather than by name. | PT1 adds a progressive-JPEG refusal with the reason named; PT2 refuses a subject it cannot decode. |
| phototwin-no-lab-space | 4 | The estate has RGB, HSV and YCbCr (nx_color_v2) and no CIELAB, so no colour difference can be stated in the unit the whole field uses [@deltae]. | PT1 is the fix; until it lands every colour claim on this page is unmeasured and says so. |
Risk register
| Risk | Likelihood x impact | Mitigation |
|---|---|---|
| Gamut mapping alters the artist's intent and ships anyway | probable x high | PT2's soft proof is the approval artifact; no SKU publishes without the artist's approval row on the chain |
| A wash-fastness claim is published before it is measured | possible x high | PT3 prints UNMEASURED on any SKU without ledger rows; PT7 refuses on partial coverage; the standard is named on the page [@iso105c06] |
| The license lapses or the territory is wrong and the SKU keeps selling | possible x high | the chain carries term and territory rows; an expired or out-of-territory chain REFUSES at lg_verdict, and the takedown posture is already code |
| A watch contract flips on symbol existence, so a stub reads green | possible x high | the flip is the receipt, the rung gate is the proof -- PT7 is a physical gate on purpose |
| The subject photograph is reproduced in the estate before it is licensed | possible x high | the image is analysed locally and NOT mirrored into the evidence store; the register carries the studio page only [@fotoroom] |
Person · product · place — not yet measured for this domain
knowledge/compare/phototwin.ppp (rows surface|nishi or c1..c4|label|url|connect naming OUR live surface and each rival's front door), run nx_ppp_probe domain phototwin, and this section fills itself on the next beat: the same ruler on both sides — privacy and CX (third-party hosts, tracker classes, cookies, security headers), design and longevity (design hygiene, computed WCAG contrast, render-blocking resources, unsized media, script weight, theme and motion queries), findability (landmarks, skip link, on-site search, breadcrumb, headings, internal links).References
- [kornit] Kornit Digital corporate site (2026) -- the industrial pigment direct-to-garment vendor whose systems define the Kornit-class column: sustainable textile printing solutions positioned at production scale. publisher · read in our library
knowledge/fetched/cmp_phototwin_kornit.html· pinh2b0abe27816f82739dda266ae913684512f828db7570d238f75a5c477925d14c· accessed 2026-08-24 · vendor-docGrounds: The Kornit-class industrial DTG column and the FIELD bench-gate row. - [kornitguide] Kornit magazine. What is DTG printing -- a full guide (2026). Vendor guide -- the pigment DTG process as pretreatment, print, cure; DTG versus direct-to-film transfer; dye sublimation positioned for synthetic fabrics like polyester and light colours, not cotton. publisher · read in our library
knowledge/fetched/cmp_phototwin_kornitguide.html· pinhac4001febb6a690fcb529521dfcc61ff6c92884dadef94e8259e4588900f5a34· accessed 2026-08-24 · vendor-docGrounds: The process rows and the dye-sub or DTF transfer column: which method reaches a cotton tee at all. - [kornitbest] Kornit magazine. Choosing the best DTG printer for t-shirts in 2026 (updated February 2026). Vendor buyer's guide -- the 2026 themes are speed, automation and sustainability, zero-pretreatment DTG as the headline technology, a white underbase for dark garments. publisher · read in our library
knowledge/fetched/cmp_phototwin_kornitbest.html· pinh606b6fed8c522de169f7114a14a742ea44d252b20964b2cbf9a63237471cc9d9· accessed 2026-08-24 · vendor-docGrounds: The market-leader ladder rung: what an Aug-2026 industrial line looks like. - [iso105c06] ISO 105-C06:2010 Textiles -- Tests for colour fastness -- Part C06: Colour fastness to domestic and commercial laundering. The published standard a wash-fastness claim is measured against. publisher · read in our library
knowledge/fetched/cmp_phototwin_iso105c06.html· pinh600fbc3aec446bebddc287a798bcd1ce02081701bfb6be05c8d499595c201c0e· accessed 2026-08-24 · published-standardGrounds: The FASTNESS wash-ledger row and rung PT3: the no-bleed no-fade claim as a measured number, never a promise. - [icc] International Color Consortium (2026). The standards body for open vendor-neutral colour management: the ICC profile format and the workflows that use ICC profiles. publisher · read in our library
knowledge/fetched/cmp_phototwin_icc.html· pinh6916b3d7b7c049391e04981b92dcf6649a6066f5ee84892bbd7d88129e8a4864· accessed 2026-08-24 · published-standardGrounds: The COLOUR ICC-gamut row: the substrate profile the twin maps into is an ICC profile. - [fespa] FESPA. Colour management in digital textile printing. Trade feature -- every device is calibrated and characterised with ICC technology, the profile describes the gamut a device can reproduce, measurements come from a spectrophotometer, and soft proofing simulates the press on a monitor; presented as practice the textile side has not fully adopted. publisher · read in our library
knowledge/fetched/cmp_phototwin_fespa.html· pinh8027b7bad65a80b6a1bfec25c506f1ad8cb492d8c4af6363c0a655f8bff9fb85· accessed 2026-08-24 · mirrored-indexGrounds: The TWIN gamut-report and soft-proof rows and the innovation-leader ladder rung. - [deltae] Printing United Alliance (printing.org), February 2025. Dissecting Delta E and the mathematical difference between colors -- Delta E quantifies colour difference in CIELAB, the formulas evolved to CIEDE2000, and acceptable thresholds vary by application. publisher · read in our library
knowledge/fetched/cmp_phototwin_deltae.html· pinhb0ed153eeb9b2138da1955dbcd17f4b9a2a8aafa1e5e34d51aca2990801ca673· accessed 2026-08-24 · mirrored-indexGrounds: The COLOUR DE2000 row, rung PT1 and the research bar: the twin is judged in DE2000 against a declared tolerance. - [copyright] U.S. Copyright Office. What is copyright -- the owner's exclusive rights to reproduce the work, prepare derivative works and distribute copies, and the right to authorize others to exercise them. publisher · read in our library
knowledge/fetched/cmp_phototwin_copyright.html· pinh569bf44d4511febac27cbead2ee569dd4c68a6efa80417979146376a6ee5774f· accessed 2026-08-24 · source-readGrounds: The RIGHTS license-chain row and rung PT4: a garment print is a reproduction and a derivative, so the chain starts at the photographer. - [gelato] Gelato. Art licensing -- the ultimate guide for 2026. POD-platform guide -- artists typically receive 5 to 15 percent of the wholesale price of products carrying their designs, alongside flat-fee deals. publisher · read in our library
knowledge/fetched/cmp_phototwin_gelato.html· pinha1eb237b78016c2f26bf9ae68ff9d850e1295045a52d58691ce016124d3f4570· accessed 2026-08-24 · vendor-docGrounds: The POD-platform column, the royalty-ledger row and the hobbyist ladder rung. - [ofblank] DTLA Print. Custom Original Favorites -- American-grown Supima 100 percent cotton 6 oz t-shirt, sold as a DTG-printable blank by a Los Angeles print shop (2026). publisher · read in our library
knowledge/fetched/cmp_phototwin_ofblank.html· pinh942988ec2608c4c00de72f13e8576755c71d0fa50ee3a9a4d004a50fdb24b405· accessed 2026-08-24 · vendor-docGrounds: The DTG print-shop column and the GARMENT placement row: the Supima blank exists off the shelf, DTG-ready. - [fotoroom] FotoRoom Fotografie -- professional photography studio in Roden, the Netherlands: the subject artist whose portfolio image (dune grass on sand under a blue sky) is the declared first twin subject. The image itself is not reproduced here. publisher · read in our library
knowledge/fetched/cmp_phototwin_fotoroom.html· pinh362d4116956c39cd3f02a3a41793a1683fd5e0e4ae790bc502d137d452e8bfd0· accessed 2026-08-24 · source-readGrounds: The subject of rung PT2 and the license chain: whose rights, whose image, whose approval of the proof. - [fiberguide] PuraFabric. Supima cotton fabric -- a practical guide to the American premium fiber. Trade guide -- fiber properties and their consequences in finished fabric: hand-feel, durability and colour retention (re-fetched for this domain; the page changed since the supimacotton mirror of 2026-08-19). publisher · read in our library
knowledge/fetched/cmp_phototwin_fiberguide.html· pinh81ec53296474bfc8b21fba2f17c3e572b6b3c4cf1811b3c557fa3793011f9ba9· accessed 2026-08-24 · mirrored-indexGrounds: The research-leader ladder rung: colour retention is a fiber property before it is a print property. - [supimaguide] Essential Layers. What is Supima cotton -- the complete guide (2026). Consumer guide -- extra-long staple properties and the licensed trademark program with verified sourcing behind the name (re-fetched for this domain 2026-08-24, byte-identical to the supimacotton mirror). publisher · read in our library
knowledge/fetched/cmp_phototwin_supimaguide.html· pinh9dea5d0ce3cd695478d857a9c577a2faca94b4e5277eb5643c3f57c6dd1b0f1b· accessed 2026-08-24 · mirrored-indexGrounds: The market-leader ladder rung: selling under the Supima mark needs its own license chain.
generated by nx_swcompare_matrix (sovereign NishiLang organ) from knowledge/compare/phototwin.matrix · every Nishi cell verified against organ source at emit time · watch cells re-measured on every compare beat · zero JS, zero trackers