Document disconnected LightBurn control-machine state

This commit is contained in:
Codex 2026-10-24 13:12:54 +02:00
parent a9fb945af4
commit c509915ab8
6 changed files with 81 additions and 14 deletions

View file

@ -36,12 +36,13 @@ Phase 0 has established a reproducible evidence and research baseline:
- the public tests, provenance checks, leak guard, and clean-clone validation - the public tests, provenance checks, leak guard, and clean-clone validation
pass. pass.
Phase 0 remains open while we collect known-working LightBurn projects, device Phase 0 remains open while we collect the remaining device screenshots, machine
screenshots, machine photos, and operator notes directly from the actual control photos and operator notes directly from the actual control computer. The bundle,
computer. The bundle, exported preferences and closed-application local settings exported preferences, closed-application local settings and three explicitly
are preserved and analyzed. The operator confirmed a 110 mm lens; local test operator-verified projects are preserved and analyzed. The operator confirmed a
projects are unverified and must not be used as working-project evidence. See 110 mm lens; other local test projects remain unverified. See the
the [local settings acquisition](docs/research/lightburn-local-settings-2026-10-24.md). [local settings acquisition](docs/research/lightburn-local-settings-2026-10-24.md)
and [control-machine observation](docs/research/lightburn-control-machine-observation-2026-10-24.md).
Three operator-verified projects now establish project-level `frequency` and Three operator-verified projects now establish project-level `frequency` and
`QPulseWidth` serialization; see the `QPulseWidth` serialization; see the
@ -85,8 +86,8 @@ real-project gates in
The initial offline architecture spikes have passed. The next work remains The initial offline architecture spikes have passed. The next work remains
hardware-free: hardware-free:
1. collect known-working `.lbrn2` projects and the remaining screenshots, 1. collect the remaining Device Settings screenshots, exterior labels and
photos, preferences folder and operator notes; startup/interlock notes;
2. obtain or produce a reviewed Windows Rayforge build artifact without 2. obtain or produce a reviewed Windows Rayforge build artifact without
installing a toolchain through this repository; installing a toolchain through this repository;
3. run and record the packaged no-device desktop interaction checklist; 3. run and record the packaged no-device desktop interaction checklist;
@ -122,6 +123,7 @@ project workspace or development destination.
- [Upstream contract and license audit](docs/research/upstream-contract-and-license-audit.md) - [Upstream contract and license audit](docs/research/upstream-contract-and-license-audit.md)
- [Live USB enumeration](docs/research/live-usb-enumeration-2026-10-17.md) - [Live USB enumeration](docs/research/live-usb-enumeration-2026-10-17.md)
- [LightBurn device-export analysis](docs/research/lightburn-device-exports-2026-10-19.md) - [LightBurn device-export analysis](docs/research/lightburn-device-exports-2026-10-19.md)
- [LightBurn control-machine observation](docs/research/lightburn-control-machine-observation-2026-10-24.md)
- [Sanitized machine profile](docs/research/machine-profile.yaml) - [Sanitized machine profile](docs/research/machine-profile.yaml)
- [110/300 configuration comparison](docs/research/config-comparison.md) - [110/300 configuration comparison](docs/research/config-comparison.md)
- [Data handling policy](docs/data-handling.md) - [Data handling policy](docs/data-handling.md)

View file

@ -61,6 +61,14 @@ successful projects; their verified private copies establish project-level
two `CutSetting_Img` image settings omit `QPulseWidth`; its effective default two `CutSetting_Img` image settings omit `QPulseWidth`; its effective default
remains unresolved. Both image settings record `ditherMode="3dslice"`. remains unresolved. Both image settings record `ditherMode="3dslice"`.
The running control-machine application was also inspected while the laser was
physically disconnected. LightBurn Pro 2.1.03 showed the JPT profile as
`Disconnected`, the 110 mm material library, and explicit `Frequency (kHz)` /
`Q-Pulse (ns)` UI labels. The live preferences and newest native backup are
hashed in PrivateStash. The screenshot channel timed out, so the complete
Device Settings tab set and exterior hardware photographs remain open; see
`docs/research/lightburn-control-machine-observation-2026-10-24.md`.
M1 is not complete. Do not describe the repository as a finished desktop M1 is not complete. Do not describe the repository as a finished desktop
application until both gates below have real evidence: application until both gates below have real evidence:

View file

