@photivra/engine 1.4.0 → 1.5.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/CHANGELOG.md +9 -1
- package/CITATION.cff +1 -1
- package/dist/capture/native-raw-development.d.ts +7 -1
- package/dist/capture/native-raw-development.d.ts.map +1 -1
- package/dist/capture/native-raw-development.js +8 -2
- package/dist/capture/native-raw-development.js.map +1 -1
- package/dist/capture/native-raw.d.ts +4 -0
- package/dist/capture/native-raw.d.ts.map +1 -1
- package/dist/capture/native-raw.js +9 -5
- package/dist/capture/native-raw.js.map +1 -1
- package/dist/core/version.d.ts +1 -1
- package/dist/core/version.js +1 -1
- package/docs/API_REFERENCE.md +1 -1
- package/docs/DENSE_PUPIL_QUALIFICATION.md +121 -0
- package/docs/NATIVE_RAW_AND_PRINT.md +8 -1
- package/docs/RELEASE_1_5_0.md +105 -0
- package/docs/SEPARABLE_EMISSION_DRAFT.md +103 -0
- package/docs/api/camera-equivalent-focal-length.md +1 -1
- package/docs/api/camera-field-of-view.md +1 -1
- package/docs/api/camera-projected-object-size.md +1 -1
- package/docs/api/capture-capture-export-metadata.md +1 -1
- package/docs/api/capture-environment-raw-producer.md +1 -1
- package/docs/api/capture-focus-control.md +1 -1
- package/docs/api/capture-linear-encoding.md +1 -1
- package/docs/api/capture-native-environment-raw.md +1 -1
- package/docs/api/capture-native-raw-development.md +5 -1
- package/docs/api/capture-native-raw.md +5 -1
- package/docs/api/capture-photographic-export.md +1 -1
- package/docs/api/capture-raw-frame-reconstruction.md +1 -1
- package/docs/api/capture-release-sequence.md +1 -1
- package/docs/api/capture-sensor-raw-frame.md +1 -1
- package/docs/api/capture-sensor-raw-producer.md +1 -1
- package/docs/api/capture-simulated-capture.md +1 -1
- package/docs/api/color-capture-color.md +1 -1
- package/docs/api/color-srgb-icc.md +1 -1
- package/docs/api/color-white-balance.md +1 -1
- package/docs/api/composition-image-formation-plan.md +1 -1
- package/docs/api/composition-plan-consumer.md +1 -1
- package/docs/api/core-calculation-result.md +1 -1
- package/docs/api/core-configuration-error.md +1 -1
- package/docs/api/core-image-formation.md +1 -1
- package/docs/api/core-scientific-assurance.md +1 -1
- package/docs/api/core-spectral-composition.md +1 -1
- package/docs/api/core-spectral.md +1 -1
- package/docs/api/core-validation.md +1 -1
- package/docs/api/core-version.md +2 -2
- package/docs/api/equipment-exposure-capabilities.md +1 -1
- package/docs/api/equipment-generic-tier-assets.md +1 -1
- package/docs/api/equipment-generic-tier-presets.md +1 -1
- package/docs/api/equipment-iso-capabilities.md +1 -1
- package/docs/api/equipment-metering-capabilities.md +1 -1
- package/docs/api/equipment-release-capabilities.md +1 -1
- package/docs/api/exports.json +2 -2
- package/docs/api/exposure-exposure-duration-control.md +1 -1
- package/docs/api/exposure-exposure-mode-resolver.md +1 -1
- package/docs/api/exposure-exposure.md +1 -1
- package/docs/api/exposure-flash.md +1 -1
- package/docs/api/exposure-metering-scene-radiance.md +1 -1
- package/docs/api/exposure-metering-target.md +1 -1
- package/docs/api/exposure-metering-temporal.md +1 -1
- package/docs/api/exposure-metering.md +1 -1
- package/docs/api/exposure-program-line.md +1 -1
- package/docs/api/motion-camera-rotation.md +1 -1
- package/docs/api/motion-capture-rotation-inverse-mapping.md +1 -1
- package/docs/api/motion-capture-rotation-temporal-quadrature.md +1 -1
- package/docs/api/motion-capture-rotation-trajectory.md +1 -1
- package/docs/api/motion-capture-translation-parallax-temporal-quadrature.md +1 -1
- package/docs/api/motion-extended-object-projection.md +1 -1
- package/docs/api/motion-projected-motion.md +1 -1
- package/docs/api/optics-aperture.md +1 -1
- package/docs/api/optics-circle-of-confusion.md +1 -1
- package/docs/api/optics-complex-pupil-psf.md +1 -1
- package/docs/api/optics-depth-of-field.md +1 -1
- package/docs/api/optics-diffraction.md +1 -1
- package/docs/api/optics-focus-breathing.md +1 -1
- package/docs/api/optics-focus-state.md +1 -1
- package/docs/api/optics-front-of-lens-filter.md +1 -1
- package/docs/api/optics-illumination-vignetting.md +1 -1
- package/docs/api/optics-lateral-chromatic-aberration.md +1 -1
- package/docs/api/optics-lens-psf-profile.md +1 -1
- package/docs/api/optics-polygon-diffraction.md +1 -1
- package/docs/api/optics-profile-contract.md +1 -1
- package/docs/api/optics-psf-foundation.md +1 -1
- package/docs/api/optics-radial-distortion.md +1 -1
- package/docs/api/optics-scene-to-sensor-irradiance.md +1 -1
- package/docs/api/optics-scene-to-sensor-quadrature.md +1 -1
- package/docs/api/optics-sensor-aperture-rays.md +1 -1
- package/docs/api/optics-sensor-environment-query.md +1 -1
- package/docs/api/optics-sensor-psf-quadrature.md +1 -1
- package/docs/api/optics-stray-light.md +1 -1
- package/docs/api/optics-thin-lens.md +1 -1
- package/docs/api/output-capture-corrected-sdr.md +1 -1
- package/docs/api/output-capture-geometry.md +1 -1
- package/docs/api/output-capture-sdr.md +1 -1
- package/docs/api/output-crop.md +1 -1
- package/docs/api/output-geometric-transforms.md +1 -1
- package/docs/api/output-lens-corrections.md +1 -1
- package/docs/api/output-native-capture-sdr.md +1 -1
- package/docs/api/output-print-contrast-reference.md +1 -1
- package/docs/api/output-print-detail.md +1 -1
- package/docs/api/output-print-jpeg.md +1 -1
- package/docs/api/output-print-plan.md +1 -1
- package/docs/api/output-print-region-statistics.md +1 -1
- package/docs/api/output-sdr-rendering.md +1 -1
- package/docs/api/output-subject-framing-crop.md +1 -1
- package/docs/api/schema-camera.md +1 -1
- package/docs/api/schema-illumination-spectral.md +1 -1
- package/docs/api/schema-illumination-temporal.md +1 -1
- package/docs/api/schema-illumination.md +1 -1
- package/docs/api/schema-scene-radiance-temporal.md +1 -1
- package/docs/api/schema-scene-radiance.md +1 -1
- package/docs/api/schema-scene.md +1 -1
- package/docs/api/schema-validation.md +1 -1
- package/docs/api/sensor-accumulated-charge.md +1 -1
- package/docs/api/sensor-architecture.md +1 -1
- package/docs/api/sensor-camera-saturation-capacity.md +1 -1
- package/docs/api/sensor-capture-color-sampling-binding.md +1 -1
- package/docs/api/sensor-capture-mode-timing.md +1 -1
- package/docs/api/sensor-capture-mode.md +1 -1
- package/docs/api/sensor-color-sampling.md +1 -1
- package/docs/api/sensor-constant-rate-temporal-integration.md +1 -1
- package/docs/api/sensor-dark-current.md +1 -1
- package/docs/api/sensor-environment-photo-signal.md +1 -1
- package/docs/api/sensor-eqe-electron-rate.md +1 -1
- package/docs/api/sensor-eqe-local-exposure.md +1 -1
- package/docs/api/sensor-eqe-temporal-exposure.md +1 -1
- package/docs/api/sensor-exposure-window.md +1 -1
- package/docs/api/sensor-iso-signal-chain.md +1 -1
- package/docs/api/sensor-local-exposure-binding.md +1 -1
- package/docs/api/sensor-optical-stack.md +1 -1
- package/docs/api/sensor-photon-energy.md +1 -1
- package/docs/api/sensor-physical-charge-capacity.md +1 -1
- package/docs/api/sensor-pixel-pitch.md +1 -1
- package/docs/api/sensor-radiometry-readiness.md +1 -1
- package/docs/api/sensor-raw-readout.md +1 -1
- package/docs/api/sensor-raw-reconstruction.md +1 -1
- package/docs/api/sensor-readout-exposure-linkage.md +1 -1
- package/docs/api/sensor-readout-timing.md +1 -1
- package/docs/api/sensor-response-application-compatibility.md +1 -1
- package/docs/api/sensor-response-operating-range.md +1 -1
- package/docs/api/sensor-responsivity-photocurrent.md +1 -1
- package/docs/api/sensor-sampling-aperture.md +1 -1
- package/docs/api/sensor-scene-eqe-temporal-exposure.md +1 -1
- package/docs/api/sensor-sensor-geometry.md +1 -1
- package/docs/api/sensor-signal-noise.md +1 -1
- package/docs/api/sensor-spatial-sample-reduction.md +1 -1
- package/docs/api/sensor-spatial-sampling-quadrature.md +1 -1
- package/docs/api/sensor-spatio-spectral-reduction.md +1 -1
- package/docs/api/sensor-spectral-coverage.md +1 -1
- package/docs/api/sensor-spectral-quadrature.md +1 -1
- package/docs/api/sensor-spectral-response.md +1 -1
- package/docs/api/sensor-temporal-photo-signal.md +1 -1
- package/docs/api/simulation-poc-simulation.md +1 -1
- package/docs/api/stabilization-camera-shake.md +1 -1
- package/docs/api/stabilization-system.md +1 -1
- package/docs/validation/dense-pupil-2026-10-06/pilot.jsonl +6 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,6 +1,14 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
-
## 1.
|
|
3
|
+
## 1.5.0 — release candidate
|
|
4
|
+
|
|
5
|
+
- Add optional `NativeRawInput.tileWidth` (1–256 native sites) so bounded native RAW acquisition can use smaller execution chunks while preserving the existing 256-site default, physical sampling, absolute CFA coordinates, deterministic noise seeds, shutter timing, output payload and existing whole-event/resource caps.
|
|
6
|
+
- Preserve the exact acquisition tile width through same-RAW validation and development. Reject invalid widths, inconsistent tile counts and stale plans instead of silently rebuilding a default-width plan.
|
|
7
|
+
- Keep the separable ideal-emission experiment repository-only under `src/api/`; it is not part of the npm/root API and establishes no production Focus, source-separability, full-native or device-readiness claim. Dense-pupil qualification remains tracked separately in #224.
|
|
8
|
+
- Include the test-only Node 24 timeout stabilization from #229; it changes no engine behavior or scientific assertions.
|
|
9
|
+
- Include #232's repository-only independent photon/electron qualification tests and complete 2×2 resource pilots. These establish bounded checkpoint evidence, not full-native Focus, depth/refinement or device qualification; no experimental root export or resource-limit change.
|
|
10
|
+
|
|
11
|
+
## 1.4.0 — published October 4, 2026
|
|
4
12
|
|
|
5
13
|
- Add standalone evidence-bound ideal circular pupil rays and optional origin-aware bounded photo/RAW evaluation. Reuse shared focus and camera rotation, average normalized pupil irradiances before the existing sensor pipeline, and retain exact-once working-f-number throughput. Reject simultaneous sampled PSF, missing callbacks, invalid geometry and excessive budgets before provider work. Production depth/visibility composition remains unsupported. See `docs/SENSOR_APERTURE_RAYS.md`.
|
|
6
14
|
|
package/CITATION.cff
CHANGED
|
@@ -9,7 +9,7 @@ abstract: "An open TypeScript engine for the science and mathematics of photogra
|
|
|
9
9
|
repository-code: "https://github.com/photivra/photivra"
|
|
10
10
|
url: "https://photivra.com"
|
|
11
11
|
license: "Apache-2.0"
|
|
12
|
-
version: "1.
|
|
12
|
+
version: "1.5.0"
|
|
13
13
|
keywords:
|
|
14
14
|
- photography
|
|
15
15
|
- camera optics
|
|
@@ -34,6 +34,12 @@ export interface NativeRawDevelopmentTask {
|
|
|
34
34
|
dispose(): void;
|
|
35
35
|
takeOutput(): NativeRawDevelopmentOutput;
|
|
36
36
|
}
|
|
37
|
-
/**
|
|
37
|
+
/**
|
|
38
|
+
* Validates complete phase/halo support, snapshots RAW once, and yields between 256-pixel output tiles.
|
|
39
|
+
* Retains explicit acquisition tile width when reconstructing the exact packed plan. Omitted width
|
|
40
|
+
* preserves legacy plan shape; inconsistent tile counts or unsupported widths fail validation.
|
|
41
|
+
* Acquisition chunk width changes neither CFA/seed coordinates nor development pixels, and does
|
|
42
|
+
* not establish transport or device-resource qualification.
|
|
43
|
+
*/
|
|
38
44
|
export declare function createNativeRawDevelopmentTask(input: NativeRawDevelopmentInput, yieldControl: (signal: AbortSignal) => Promise<void>): NativeRawDevelopmentTask;
|
|
39
45
|
//# sourceMappingURL=native-raw-development.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"native-raw-development.d.ts","sourceRoot":"","sources":["../../src/capture/native-raw-development.ts"],"names":[],"mappings":"AAEA,kGAAkG;AAClG,OAAO,EAA+C,KAAK,eAAe,EAAE,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC7H,OAAO,EAAuC,KAAK,kCAAkC,EAAE,MAAM,+BAA+B,CAAC;AAG7H,OAAO,EAAiC,KAAK,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AAExG,OAAO,EAAmD,KAAK,mBAAmB,EAAE,KAAK,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAOhJ,MAAM,WAAW,yBAAyB;IACxC,GAAG,EAAE,eAAe,CAAC;IACrB,aAAa,EAAE,SAAS,kCAAkC,EAAE,CAAC;IAC7D,YAAY,EAAE,wBAAwB,CAAC;IACvC,YAAY,EAAE,cAAc,GAAG,6BAA6B,CAAC;IAC7D,SAAS,EAAE,mBAAmB,CAAC;IAC/B,uGAAuG;IACvG,2BAA2B,EAAE,MAAM,CAAC;CACrC;AACD,MAAM,WAAW,0BAA0B;IACzC,GAAG,EAAE,eAAe,CAAC;IACrB,aAAa,EAAE,SAAS,kCAAkC,EAAE,CAAC;IAC7D,YAAY,EAAE,wBAAwB,CAAC;IACvC,YAAY,EAAE,yBAAyB,CAAC,cAAc,CAAC,CAAC;IACxD,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,UAAU,GAAG,WAAW,CAAC;IACzC,WAAW,EAAE,kBAAkB,CAAC,aAAa,CAAC,CAAC;IAC/C,cAAc,EAAE,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;IACrD,SAAS,EAAE,mBAAmB,CAAC;IAC/B,iBAAiB,EAAE,kBAAkB,CAAC,mBAAmB,CAAC,CAAC;IAC3D,gBAAgB,EAAE,sCAAsC,CAAC;IACzD,sBAAsB,EAAE,KAAK,CAAC;CAC/B;AACD,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,KAAK,EAAE,kBAAkB,CAAC;IACnC,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACrB,MAAM,IAAI,IAAI,CAAC;IACf,OAAO,IAAI,IAAI,CAAC;IAChB,UAAU,IAAI,0BAA0B,CAAC;CAC1C;AAkBD
|
|
1
|
+
{"version":3,"file":"native-raw-development.d.ts","sourceRoot":"","sources":["../../src/capture/native-raw-development.ts"],"names":[],"mappings":"AAEA,kGAAkG;AAClG,OAAO,EAA+C,KAAK,eAAe,EAAE,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC7H,OAAO,EAAuC,KAAK,kCAAkC,EAAE,MAAM,+BAA+B,CAAC;AAG7H,OAAO,EAAiC,KAAK,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AAExG,OAAO,EAAmD,KAAK,mBAAmB,EAAE,KAAK,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAOhJ,MAAM,WAAW,yBAAyB;IACxC,GAAG,EAAE,eAAe,CAAC;IACrB,aAAa,EAAE,SAAS,kCAAkC,EAAE,CAAC;IAC7D,YAAY,EAAE,wBAAwB,CAAC;IACvC,YAAY,EAAE,cAAc,GAAG,6BAA6B,CAAC;IAC7D,SAAS,EAAE,mBAAmB,CAAC;IAC/B,uGAAuG;IACvG,2BAA2B,EAAE,MAAM,CAAC;CACrC;AACD,MAAM,WAAW,0BAA0B;IACzC,GAAG,EAAE,eAAe,CAAC;IACrB,aAAa,EAAE,SAAS,kCAAkC,EAAE,CAAC;IAC7D,YAAY,EAAE,wBAAwB,CAAC;IACvC,YAAY,EAAE,yBAAyB,CAAC,cAAc,CAAC,CAAC;IACxD,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,UAAU,GAAG,WAAW,CAAC;IACzC,WAAW,EAAE,kBAAkB,CAAC,aAAa,CAAC,CAAC;IAC/C,cAAc,EAAE,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;IACrD,SAAS,EAAE,mBAAmB,CAAC;IAC/B,iBAAiB,EAAE,kBAAkB,CAAC,mBAAmB,CAAC,CAAC;IAC3D,gBAAgB,EAAE,sCAAsC,CAAC;IACzD,sBAAsB,EAAE,KAAK,CAAC;CAC/B;AACD,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,KAAK,EAAE,kBAAkB,CAAC;IACnC,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACrB,MAAM,IAAI,IAAI,CAAC;IACf,OAAO,IAAI,IAAI,CAAC;IAChB,UAAU,IAAI,0BAA0B,CAAC;CAC1C;AAkBD;;;;;;GAMG;AACH,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,yBAAyB,EAC7E,YAAY,EAAE,CAAC,MAAM,EAAC,WAAW,KAAG,OAAO,CAAC,IAAI,CAAC,GAAG,wBAAwB,CAsE7E"}
|
|
@@ -27,7 +27,7 @@ function validateRaw(raw) {
|
|
|
27
27
|
const { capture, containerBitDepth, ...frame } = p.frame;
|
|
28
28
|
void capture;
|
|
29
29
|
void containerBitDepth;
|
|
30
|
-
const input = { exposure, ...frame, maximumOutputBytes: p.outputBytes, ...(p.exposureWindow ? { exposureWindow: p.exposureWindow } : {}) };
|
|
30
|
+
const input = { exposure, ...frame, maximumOutputBytes: p.outputBytes, ...(p.tileWidth === undefined ? {} : { tileWidth: p.tileWidth }), ...(p.exposureWindow ? { exposureWindow: p.exposureWindow } : {}) };
|
|
31
31
|
const plan = calculateNativeRawPlan(input);
|
|
32
32
|
if (canonical(p) !== canonical(plan))
|
|
33
33
|
throw new InvalidConfigurationError("Packed RAW metadata is stale or inconsistent.");
|
|
@@ -36,7 +36,13 @@ function validateRaw(raw) {
|
|
|
36
36
|
throw new InvalidConfigurationError("Packed RAW storage must be exact owned native arrays.");
|
|
37
37
|
return plan;
|
|
38
38
|
}
|
|
39
|
-
/**
|
|
39
|
+
/**
|
|
40
|
+
* Validates complete phase/halo support, snapshots RAW once, and yields between 256-pixel output tiles.
|
|
41
|
+
* Retains explicit acquisition tile width when reconstructing the exact packed plan. Omitted width
|
|
42
|
+
* preserves legacy plan shape; inconsistent tile counts or unsupported widths fail validation.
|
|
43
|
+
* Acquisition chunk width changes neither CFA/seed coordinates nor development pixels, and does
|
|
44
|
+
* not establish transport or device-resource qualification.
|
|
45
|
+
*/
|
|
40
46
|
export function createNativeRawDevelopmentTask(input, yieldControl) {
|
|
41
47
|
const r = requireAllowlistedRecord(input, ["raw", "phaseProfiles", "colorProfile", "whiteBalance", "rendering", "maximumRetainedPayloadBytes"], "Invalid native RAW development input.");
|
|
42
48
|
if (typeof yieldControl !== "function")
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"native-raw-development.js","sourceRoot":"","sources":["../../src/capture/native-raw-development.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"native-raw-development.js","sourceRoot":"","sources":["../../src/capture/native-raw-development.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,6 +25,8 @@ export interface NativeRawInput {
|
|
|
25
25
|
bindingProfile: NativeRawProducerFrameContext["bindingProfile"];
|
|
26
26
|
exposureWindow?: SensorRawProducerExposureWindowInput;
|
|
27
27
|
maximumOutputBytes: number;
|
|
28
|
+
/** Optional execution chunk width in native sites, 1–256; omission preserves 256. Not a sampling control. */
|
|
29
|
+
tileWidth?: number;
|
|
28
30
|
}
|
|
29
31
|
export interface NativeRawPlan {
|
|
30
32
|
schemaVersion: typeof NATIVE_RAW_SCHEMA_VERSION;
|
|
@@ -34,6 +36,8 @@ export interface NativeRawPlan {
|
|
|
34
36
|
pixelCount: number;
|
|
35
37
|
outputBytes: number;
|
|
36
38
|
tileCount: number;
|
|
39
|
+
/** Present only for an explicit execution chunk width. Omission preserves legacy plan shape. */
|
|
40
|
+
tileWidth?: number;
|
|
37
41
|
upstreamRadiometryVerified: false;
|
|
38
42
|
seedSchedule: "capture-seed-plus-two-native-index-modulo-2-to-32-v1";
|
|
39
43
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"native-raw.d.ts","sourceRoot":"","sources":["../../src/capture/native-raw.ts"],"names":[],"mappings":"AAEA,6FAA6F;AAC7F,OAAO,EAAoC,KAAK,qBAAqB,EAAE,KAAK,gBAAgB,EAAE,KAAK,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AASzJ,OAAO,EAC6B,KAAK,6BAA6B,EAAE,KAAK,0BAA0B,EACrG,KAAK,oCAAoC,EAAE,MAAM,0BAA0B,CAAC;AAE9E,eAAO,MAAM,yBAAyB,EAAG,OAAgB,CAAC;AAC1D,eAAO,MAAM,iBAAiB;;;;;;EAC4B,CAAC;AAC3D,kGAAkG;AAClG,MAAM,MAAM,sBAAsB,GAAG,IAAI,CAAC,qBAAqB,EAAE,QAAQ,GAAG,QAAQ,CAAC,GAAG;IAAC,MAAM,EAAC,qBAAqB,CAAA;CAAC,CAAC;AACvH,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,EAAE,eAAe,GAAG,QAAQ,GAAG,QAAQ,CAAC,GAAG;IAAC,MAAM,EAAC,qBAAqB,CAAA;CAAC,CAAC;AAC/H,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,sBAAsB,CAAC;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,kBAAkB,EAAE,6BAA6B,CAAC,oBAAoB,CAAC,CAAC;IACxE,oBAAoB,EAAE,6BAA6B,CAAC,sBAAsB,CAAC,CAAC;IAC5E,cAAc,EAAE,6BAA6B,CAAC,gBAAgB,CAAC,CAAC;IAChE,cAAc,CAAC,EAAE,oCAAoC,CAAC;IACtD,kBAAkB,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"native-raw.d.ts","sourceRoot":"","sources":["../../src/capture/native-raw.ts"],"names":[],"mappings":"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"}
|
|
@@ -30,7 +30,10 @@ function windows(exposure, schedule, points) {
|
|
|
30
30
|
}
|
|
31
31
|
/** Full raster/resource/profile admission before callbacks or output allocation; no placeholder plane. */
|
|
32
32
|
export function calculateNativeRawPlan(input) {
|
|
33
|
-
const r = requireAllowlistedRecord(input, ["exposure", "frameId", "modeId", "captureModeProfile", "colorSamplingProfile", "bindingProfile", "exposureWindow", "maximumOutputBytes"], "Invalid native RAW input.");
|
|
33
|
+
const r = requireAllowlistedRecord(input, ["exposure", "frameId", "modeId", "captureModeProfile", "colorSamplingProfile", "bindingProfile", "exposureWindow", "maximumOutputBytes", "tileWidth"], "Invalid native RAW input.");
|
|
34
|
+
if (r.tileWidth !== undefined && (typeof r.tileWidth !== "number" || !Number.isSafeInteger(r.tileWidth) || r.tileWidth < 1 || r.tileWidth > NATIVE_RAW_LIMITS.tileWidth))
|
|
35
|
+
throw new InvalidConfigurationError("Native RAW tile width must be an integer from 1 to 256.");
|
|
36
|
+
const tileWidth = r.tileWidth ?? NATIVE_RAW_LIMITS.tileWidth;
|
|
34
37
|
const exposure = normalizeCaptureExposureMetadata(r.exposure, ENGINE_API_VERSION, true), native = exposure.geometry.nativeRaster;
|
|
35
38
|
const pixelCount = native.pixelWidth * native.pixelHeight, outputBytes = pixelCount * NATIVE_RAW_LIMITS.outputBytesPerPixel;
|
|
36
39
|
if (pixelCount > NATIVE_RAW_LIMITS.maximumPixels || native.pixelWidth > NATIVE_RAW_LIMITS.maximumDimension || native.pixelHeight > NATIVE_RAW_LIMITS.maximumDimension ||
|
|
@@ -55,7 +58,8 @@ export function calculateNativeRawPlan(input) {
|
|
|
55
58
|
if (schedule)
|
|
56
59
|
windows(exposure, schedule, [{ x: .5, y: .5 }, { x: native.pixelWidth - .5, y: .5 }, { x: .5, y: native.pixelHeight - .5 }, { x: native.pixelWidth - .5, y: native.pixelHeight - .5 }]);
|
|
57
60
|
return freezeOwnedData({ schemaVersion: NATIVE_RAW_SCHEMA_VERSION, exposure, frame, pixelCount, outputBytes,
|
|
58
|
-
tileCount: Math.ceil(native.pixelWidth /
|
|
61
|
+
tileCount: Math.ceil(native.pixelWidth / tileWidth) * native.pixelHeight,
|
|
62
|
+
...(r.tileWidth === undefined ? {} : { tileWidth }),
|
|
59
63
|
...(schedule ? { exposureWindow: schedule } : {}), upstreamRadiometryVerified: false,
|
|
60
64
|
seedSchedule: "capture-seed-plus-two-native-index-modulo-2-to-32-v1" });
|
|
61
65
|
}
|
|
@@ -65,7 +69,7 @@ export function createNativeRawTask(input, provider) {
|
|
|
65
69
|
if (!provider || typeof provider.readTile !== "function" || typeof provider.yieldControl !== "function")
|
|
66
70
|
throw new InvalidConfigurationError("Native RAW requires reader and host event-loop yield.");
|
|
67
71
|
const read = provider.readTile.bind(provider), yieldControl = provider.yieldControl.bind(provider), abort = new AbortController();
|
|
68
|
-
const native = plan.exposure.geometry.nativeRaster;
|
|
72
|
+
const native = plan.exposure.geometry.nativeRaster, tileWidth = plan.tileWidth ?? NATIVE_RAW_LIMITS.tileWidth;
|
|
69
73
|
let state = "ready", count = 0, output = null, first;
|
|
70
74
|
function release() { if (output) {
|
|
71
75
|
output.codes.fill(0);
|
|
@@ -83,9 +87,9 @@ export function createNativeRawTask(input, provider) {
|
|
|
83
87
|
try {
|
|
84
88
|
output = { plan, codes: new Uint16Array(plan.pixelCount), blackLevels: new Uint16Array(plan.pixelCount), digitalSaturationCodes: new Uint16Array(plan.pixelCount), saturationFlags: new Uint8Array(plan.pixelCount) };
|
|
85
89
|
for (let y = 0; y < native.pixelHeight; y++)
|
|
86
|
-
for (let x = 0; x < native.pixelWidth; x +=
|
|
90
|
+
for (let x = 0; x < native.pixelWidth; x += tileWidth) {
|
|
87
91
|
active();
|
|
88
|
-
const request = Object.freeze({ captureId: plan.exposure.captureId, frameId: plan.frame.frameId, x, y, width: Math.min(
|
|
92
|
+
const request = Object.freeze({ captureId: plan.exposure.captureId, frameId: plan.frame.frameId, x, y, width: Math.min(tileWidth, native.pixelWidth - x), height: 1 });
|
|
89
93
|
{
|
|
90
94
|
const supplied = await read(request, abort.signal);
|
|
91
95
|
active();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"native-raw.js","sourceRoot":"","sources":["../../src/capture/native-raw.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"native-raw.js","sourceRoot":"","sources":["../../src/capture/native-raw.ts"],"names":[],"mappings":"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"}
|
package/dist/core/version.d.ts
CHANGED
package/dist/core/version.js
CHANGED
package/docs/API_REFERENCE.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Public API reference
|
|
2
2
|
|
|
3
|
-
Generated from the exact root exports for **@photivra/engine 1.
|
|
3
|
+
Generated from the exact root exports for **@photivra/engine 1.5.0 / root contract 1.5.0** by `node scripts/generate-api-reference.mjs`. No module deep import is supported.
|
|
4
4
|
|
|
5
5
|
Use [the developer guide](DEVELOPERS.md) for executable paths and scientific boundaries. Types are contracts, not runtime validation: parse untrusted data, preserve units/reference frames, read assessment blockers, and retain evidence/limitations. Optional properties do not imply a universal default. Model/schema IDs remain independent of the distribution.
|
|
6
6
|
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
# Dense-pupil qualification — issue #224
|
|
2
|
+
|
|
3
|
+
## Decision at this checkpoint
|
|
4
|
+
|
|
5
|
+
The merged repository-only separable-emission prototype is **not qualified for
|
|
6
|
+
public promotion or the complete native Focus event**. This checkpoint adds
|
|
7
|
+
independent arithmetic oracles and reproducible complete-small-event resource
|
|
8
|
+
measurements. It does not close #224, qualify downstream scenes/devices, change
|
|
9
|
+
any resource ceiling, or export an experimental function from the package.
|
|
10
|
+
|
|
11
|
+
The 4-billion spectral-composition ceiling in #225 remains a draft proposal.
|
|
12
|
+
Preserving the old arbitrary-provider ceiling while introducing a larger scalar
|
|
13
|
+
work ceiling does not meet #224's no-raised-safety-ceiling requirement by itself.
|
|
14
|
+
The prototype also has no demonstrated full-native refinement envelope.
|
|
15
|
+
|
|
16
|
+
## Work and allocation boundaries
|
|
17
|
+
|
|
18
|
+
For the declared no-PSF source, the original logical support is
|
|
19
|
+
`native sites × spatial nodes × temporal nodes × pupil rays × spectral nodes`.
|
|
20
|
+
An explicit uniform spectrum and achromatic geometry permit wavelength reuse
|
|
21
|
+
only for an identical origin/direction/time request. The geometry upper bound
|
|
22
|
+
removes the spectral factor; scalar spectral compositions remain unchanged.
|
|
23
|
+
No cross-site, cross-time or cross-event reuse is authorized by that declaration.
|
|
24
|
+
|
|
25
|
+
| Complete event support | Geometry calls (upper bound) | Scalar spectral compositions |
|
|
26
|
+
| --- | ---: | ---: |
|
|
27
|
+
| 2048×1366, 4 spatial, 1 temporal, 128 pupil, 2 spectral | 1,432,354,816 | 2,864,709,632 |
|
|
28
|
+
| Same support, 256 pupil | 2,864,709,632 | 5,729,419,264 |
|
|
29
|
+
| Same 128-pupil support, 2 temporal | 2,864,709,632 | 5,729,419,264 |
|
|
30
|
+
|
|
31
|
+
The base event is below 2 billion geometry calls but above 2 billion spectral
|
|
32
|
+
compositions. Either listed refinement is above both prototype ceilings.
|
|
33
|
+
Refinement events retain their own complete support and cannot be divided to
|
|
34
|
+
bypass admission. Actual downstream convergence may require other refinements;
|
|
35
|
+
these counts do not establish which refinement is scientifically sufficient.
|
|
36
|
+
|
|
37
|
+
The native output commits seven bytes per site: three uint16 planes and one
|
|
38
|
+
uint8 flag plane, or 19,582,976 bytes at 2048×1366. This excludes source profiles,
|
|
39
|
+
plans, query/result objects, per-site cache and all runtime overhead. Plans are
|
|
40
|
+
bounded by 100,000 logical evaluations per tile; geometric caches by the
|
|
41
|
+
single-site support. Object-count bounds are not byte/memory guarantees.
|
|
42
|
+
|
|
43
|
+
## Independent checks
|
|
44
|
+
|
|
45
|
+
`test/separable-emission-qualification.test.ts` derives expected photon and
|
|
46
|
+
electron counts directly from SI h/c, paraxial `pi/(4*N²)` acceptance, explicit
|
|
47
|
+
geometric area, two specified wavelength midpoints, independently evaluated
|
|
48
|
+
transmission/QE curves, and the exact integral of a linear time ramp. It uses no
|
|
49
|
+
engine reducer or plan to generate the expected answer. It checks 32/64/128 pupil
|
|
50
|
+
rays and two/four time nodes for a uniform source and a symmetric origin-dependent
|
|
51
|
+
half-pupil edge. This checks normalized weights and response/optical/time ordering
|
|
52
|
+
in those constructed cases, not arbitrary 3D depth/occlusion or convergence.
|
|
53
|
+
|
|
54
|
+
The existing native regressions reuse a shared owned fixture and retain their
|
|
55
|
+
original global/native-scan photon and every-code RAW parity, absolute site
|
|
56
|
+
identities/seed scheduling, tile/event admission, callback failure, ownership and
|
|
57
|
+
cancellation assertions. Legacy parity is an additional implementation comparison,
|
|
58
|
+
not an independent oracle for all RAW physics.
|
|
59
|
+
|
|
60
|
+
## Measured pilot
|
|
61
|
+
|
|
62
|
+
Run from the repository root after `npm ci`:
|
|
63
|
+
|
|
64
|
+
```sh
|
|
65
|
+
node --expose-gc scripts/qualify-separable-emission.mjs
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
The script compiles source and owned test helpers into a temporary directory,
|
|
69
|
+
copies required owned fixtures, executes complete 2×2 events at 32/64/128 pupil
|
|
70
|
+
rays for both global and right-to-left native-scan shutters, compares every RAW
|
|
71
|
+
code to the reference and records canonical little-endian code hashes. It removes
|
|
72
|
+
temporary compilation files on completion/failure. No new dependency is added.
|
|
73
|
+
|
|
74
|
+
Recorded results: [pilot.jsonl](validation/dense-pupil-2026-10-06/pilot.jsonl).
|
|
75
|
+
The evidence identifies base revision and modified source content hashes; it was
|
|
76
|
+
measured on Linux x64 / Node 24.19.0. Each event uses four spatial nodes, two
|
|
77
|
+
spectral nodes, two temporal nodes and one-site chunks. All four tiles complete,
|
|
78
|
+
produce 28 output bytes and yield four times. At 128 pupil rays the events execute
|
|
79
|
+
4,096 geometry calls and 8,192 spectral compositions each.
|
|
80
|
+
|
|
81
|
+
| Pupil rays | Shutter | Complete 2×2 time (ms) | Longest tile interval (ms) | Sampled process RSS peak (MiB) |
|
|
82
|
+
| --- | --- | ---: | ---: | ---: |
|
|
83
|
+
| 32 | global | 159.23 | 45.08 | 132.0 |
|
|
84
|
+
| 32 | native scan | 189.34 | 53.55 | 172.4 |
|
|
85
|
+
| 64 | global | 257.49 | 70.51 | 219.2 |
|
|
86
|
+
| 64 | native scan | 359.62 | 112.23 | 234.2 |
|
|
87
|
+
| 128 | global | 527.75 | 143.34 | 267.1 |
|
|
88
|
+
| 128 | native scan | 561.69 | 180.42 | 299.0 |
|
|
89
|
+
|
|
90
|
+
RSS is the entire process, including retained reference results, compiled helper
|
|
91
|
+
execution and heap/allocator history. Sampling can miss transient peaks; these
|
|
92
|
+
numbers are neither allocation guarantees nor mobile/browser/device evidence.
|
|
93
|
+
One-site chunks do not ensure a responsive host when synchronous planning and
|
|
94
|
+
callbacks take this long. No maximum host latency was previously approved here.
|
|
95
|
+
|
|
96
|
+
Scaling the 128-ray pilots by site count and halving temporal support projects
|
|
97
|
+
51.3–54.6 hours at 2048×1366. **This is an extrapolation, not a measured native
|
|
98
|
+
runtime or admission guarantee.** Different geometry, allocation, GC, profiles
|
|
99
|
+
and device behavior can change it. No complete native event was executed or
|
|
100
|
+
independently decoded in this checkpoint. No depth/refinement/source qualification
|
|
101
|
+
is established by the matching small-event code hashes.
|
|
102
|
+
|
|
103
|
+
## Remaining work and decision needed
|
|
104
|
+
|
|
105
|
+
1. Develop and independently qualify an exact reduction of scalar optical/spectral
|
|
106
|
+
work under explicit supported linearity and source assumptions, preserving all
|
|
107
|
+
committed quadrature measures and operating-range gates. Merely renaming counts
|
|
108
|
+
or increasing the scalar-work ceiling is insufficient.
|
|
109
|
+
2. Measure planning/execution/allocation and cancellation/host responsiveness for
|
|
110
|
+
that implementation. Preserve truthful attempted-work counts and fail-closed
|
|
111
|
+
output. Do not infer mobile usability from this contributor host.
|
|
112
|
+
3. Demonstrate complete native events with independent photon, packed RAW,
|
|
113
|
+
origin-aware depth/occlusion and refinement evidence within unchanged limits.
|
|
114
|
+
4. Separately review a browser-safe public contract and version/API documentation,
|
|
115
|
+
compatibility, package surface and full checks before downstream adoption.
|
|
116
|
+
5. Complete substantive human scientific/source review and contribution-specific
|
|
117
|
+
DCO. AI-assisted tests and measurements do not satisfy human review.
|
|
118
|
+
|
|
119
|
+
Until those steps pass, the experimental route stays under `src/api/`, outside
|
|
120
|
+
npm/root exports; #224 and downstream Focus/Depth remain blocked for production.
|
|
121
|
+
UI implementation and authenticated staging can continue independently.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Native RAW and Print candidate contracts
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
These native RAW and Print contracts are part of version 1.4.0. The optional execution chunk control described below is an unreleased additive change and is not available in the published 1.4.0 package. Production adoption requires separate downstream qualification.
|
|
4
4
|
|
|
5
5
|
The separate `createNativeRawTask` contract accepts metadata without an inline image plane, then produces exact owned native codes, black levels, digital saturation codes and independent physical/pre-ADC/digital flags. Admission is limited to 24 million sites, 16,384 pixels per dimension, 256 sites per tile, and an explicitly admitted seven-byte-per-site payload. The reference 4,096-site RAW path is unchanged. Absolute CFA coordinates and absolute-index charge/read-noise seeds preserve reference arithmetic across tile boundaries.
|
|
6
6
|
|
|
@@ -10,6 +10,13 @@ The separate `createNativeRawTask` contract accepts metadata without an inline i
|
|
|
10
10
|
|
|
11
11
|
All tasks require host yields, publish only whole successful outputs, distinguish failure/cancellation/disposal, and transfer output ownership once. Typed storage must have an exact owned ArrayBuffer; shared buffers and hidden larger parent allocations are rejected. Metadata provenance and declared hashes do not establish producer authenticity.
|
|
12
12
|
|
|
13
|
+
|
|
14
|
+
### Optional smaller execution chunks (unreleased)
|
|
15
|
+
|
|
16
|
+
`NativeRawInput.tileWidth` may explicitly select an integer from 1 through 256 native sites. Omission retains the original 256-site execution and original plan shape. An explicit width is copied into the immutable plan and changes only tile count, provider request widths and yield frequency. Absolute native CFA coordinates, noise seeds, rolling exposure windows and all output codes/flags are unchanged. This control does not change physical sampling or quadrature.
|
|
17
|
+
|
|
18
|
+
Smaller chunks can admit an unchanged high-query-per-site optical event under the existing 100,000-query tile cap. The two-billion whole-event cap and 24-million-site/output-byte limits remain unchanged; a smaller tile never establishes convergence, qualified source transport or production activation. For example, 64 sites with 1,024 source queries per site need 65,536 queries in a tile, while 256 sites would exceed the tile cap. The caller must still satisfy the full-event budget and qualify the source and result independently.
|
|
19
|
+
|
|
13
20
|
## Print stage
|
|
14
21
|
|
|
15
22
|
`createPrintJpegTask` accepts explicitly encoded sRGB 8-bit RGB in an already oriented output raster. It crops only within actual source support and rejects enlargement, stretching and unsupported aspect ratios. Original area filtering decodes this declared post-SDR stage to linear values, integrates exact pixel overlap, then encodes and quantizes sRGB. This does not recover sensor headroom or reprocess RAW. Source reads are bounded to 256 × 32 pixels; JPEG coding uses 8 × 8 blocks. Edge replication is restricted to final JPEG coding blocks, not reconstruction or crop support.
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
# 1.5.0 release candidate
|
|
2
|
+
|
|
3
|
+
Review snapshot: 2026-10-05. This document records the 1.5.0 engine release candidate. It does not tag, publish or activate a downstream application.
|
|
4
|
+
|
|
5
|
+
**Proposed version:** `@photivra/engine@1.5.0`, with `ENGINE_API_VERSION = "1.5.0"`. The backward-compatible public `NativeRawInput.tileWidth` option warrants a minor release rather than describing the entire change as a patch-only fix. This is an engine release identity, not the separate application's public Beta label.
|
|
6
|
+
|
|
7
|
+
**Candidate metadata is aligned to 1.5.0 on the release branch.** Generated references, exact-candidate CI/package validation, final review and owner publication authorization remain gates below.
|
|
8
|
+
|
|
9
|
+
## Current integration and owner review — 2026-10-06
|
|
10
|
+
|
|
11
|
+
The owner substantively reviewed and approved PRs #230 and #232, certified DCO 1.1 for those contributions and authorized contributor sign-off and merge after remaining checks. #232 merged with authorized sign-off as `7106fb90d8351cb769c2c01b0f10ebf1a437aea8`; its reviewed head `0d414b3f942c65f42a1a86f26c073a83093cd004` passed exact-head CI. The 1.5.0 candidate includes that bounded qualification checkpoint and preserves the reviewed #230 release changes at `7f33e4e39f94893ee93f87d90e7153d80ebd6f08`.
|
|
12
|
+
|
|
13
|
+
The checkpoint adds independent SI photon/electron tests and complete 2×2 resource pilots, not complete native Focus qualification or a public experimental API. #224 remains open. Historical draft/input-review statements below describe the October 5 preparation snapshot; they do not reopen completed contribution review/DCO. Generated API references were regenerated on the combined candidate with no file drift. Combined-candidate local validation passed: 2,184 tests / one existing skip, existing coverage thresholds, build, docs, packed consumers, package surface and configured image-formation benchmark. The actual 1.5.0 archive was inspected: 867 entries, root-only export, matching emitted version declarations and no repository-only API implementation/test/source/script/workflow tree. Final combined-candidate GitHub CI remains required before merge; publication remains separately authorized.
|
|
14
|
+
|
|
15
|
+
## Published baseline and exact candidate inputs
|
|
16
|
+
|
|
17
|
+
- Published GitHub release: [v1.4.0](https://github.com/Photivra/photivra/releases/tag/v1.4.0), published on 2026-10-04.
|
|
18
|
+
- At this review, `main` and `v1.4.0` both identify commit `240340ec9e23ef79b6a0d729f494b2a531dd6df4`; their comparison contains no new commits or changed files.
|
|
19
|
+
- [PR #223](https://github.com/Photivra/photivra/pull/223), head `04baece1a8d1a133db3e7a2f0c9daa0d662bb826`: optional native RAW execution chunks and preservation of the exact acquisition plan during same-RAW development.
|
|
20
|
+
- [PR #225](https://github.com/Photivra/photivra/pull/225), head `70f55f5e27795d2fa51d112fbee1b14ee097b6ce`: experimental separable ideal-emission work, stacked on #223.
|
|
21
|
+
- This preparation branch starts at the #225 snapshot so neither draft is silently omitted from the review. That ancestry is not approval to ship either change. Reconcile this document whenever a source PR changes, is excluded, or is rebased.
|
|
22
|
+
|
|
23
|
+
The v1.4.0 GitHub release is verified here. A fresh direct npm-registry check was unavailable in this review; do not infer current registry dist-tags or integrity values from the GitHub release alone.
|
|
24
|
+
|
|
25
|
+
## Proposed release notes, subject to the gates below
|
|
26
|
+
|
|
27
|
+
### Bounded native RAW execution and development
|
|
28
|
+
|
|
29
|
+
Add an explicit integer `NativeRawInput.tileWidth` from 1 through 256 native sites. Omission preserves the existing 256-site execution and the original plan shape. The option controls provider request width, tile count and host-yield frequency; it is not a physical sampling or quality control.
|
|
30
|
+
|
|
31
|
+
Preserve that acquisition width when validating and developing an owned native RAW result. Reject invalid widths, inconsistent tile counts and stale plans rather than silently reconstructing the default-width plan. Existing CFA coordinates, absolute-index noise seeds, shutter timing and RAW/developed values remain the intended invariant.
|
|
32
|
+
|
|
33
|
+
The existing 100,000 logical-query tile bound, two-billion arbitrary-provider event bound and native raster/output-byte limits remain in force. Smaller chunks can solve a tile-admission problem; they do not solve an over-budget whole event or establish optical convergence.
|
|
34
|
+
|
|
35
|
+
### Experimental source work is not a supported release feature
|
|
36
|
+
|
|
37
|
+
#225 explores an explicit uniform-spectrum, achromatic ideal-emission factorization with separately counted geometry evaluations and spectral compositions. It does not establish that an external source satisfies separability, that a full native fixture is qualified, or that a device meets time/memory requirements. See [the draft contract](SEPARABLE_EMISSION_DRAFT.md).
|
|
38
|
+
|
|
39
|
+
Do not advertise or expose this as a supported public API. At the current #225 head the prototype lives under `src/api/`, which is built for repository checks but excluded by the npm package manifest and unreachable from the root browser/package graph. Promotion out of that repository-only boundary would be a separate reviewed public-contract change. A successful test suite alone remains insufficient for scientific or production qualification.
|
|
40
|
+
|
|
41
|
+
## Blocking findings
|
|
42
|
+
|
|
43
|
+
### Resolved prerequisite: experimental distribution boundary
|
|
44
|
+
|
|
45
|
+
#225 now restores the published `src/capture/native-environment-raw.ts` implementation unchanged and moves the separable-emission prototype under `src/api/`. The repository's existing package-surface check excludes `dist/api/`, and the browser/root reachability check does not traverse the prototype. The 128-ray correctness regression also carries an explicit 15-second test budget so Node 24 timing variance is not misreported as a scientific failure.
|
|
46
|
+
|
|
47
|
+
This boundary must remain verified on the final candidate. Moving the prototype into a published module or root dependency graph would reopen the release blocker.
|
|
48
|
+
|
|
49
|
+
### 1. Scientific/source and resource qualification remain unresolved
|
|
50
|
+
|
|
51
|
+
[Issue #224](https://github.com/Photivra/photivra/issues/224) requires bounded full-event evidence and no hidden source assumption or raised safety ceiling. #225 proposes a distinct, four-billion scalar spectral-composition ceiling while preserving the two-billion legacy provider ceiling. Review whether this new source/work domain satisfies the approved scope; do not treat preserving the old ceiling as automatic approval of the new one.
|
|
52
|
+
|
|
53
|
+
Full-native depth/visibility/refinement results, independently checked output and measured resource evidence remain prerequisites for any newly claimed full-native capability. Keep source separability and transport unverified until evidence establishes them. Excluding the prototype from this release is valid; silently presenting partial-tile or synthetic controls as full-event qualification is not.
|
|
54
|
+
|
|
55
|
+
### 2. Substantive human review and contribution-specific DCO
|
|
56
|
+
|
|
57
|
+
The input PRs #223/#225/#226 received substantive human review and DCO approval before candidate preparation. The owner subsequently reviewed and certified #230/#232 on 2026-10-06, as recorded above. Follow [CONTRIBUTING](../CONTRIBUTING.md); use the authorized contributor sign-off for inclusion. This review does not establish the unresolved full-native/source/resource qualification under #224 or authorize public promotion of the experimental API.
|
|
58
|
+
|
|
59
|
+
## Validation already available for the code snapshots
|
|
60
|
+
|
|
61
|
+
- #223 records 2,151 passing tests and one existing skip at `04baece`, with CI [37216829043](https://github.com/Photivra/photivra/actions/runs/37216829043).
|
|
62
|
+
- #225's corrected package-isolated head `70f55f5` passed CI [37384286949](https://github.com/Photivra/photivra/actions/runs/37384286949). The prior Node 24 timeout was addressed by an explicit correctness-test budget rather than changing scientific assertions or resource limits.
|
|
63
|
+
- The test counts above are taken from the source PR records, not a new local test execution. The inspected CI job outcomes establish those jobs' success, not review approval or scientific qualification.
|
|
64
|
+
- Neither snapshot is the final version-bumped release candidate. These results must not be reported as final 1.5.0 release verification. This preparation branch must rerun the matrix after every stacked-base or release-document change.
|
|
65
|
+
|
|
66
|
+
## Remaining release checklist
|
|
67
|
+
|
|
68
|
+
- [x] Isolate the experimental implementation from the published package/root dependency graph; keep package/browser-surface checks green on the final candidate.
|
|
69
|
+
- [x] Keep #225 experimental source/work-budget behavior repository-only and outside the public 1.5.0 package/API; #224 retains scientific qualification ownership.
|
|
70
|
+
- [x] #223/#225/#226 inclusion, substantive human review and DCO are recorded complete on engine main before this candidate branch; release-candidate changes still require final owner review.
|
|
71
|
+
- [x] Reconcile included stacked PRs in dependency order on engine main; retain any branches still needed by open work.
|
|
72
|
+
- [x] Set `package.json`, both root version fields in `package-lock.json`, `src/core/version.ts` and `CITATION.cff` to 1.5.0. No citation release date is asserted before publication.
|
|
73
|
+
- [x] Add the 1.5.0 changelog/release-context entry while preserving historical release records and independently versioned POC/schema/model identities.
|
|
74
|
+
- [x] Regenerate API documentation/`docs/api/exports.json` on the combined candidate; no generated drift.
|
|
75
|
+
- [x] Run local checks/coverage/build/docs/packed consumers/package gate/image-formation benchmark on the combined candidate and inspect the actual npm tarball and emitted root/declaration import graph. Final remote CI and final-main CI remain separate gates.
|
|
76
|
+
- [x] Owner scientific/source review and contribution-specific DCO certification cover the included contributions; final integration diff preserves the approved scope.
|
|
77
|
+
- [ ] Require green final-candidate CI before the signed merge and verify final-main CI before separate publication authorization.
|
|
78
|
+
- [ ] Verify protected main/tag configuration and trusted publishing, confirm the next npm version is absent, then authorize the separate tag/publish step. Never move v1.4.0 or attempt to overwrite its package.
|
|
79
|
+
- [ ] After publication, independently verify the npm version, dist-tag, tarball integrity and provenance, and publish matching GitHub release notes. Downstream dependency adoption and application qualification remain separate.
|
|
80
|
+
|
|
81
|
+
## Candidate preparation and verification
|
|
82
|
+
|
|
83
|
+
After resolving the inclusion/review decisions, use a clean checkout of the approved candidate. The existing release contract remains authoritative for guarded owner publication; see [release procedure](RELEASE_1_0_1.md#owner-release-procedure). The commands below perform preparation and checks only, not a tag or publication:
|
|
84
|
+
|
|
85
|
+
```sh
|
|
86
|
+
npm version 1.5.0 --no-git-tag-version --ignore-scripts
|
|
87
|
+
# Align src/core/version.ts and CITATION.cff, finalize CHANGELOG.md and
|
|
88
|
+
# current release-context prose; do not rewrite historical evidence.
|
|
89
|
+
npm ci --ignore-scripts
|
|
90
|
+
node scripts/generate-api-reference.mjs
|
|
91
|
+
node --test .github/test-node-lts-policy.mjs
|
|
92
|
+
node .github/node-lts-policy.mjs
|
|
93
|
+
npm run check
|
|
94
|
+
npm run coverage
|
|
95
|
+
npm run build
|
|
96
|
+
npm run docs:check
|
|
97
|
+
npm run release:consumer-check
|
|
98
|
+
npm run pack:check
|
|
99
|
+
npm run bench:image-formation:built
|
|
100
|
+
npm pack --ignore-scripts --json
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
Inspect the resulting tarball, its emitted declarations/imports and its recorded hashes. Keep temporary archives/build evidence untracked unless an existing evidence policy explicitly requires them. Review current [Node support](../NODE_SUPPORT.md); do not reuse a dated runtime snapshot as proof of future support. Any source, version, documentation, exclusion or generated-file change requires checks against that changed candidate.
|
|
104
|
+
|
|
105
|
+
**Stop before tagging or publishing until exact-candidate CI/package/tarball verification and owner authorization are complete.** No release tag, npm publication, GitHub release, application dependency change, automation or safety-cap change is performed by this preparation.
|