@ -0,0 +1,50 @@
# LightBurn control-machine observation
- Date: 2026-10-24
- Application: LightBurn Pro 2.1.03
- Hardware state: laser physically disconnected by the operator
- Scope: passive UI and local-preference inspection only
## Confirmed in the running application
The window title identified LightBurn Pro `2.1.03` with the operator-verified
`Gradients DepthMap` project open. The active device was `100 JPT E2 MOPA`, the
connection status read `Disconnected`, the port selector read `(Auto)`, and the
loaded material library was `Mopa-100W-110mm`.
The Cuts / Layers panel labels the MOPA controls as `Frequency (kHz)` and
`Q-Pulse (ns)`. This independently establishes the UI display units needed by
the offline importer contract; it does not establish the serialized-file unit
or authorize conversion without the documented normalization rule.
The visible selected-layer controls showed speed `1800 mm/s`, one pass, power
`17%`, frequency `1000 kHz`, and Q-pulse width `10 ns`. The project layer list
also showed an Image layer at `1800 / 59` and two additional layers at
`12 / 59`. These values are observations of the open project, not recommended
recipes.
## Preference cross-check and preserved files
The live preferences still contain four device records. The named JPT profile
is `JCZFiber` over `LibUSB`, has a 110 x 110 mm work area, enables Q-pulse-width
control, and requires framing before start. The profile stores a raw frequency
range of 1 to 4000 and has home-on-startup disabled.
The active preferences file and LightBurn's newest native `.lbprefs` backup
were copied into PrivateStash with before/source-after/copy SHA-256 equality
checks. Their two sanitized public records are in
[`public-lightburn-control-machine-observation.jsonl`](../../evidence/public-lightburn-control-machine-observation.jsonl).
Exact local paths, raw preferences and machine-specific fields remain private.
## Collection limits
The automation screenshot channel repeatedly returned `window capture timed
out`; accessibility-only inspection remained available. Geometry-dependent
controls therefore could not be safely invoked to capture every Device
Settings tab. No substitute Support Data bundle was generated.
No Start or Frame control was used, no USB endpoint or controller was opened,
and no machine setting was intentionally changed. The operator's 110 mm lens
statement remains operator-confirmed rather than photographically verified.
Exterior hardware labels and the complete Device Settings screenshot set remain
open evidence items.

View file

@ -1,6 +1,6 @@
# Phase 0 status # Phase 0 status
Last updated: 2026-10-21 Last updated: 2026-10-24
## Completed ## Completed
@ -32,19 +32,23 @@ Last updated: 2026-10-21
area. A separate 500 x 300 mm Ruida profile remains physically unassigned. area. A separate 500 x 300 mm Ruida profile remains physically unassigned.
- No vendor executable, plugin, DLL, or driver was run. No USB capture, framing, - No vendor executable, plugin, DLL, or driver was run. No USB capture, framing,
machine command, or laser output was performed. machine command, or laser output was performed.
- The actual control machine was inspected with the laser physically
disconnected. LightBurn Pro 2.1.03 showed the `100 JPT E2 MOPA` device,
`Disconnected` status, the `Mopa-100W-110mm` library and explicit kHz/ns MOPA
UI units. The live preferences and newest native backup were preserved and
hashed; see the [control-machine observation](../research/lightburn-control-machine-observation-2026-10-24.md).
## Pending external acquisition ## Pending external acquisition
These items remain pending from the actual control machine: These items remain pending from the actual control machine:
- closed-application preferences-folder archive; - Device Settings screenshots (the automation screenshot channel timed out);
- Device Settings screenshots;
- known-working `.lbrn2` examples;
- safe exterior hardware/label photographs and startup/interlock notes; - safe exterior hardware/label photographs and startup/interlock notes;
- stock-driver identity and version from the actual LightBurn control computer. - stock-driver identity and version from the actual LightBurn control computer.
An About screenshot is useful corroboration, but the imported bundle manifests An About screenshot is useful corroboration, but the window title and imported
already establish version `2.1.03`. bundle manifests already establish version `2.1.03`. The closed-application
preferences archive and three operator-verified `.lbrn2` examples are complete.
Collect them directly into a dated directory under PrivateStash by following Collect them directly into a dated directory under PrivateStash by following
the [LightBurn checklist](../collection/lightburn.md). Do not use Google Drive the [LightBurn checklist](../collection/lightburn.md). Do not use Google Drive

View file

@ -0,0 +1,2 @@
{"analysis_refs": ["docs/research/lightburn-control-machine-observation-2026-10-24.md"], "artifact_id": "sha256-773fea756949638083f2", "classification": "private-sensitive", "media_type": "application/octet-stream", "observed_at_utc": "2026-10-24T11:09:47.2517433Z", "origin": "live LightBurn control-machine preferences", "sha256": "773fea756949638083f2146b4e4ff2c7f532704474495a098e7087cf13ad033b", "size_bytes": 98884}
{"analysis_refs": ["docs/research/lightburn-control-machine-observation-2026-10-24.md"], "artifact_id": "sha256-cf81c4901e358b1868dd", "classification": "private-sensitive", "media_type": "application/octet-stream", "observed_at_utc": "2026-10-24T11:09:47.2517433Z", "origin": "latest native LightBurn preferences backup", "sha256": "cf81c4901e358b1868ddb77069de14382d75ad48063b9ccf56cccfd6404e4973", "size_bytes": 97356}

View file

@ -50,6 +50,7 @@ class PublicEvidenceTests(unittest.TestCase):
def test_expected_manifest_entry_counts(self) -> None: def test_expected_manifest_entry_counts(self) -> None:
expected = { expected = {
"public-installer-configs.jsonl": 9, "public-installer-configs.jsonl": 9,
"public-lightburn-control-machine-observation.jsonl": 2,
"public-lightburn-exports.jsonl": 4, "public-lightburn-exports.jsonl": 4,
"public-lightburn-local-settings.jsonl": 1, "public-lightburn-local-settings.jsonl": 1,
"public-lightburn-verified-projects.jsonl": 3, "public-lightburn-verified-projects.jsonl": 3,