{"modules": [{"name": "plesty-fss", "slug": "plesty-fss", "namespace": "plesty/hub/analyzers/plesty-fss", "description": "PLESTY analyzer: exciton fine-structure splitting (FSS) from polarization-resolved PL spectra.", "category": "analyzers", "vendor": "", "web_url": "https://gitlab.com/plesty/hub/analyzers/plesty-fss", "repo_url": "https://gitlab.com/plesty/hub/analyzers/plesty-fss.git", "docs_url": "https://docs.plesty.net/plesty-fss/", "latest_tag": "v0.1.0.dev2", "version": "", "standard": "", "dependency": "plesty-fss @ git+https://gitlab.com/plesty/hub/analyzers/plesty-fss.git", "last_commit": "chore: initial project structure", "last_activity_at": "2026-09-15T17:24:50.158000+00:00", "quality": {"checked": false, "gates": {"passed": 0, "failed": 0, "skipped": 0, "ok": false}, "tooling": null, "coverage_percent": null, "field_tests": []}}, {"name": "plesty_analyzers_positionestimate", "slug": "positionestimate", "namespace": "plesty/hub/analyzers/positionestimate", "description": "Analysis module for optical positioning the optical positioning", "category": "analyzers", "vendor": "", "web_url": "https://gitlab.com/plesty/hub/analyzers/positionestimate", "repo_url": "https://gitlab.com/plesty/hub/analyzers/positionestimate.git", "docs_url": "", "latest_tag": "v0.3.0", "version": "0.3.0", "standard": "", "dependency": "plesty_analyzers_positionestimate @ git+https://gitlab.com/plesty/hub/analyzers/positionestimate.git", "last_commit": "Merge branch 'licensing' into 'main'", "last_activity_at": "2026-09-08T15:00:11.390000+00:00", "quality": {"checked": false, "gates": {"passed": 0, "failed": 0, "skipped": 0, "ok": false}, "tooling": null, "coverage_percent": null, "field_tests": []}}, {"name": "ape-pulse-slicer", "slug": "pulse-slicer", "namespace": "plesty/hub/devices/ape/pulse-slicer", "description": "Plesty API for APE Pulse Slicer.", "category": "devices", "vendor": "ape", "web_url": "https://gitlab.com/plesty/hub/devices/ape/pulse-slicer", "repo_url": "https://gitlab.com/plesty/hub/devices/ape/pulse-slicer.git", "docs_url": "", "latest_tag": "", "version": "0.0.1", "standard": "", "dependency": "ape-pulse-slicer @ git+https://gitlab.com/plesty/hub/devices/ape/pulse-slicer.git", "last_commit": "Merge branch 'Update_README' into 'main'", "last_activity_at": "2026-07-06T13:03:36.460000+00:00", "quality": {"checked": false, "gates": {"passed": 0, "failed": 0, "skipped": 0, "ok": false}, "tooling": null, "coverage_percent": null, "field_tests": []}}, {"name": "plesty-attocube-amc300", "slug": "attocube-amc300", "namespace": "plesty/hub/devices/attocube/attocube-amc300", "description": "A plesty attocube amc300 device.", "category": "devices", "vendor": "attocube", "web_url": "https://gitlab.com/plesty/hub/devices/attocube/attocube-amc300", "repo_url": "https://gitlab.com/plesty/hub/devices/attocube/attocube-amc300.git", "docs_url": "", "latest_tag": "", "version": "", "standard": "", "dependency": "plesty-attocube-amc300 @ git+https://gitlab.com/plesty/hub/devices/attocube/attocube-amc300.git", "last_commit": "Initial commit", "last_activity_at": "2026-08-17T14:40:32.357000+00:00", "quality": {"checked": false, "gates": {"passed": 0, "failed": 0, "skipped": 0, "ok": false}, "tooling": null, "coverage_percent": null, "field_tests": []}}, {"name": "plesty-attocube-amc300-device", "slug": "plesty-amc300-piezo-controller", "namespace": "plesty/hub/devices/attocube/plesty-amc300-piezo-controller", "description": "Plesty Attocube AMC300 Piezo Controller Device.", "category": "devices", "vendor": "attocube", "web_url": "https://gitlab.com/plesty/hub/devices/attocube/plesty-amc300-piezo-controller", "repo_url": "https://gitlab.com/plesty/hub/devices/attocube/plesty-amc300-piezo-controller.git", "docs_url": "https://docs.plesty.net/plesty-amc300-piezo-controller/", "latest_tag": "", "version": "", "standard": "quantum", "dependency": "plesty-attocube-amc300-device @ git+https://gitlab.com/plesty/hub/devices/attocube/plesty-amc300-piezo-controller.git", "last_commit": "Merge branch 'exp' into 'main'", "last_activity_at": "2026-08-25T07:37:00.011000+00:00", "quality": {"checked": false, "gates": {"passed": 0, "failed": 0, "skipped": 0, "ok": false}, "tooling": null, "coverage_percent": null, "field_tests": []}}, {"name": "plesty-attodry2100xl-enspire-server", "slug": "plesty-attodry2100xl-enspire-server", "namespace": "plesty/hub/devices/attocube/plesty-attodry2100xl-enspire-server", "description": "A Plesty AttoDRY2100XL eNSPIRE server device.", "category": "devices", "vendor": "attocube", "web_url": "https://gitlab.com/plesty/hub/devices/attocube/plesty-attodry2100xl-enspire-server", "repo_url": "https://gitlab.com/plesty/hub/devices/attocube/plesty-attodry2100xl-enspire-server.git", "docs_url": "https://docs.plesty.net/plesty-attodry2100xl-enspire-server/", "latest_tag": "v0.1.0", "version": "", "standard": "quantum", "dependency": "plesty-attodry2100xl-enspire-server @ git+https://gitlab.com/plesty/hub/devices/attocube/plesty-attodry2100xl-enspire-server.git", "last_commit": "chore(licensing): credit commit authors on the files they changed", "last_activity_at": "2026-09-09T09:33:56.507000+00:00", "quality": {"checked": true, "gates": {"passed": 16, "failed": 0, "skipped": 4, "ok": true}, "tooling": {"plesty-sdk": "0.3.5", "plesty-lib": "0.3.5"}, "coverage_percent": 90.0, "field_tests": []}}, {"name": "plesty-fps3010", "slug": "plesty-fps3010", "namespace": "plesty/hub/devices/attocube/n-hands/plesty-fps3010", "description": "Plesty device server and TCP API for the N-Hands/Attocube FPS3010 interferometer.", "category": "devices", "vendor": "attocube", "web_url": "https://gitlab.com/plesty/hub/devices/attocube/n-hands/plesty-fps3010", "repo_url": "https://gitlab.com/plesty/hub/devices/attocube/n-hands/plesty-fps3010.git", "docs_url": "", "latest_tag": "", "version": "0.0.1", "standard": "", "dependency": "plesty-fps3010 @ git+https://gitlab.com/plesty/hub/devices/attocube/n-hands/plesty-fps3010.git", "last_commit": "Merge branch 'Troubleshooting' into 'main'", "last_activity_at": "2026-07-07T07:48:51.791000+00:00", "quality": {"checked": false, "gates": {"passed": 0, "failed": 0, "skipped": 0, "ok": false}, "tooling": null, "coverage_percent": null, "field_tests": []}}, {"name": "chameleon-laser-ultra", "slug": "chameleon-laser-ultra", "namespace": "plesty/hub/devices/coherent/chameleon-laser-ultra", "description": "API module for Chameleon laser.", "category": "devices", "vendor": "coherent", "web_url": "https://gitlab.com/plesty/hub/devices/coherent/chameleon-laser-ultra", "repo_url": "https://gitlab.com/plesty/hub/devices/coherent/chameleon-laser-ultra.git", "docs_url": "", "latest_tag": "", "version": "0.0.1", "standard": "", "dependency": "chameleon-laser-ultra @ git+https://gitlab.com/plesty/hub/devices/coherent/chameleon-laser-ultra.git", "last_commit": "Merge branch 'replace_git_dependency_with_version_constraint' into 'main'", "last_activity_at": "2026-07-28T09:30:53.610000+00:00", "quality": {"checked": false, "gates": {"passed": 0, "failed": 0, "skipped": 0, "ok": false}, "tooling": null, "coverage_percent": null, "field_tests": []}}, {"name": "plesty-m2_laser-device", "slug": "m2-laser", "namespace": "plesty/hub/devices/m2/m2-laser", "description": "Plesty M2 Laser Device.", "category": "devices", "vendor": "m2", "web_url": "https://gitlab.com/plesty/hub/devices/m2/m2-laser", "repo_url": "https://gitlab.com/plesty/hub/devices/m2/m2-laser.git", "docs_url": "", "latest_tag": "", "version": "0.0.1", "standard": "", "dependency": "plesty-m2_laser-device @ git+https://gitlab.com/plesty/hub/devices/m2/m2-laser.git", "last_commit": "Initial commit", "last_activity_at": "2026-06-01T10:23:45.847000+00:00", "quality": {"checked": false, "gates": {"passed": 0, "failed": 0, "skipped": 0, "ok": false}, "tooling": null, "coverage_percent": null, "field_tests": []}}, {"name": "meadowlark-slm", "slug": "slm", "namespace": "plesty/hub/devices/meadowlark/slm", "description": "API for Meadowlark SLM devices.", "category": "devices", "vendor": "meadowlark", "web_url": "https://gitlab.com/plesty/hub/devices/meadowlark/slm", "repo_url": "https://gitlab.com/plesty/hub/devices/meadowlark/slm.git", "docs_url": "", "latest_tag": "", "version": "0.0.1", "standard": "", "dependency": "meadowlark-slm @ git+https://gitlab.com/plesty/hub/devices/meadowlark/slm.git", "last_commit": "disable ci", "last_activity_at": "2026-05-19T13:06:33.319000+00:00", "quality": {"checked": false, "gates": {"passed": 0, "failed": 0, "skipped": 0, "ok": false}, "tooling": null, "coverage_percent": null, "field_tests": []}}, {"name": "plesty-ni_usb_daq-device", "slug": "ni-usb-daq", "namespace": "plesty/hub/devices/national_instruments/ni-usb-daq", "description": "Plesty API for NI USB DAQ devices.", "category": "devices", "vendor": "national_instruments", "web_url": "https://gitlab.com/plesty/hub/devices/national_instruments/ni-usb-daq", "repo_url": "https://gitlab.com/plesty/hub/devices/national_instruments/ni-usb-daq.git", "docs_url": "", "latest_tag": "", "version": "", "standard": "", "dependency": "plesty-ni_usb_daq-device @ git+https://gitlab.com/plesty/hub/devices/national_instruments/ni-usb-daq.git", "last_commit": "Merge branch 'fix_init_bug' into 'main'", "last_activity_at": "2026-08-18T13:21:11.460000+00:00", "quality": {"checked": false, "gates": {"passed": 0, "failed": 0, "skipped": 0, "ok": false}, "tooling": null, "coverage_percent": null, "field_tests": []}}, {"name": "plesty-cam-dmk-37aux290", "slug": "cam_dmk_37aux290", "namespace": "plesty/hub/devices/others/cam_dmk_37aux290", "description": "A plesty cam dmk 37aux290 device.", "category": "devices", "vendor": "others", "web_url": "https://gitlab.com/plesty/hub/devices/others/cam_dmk_37aux290", "repo_url": "https://gitlab.com/plesty/hub/devices/others/cam_dmk_37aux290.git", "docs_url": "https://docs.plesty.net/cam_dmk_37aux290/", "latest_tag": "", "version": "", "standard": "quantum", "dependency": "plesty-cam-dmk-37aux290 @ git+https://gitlab.com/plesty/hub/devices/others/cam_dmk_37aux290.git", "last_commit": "fix(ci): include the standard pipeline from main, not the exp ref", "last_activity_at": "2026-08-25T08:05:16.147000+00:00", "quality": {"checked": false, "gates": {"passed": 0, "failed": 0, "skipped": 0, "ok": false}, "tooling": null, "coverage_percent": null, "field_tests": []}}, {"name": "plesty-pi-mirror-controller", "slug": "plesty-pi-mirror-controller", "namespace": "plesty/hub/devices/others/plesty-pi-mirror-controller", "description": "A plesty pi mirror controller device.", "category": "devices", "vendor": "others", "web_url": "https://gitlab.com/plesty/hub/devices/others/plesty-pi-mirror-controller", "repo_url": "https://gitlab.com/plesty/hub/devices/others/plesty-pi-mirror-controller.git", "docs_url": "https://docs.plesty.net/plesty-pi-mirror-controller/", "latest_tag": "", "version": "", "standard": "quantum", "dependency": "plesty-pi-mirror-controller @ git+https://gitlab.com/plesty/hub/devices/others/plesty-pi-mirror-controller.git", "last_commit": "fix(ci): include the standard pipeline from main, not the exp ref", "last_activity_at": "2026-08-25T08:05:20.545000+00:00", "quality": {"checked": false, "gates": {"passed": 0, "failed": 0, "skipped": 0, "ok": false}, "tooling": null, "coverage_percent": null, "field_tests": []}}, {"name": "plesty-lightfield-spectrometer", "slug": "lightfield_spectrometer", "namespace": "plesty/hub/devices/princeton_instruments/lightfield_spectrometer", "description": "API for the Lightfield Spectrometer Device.", "category": "devices", "vendor": "princeton_instruments", "web_url": "https://gitlab.com/plesty/hub/devices/princeton_instruments/lightfield_spectrometer", "repo_url": "https://gitlab.com/plesty/hub/devices/princeton_instruments/lightfield_spectrometer.git", "docs_url": "https://docs.plesty.net/lightfield_spectrometer/", "latest_tag": "v0.2.1", "version": "", "standard": "quantum", "dependency": "plesty-lightfield-spectrometer @ git+https://gitlab.com/plesty/hub/devices/princeton_instruments/lightfield_spectrometer.git", "last_commit": "Merge branch 'fix/confirm-hint-scope' into 'main'", "last_activity_at": "2026-09-09T09:39:03.205000+00:00", "quality": {"checked": true, "gates": {"passed": 17, "failed": 0, "skipped": 3, "ok": true}, "tooling": {"plesty-sdk": "0.4.0", "plesty-lib": "0.4.0"}, "coverage_percent": 88.0, "field_tests": [{"instrument": "LIGHTFIELD-SPECTROMETER", "tier": "host", "generated_utc": "2026-09-04T10:16:52+00:00", "gates": {"passed": 3, "failed": 0, "skipped": 5, "ok": true}, "coverage": {"declared": 265, "verified": 6}, "findings": []}, {"instrument": "LIGHTFIELD-SPECTROMETER", "tier": "client", "generated_utc": "2026-09-04T10:24:50+00:00", "gates": {"passed": 6, "failed": 0, "skipped": 2, "ok": true}, "coverage": {"declared": 17, "verified": 6}, "findings": []}]}}, {"name": "plesty-picamccd", "slug": "picamccd", "namespace": "plesty/hub/devices/princeton_instruments/picamccd", "description": "Princeton Instruments PICam CCD camera used as a spectrograph detector.", "category": "devices", "vendor": "princeton_instruments", "web_url": "https://gitlab.com/plesty/hub/devices/princeton_instruments/picamccd", "repo_url": "https://gitlab.com/plesty/hub/devices/princeton_instruments/picamccd.git", "docs_url": "https://docs.plesty.net/picamccd/", "latest_tag": "v0.9.0", "version": "", "standard": "quantum", "dependency": "plesty-picamccd @ git+https://gitlab.com/plesty/hub/devices/princeton_instruments/picamccd.git", "last_commit": "Merge branch 'exp' into 'main'", "last_activity_at": "2026-09-10T15:29:03.063000+00:00", "quality": {"checked": true, "gates": {"passed": 16, "failed": 0, "skipped": 4, "ok": true}, "tooling": {"plesty-sdk": "0.4.0", "plesty-lib": "0.4.0"}, "coverage_percent": 84.0, "field_tests": []}}, {"name": "plesty-pyforpicam", "slug": "pyforpicam", "namespace": "plesty/hub/devices/princeton_instruments/pyforpicam", "description": "Python ctypes bindings for Princeton Instruments PICam cameras.", "category": "devices", "vendor": "princeton_instruments", "web_url": "https://gitlab.com/plesty/hub/devices/princeton_instruments/pyforpicam", "repo_url": "https://gitlab.com/plesty/hub/devices/princeton_instruments/pyforpicam.git", "docs_url": "https://docs.plesty.net/pyforpicam/", "latest_tag": "v0.5.0", "version": "", "standard": "quantum", "dependency": "plesty-pyforpicam @ git+https://gitlab.com/plesty/hub/devices/princeton_instruments/pyforpicam.git", "last_commit": "Release 0.5.0", "last_activity_at": "2026-09-10T13:12:30.475000+00:00", "quality": {"checked": true, "gates": {"passed": 16, "failed": 0, "skipped": 4, "ok": true}, "tooling": {"plesty-sdk": "0.4.0", "plesty-lib": "0.4.0"}, "coverage_percent": 92.0, "field_tests": []}}, {"name": "plesty-spectrapro-hrs", "slug": "spectrapro_hrs", "namespace": "plesty/hub/devices/princeton_instruments/spectrapro_hrs", "description": "Plesty async driver for Acton Research (Princeton Instruments, Teledyne) SpectraPro monochromators.", "category": "devices", "vendor": "princeton_instruments", "web_url": "https://gitlab.com/plesty/hub/devices/princeton_instruments/spectrapro_hrs", "repo_url": "https://gitlab.com/plesty/hub/devices/princeton_instruments/spectrapro_hrs.git", "docs_url": "https://docs.plesty.net/spectrapro_hrs/", "latest_tag": "v0.9.0", "version": "", "standard": "quantum", "dependency": "plesty-spectrapro-hrs @ git+https://gitlab.com/plesty/hub/devices/princeton_instruments/spectrapro_hrs.git", "last_commit": "Merge branch 'exp' into 'main'", "last_activity_at": "2026-09-10T13:24:00.360000+00:00", "quality": {"checked": true, "gates": {"passed": 16, "failed": 0, "skipped": 4, "ok": true}, "tooling": {"plesty-sdk": "0.4.0", "plesty-lib": "0.4.0"}, "coverage_percent": 90.0, "field_tests": []}}, {"name": "plesty-cct", "slug": "cct11", "namespace": "plesty/hub/devices/thorlab/cct11", "description": "Plesty device driver for Thorlabs CCT-series compact spectrometers.", "category": "devices", "vendor": "thorlab", "web_url": "https://gitlab.com/plesty/hub/devices/thorlab/cct11", "repo_url": "https://gitlab.com/plesty/hub/devices/thorlab/cct11.git", "docs_url": "", "latest_tag": "v0.1.1", "version": "", "standard": "quantum", "dependency": "plesty-cct @ git+https://gitlab.com/plesty/hub/devices/thorlab/cct11.git", "last_commit": "Merge branch 'widgets-canvas-and-labdata-pin' into 'master'", "last_activity_at": "2026-09-04T09:59:21.280000+00:00", "quality": {"checked": true, "gates": {"passed": 13, "failed": 0, "skipped": 7, "ok": true}, "tooling": {"plesty-sdk": "0.3.3", "plesty-lib": "0.3.4"}, "coverage_percent": 95.0, "field_tests": []}}, {"name": "plesty-k10cr1", "slug": "plesty-k10cr1", "namespace": "plesty/hub/devices/thorlab/plesty-k10cr1", "description": "Plesty device for the Thorlabs K10CR1 cage rotation stage (APT protocol).", "category": "devices", "vendor": "thorlab", "web_url": "https://gitlab.com/plesty/hub/devices/thorlab/plesty-k10cr1", "repo_url": "https://gitlab.com/plesty/hub/devices/thorlab/plesty-k10cr1.git", "docs_url": "https://docs.plesty.net/plesty-k10cr1/", "latest_tag": "v0.3.0", "version": "", "standard": "quantum", "dependency": "plesty-k10cr1 @ git+https://gitlab.com/plesty/hub/devices/thorlab/plesty-k10cr1.git", "last_commit": "release: v0.3.0", "last_activity_at": "2026-09-09T13:41:15.390000+00:00", "quality": {"checked": true, "gates": {"passed": 17, "failed": 0, "skipped": 3, "ok": true}, "tooling": {"plesty-sdk": "0.4.0", "plesty-lib": "0.4.0"}, "coverage_percent": 92.0, "field_tests": [{"instrument": "K10CR1", "tier": "host", "generated_utc": "2026-09-09T13:17:46+00:00", "gates": {"passed": 5, "failed": 0, "skipped": 3, "ok": true}, "coverage": {"declared": 11, "verified": 4}, "findings": []}, {"instrument": "K10CR1", "tier": "client", "generated_utc": "2026-09-09T13:19:54+00:00", "gates": {"passed": 6, "failed": 0, "skipped": 2, "ok": true}, "coverage": {"declared": 19, "verified": 4}, "findings": []}]}}, {"name": "plesty-pm100d", "slug": "plesty-pm100d", "namespace": "plesty/hub/devices/thorlab/plesty-pm100d", "description": "A plesty pm100d device.", "category": "devices", "vendor": "thorlab", "web_url": "https://gitlab.com/plesty/hub/devices/thorlab/plesty-pm100d", "repo_url": "https://gitlab.com/plesty/hub/devices/thorlab/plesty-pm100d.git", "docs_url": "https://docs.plesty.net/plesty-pm100d/", "latest_tag": "v0.1.0", "version": "", "standard": "quantum", "dependency": "plesty-pm100d @ git+https://gitlab.com/plesty/hub/devices/thorlab/plesty-pm100d.git", "last_commit": "Merge branch 'test/field-test-0.3.2' into 'main'", "last_activity_at": "2026-09-08T08:23:07.721000+00:00", "quality": {"checked": true, "gates": {"passed": 17, "failed": 0, "skipped": 3, "ok": true}, "tooling": {"plesty-sdk": "0.3.2", "plesty-lib": "0.3.2"}, "coverage_percent": 91.0, "field_tests": [{"instrument": "S130C", "tier": "host", "generated_utc": "2026-08-12T13:00:05+00:00", "gates": {"passed": 8, "failed": 0, "skipped": 0, "ok": true}, "coverage": {"declared": 17, "verified": 11}, "findings": []}, {"instrument": "S130C", "tier": "client", "generated_utc": "2026-08-12T13:01:27+00:00", "gates": {"passed": 6, "failed": 0, "skipped": 2, "ok": true}, "coverage": {"declared": 27, "verified": 11}, "findings": []}]}}, {"name": "plesty-thorlabs-elliptec", "slug": "plesty-thorlabs-elliptec", "namespace": "plesty/hub/devices/thorlab/plesty-thorlabs-elliptec", "description": "A plesty thorlabs elliptec device.", "category": "devices", "vendor": "thorlab", "web_url": "https://gitlab.com/plesty/hub/devices/thorlab/plesty-thorlabs-elliptec", "repo_url": "https://gitlab.com/plesty/hub/devices/thorlab/plesty-thorlabs-elliptec.git", "docs_url": "https://docs.plesty.net/plesty-thorlabs-elliptec/", "latest_tag": "v0.1.0", "version": "", "standard": "quantum", "dependency": "plesty-thorlabs-elliptec @ git+https://gitlab.com/plesty/hub/devices/thorlab/plesty-thorlabs-elliptec.git", "last_commit": "Merge branch 'fix/expose-position-api' into 'main'", "last_activity_at": "2026-09-09T09:03:00.088000+00:00", "quality": {"checked": true, "gates": {"passed": 17, "failed": 0, "skipped": 3, "ok": true}, "tooling": {"plesty-sdk": "0.3.5", "plesty-lib": "0.3.5"}, "coverage_percent": 92.0, "field_tests": [{"instrument": "ELL14", "tier": "host", "generated_utc": "2026-08-28T11:23:52+00:00", "gates": {"passed": 4, "failed": 0, "skipped": 4, "ok": true}, "coverage": {"declared": 16, "verified": 7}, "findings": []}, {"instrument": "ELL14", "tier": "client", "generated_utc": "2026-08-28T11:24:32+00:00", "gates": {"passed": 6, "failed": 0, "skipped": 2, "ok": true}, "coverage": {"declared": 23, "verified": 7}, "findings": []}]}}, {"name": "plesty-thorlabs-powermeter", "slug": "powermeter", "namespace": "plesty/hub/devices/thorlab/powermeter", "description": "A plesty device for the Thorlabs PM-series optical power and energy meters.", "category": "devices", "vendor": "thorlab", "web_url": "https://gitlab.com/plesty/hub/devices/thorlab/powermeter", "repo_url": "https://gitlab.com/plesty/hub/devices/thorlab/powermeter.git", "docs_url": "https://docs.plesty.net/powermeter/", "latest_tag": "v0.1.0", "version": "", "standard": "quantum", "dependency": "plesty-thorlabs-powermeter @ git+https://gitlab.com/plesty/hub/devices/thorlab/powermeter.git", "last_commit": "chore(deps): drop the plesty-lib git pin for the 0.4.0 release", "last_activity_at": "2026-09-09T09:37:12.128000+00:00", "quality": {"checked": true, "gates": {"passed": 17, "failed": 0, "skipped": 3, "ok": true}, "tooling": {"plesty-sdk": "0.4.0", "plesty-lib": "0.4.0"}, "coverage_percent": 95.0, "field_tests": [{"instrument": "S121C", "tier": "host", "generated_utc": "2026-08-27T18:27:30+00:00", "gates": {"passed": 8, "failed": 0, "skipped": 0, "ok": true}, "coverage": {"declared": 19, "verified": 12}, "findings": []}, {"instrument": "S121C", "tier": "client", "generated_utc": "2026-08-27T18:28:35+00:00", "gates": {"passed": 6, "failed": 0, "skipped": 2, "ok": true}, "coverage": {"declared": 29, "verified": 12}, "findings": []}, {"instrument": "S155C", "tier": "host", "generated_utc": "2026-08-27T18:35:39+00:00", "gates": {"passed": 7, "failed": 0, "skipped": 1, "ok": true}, "coverage": {"declared": 19, "verified": 12}, "findings": []}, {"instrument": "S155C", "tier": "client", "generated_utc": "2026-08-27T18:35:51+00:00", "gates": {"passed": 6, "failed": 0, "skipped": 2, "ok": true}, "coverage": {"declared": 29, "verified": 12}, "findings": []}]}}, {"name": "thorlabs-cagerotator", "slug": "thorlabs-cagerotator", "namespace": "plesty/hub/devices/thorlab/thorlabs-cagerotator", "description": "", "category": "devices", "vendor": "thorlab", "web_url": "https://gitlab.com/plesty/hub/devices/thorlab/thorlabs-cagerotator", "repo_url": "https://gitlab.com/plesty/hub/devices/thorlab/thorlabs-cagerotator.git", "docs_url": "", "latest_tag": "", "version": "", "standard": "", "dependency": "thorlabs-cagerotator @ git+https://gitlab.com/plesty/hub/devices/thorlab/thorlabs-cagerotator.git", "last_commit": "", "last_activity_at": "2026-08-17T14:49:33.337000+00:00", "quality": {"checked": false, "gates": {"passed": 0, "failed": 0, "skipped": 0, "ok": false}, "tooling": null, "coverage_percent": null, "field_tests": []}}, {"name": "thorlabs-powermeter", "slug": "thorlabs-powermeter", "namespace": "plesty/hub/devices/thorlab/thorlabs-powermeter", "description": "", "category": "devices", "vendor": "thorlab", "web_url": "https://gitlab.com/plesty/hub/devices/thorlab/thorlabs-powermeter", "repo_url": "https://gitlab.com/plesty/hub/devices/thorlab/thorlabs-powermeter.git", "docs_url": "", "latest_tag": "", "version": "", "standard": "", "dependency": "thorlabs-powermeter @ git+https://gitlab.com/plesty/hub/devices/thorlab/thorlabs-powermeter.git", "last_commit": "", "last_activity_at": "2026-08-17T14:48:52.570000+00:00", "quality": {"checked": false, "gates": {"passed": 0, "failed": 0, "skipped": 0, "ok": false}, "tooling": null, "coverage_percent": null, "field_tests": []}}, {"name": "plesty-demo-experiment", "slug": "demo", "namespace": "plesty/hub/experiments/demo", "description": "PLESTY demo experiment: mock line scan showcasing the async Experiment ABC.", "category": "experiments", "vendor": "", "web_url": "https://gitlab.com/plesty/hub/experiments/demo", "repo_url": "https://gitlab.com/plesty/hub/experiments/demo.git", "docs_url": "https://docs.plesty.net/demo/", "latest_tag": "v0.1.0", "version": "", "standard": "quantum", "dependency": "plesty-demo-experiment @ git+https://gitlab.com/plesty/hub/experiments/demo.git", "last_commit": "Merge branch 'exp' into 'main'", "last_activity_at": "2026-08-25T08:05:24.712000+00:00", "quality": {"checked": false, "gates": {"passed": 0, "failed": 0, "skipped": 0, "ok": false}, "tooling": null, "coverage_percent": null, "field_tests": []}}, {"name": "plesty-magneto-pl", "slug": "plesty-magneto-pl", "namespace": "plesty/hub/experiments/plesty-magneto-pl", "description": "Magneto-photoluminescence spectra along an ordered magnetic-field path.", "category": "experiments", "vendor": "", "web_url": "https://gitlab.com/plesty/hub/experiments/plesty-magneto-pl", "repo_url": "https://gitlab.com/plesty/hub/experiments/plesty-magneto-pl.git", "docs_url": "https://docs.plesty.net/plesty-magneto-pl/", "latest_tag": "", "version": "", "standard": "quantum", "dependency": "plesty-magneto-pl @ git+https://gitlab.com/plesty/hub/experiments/plesty-magneto-pl.git", "last_commit": "Merge branch 'chore/deps-0.4.0-and-device-docs' into 'main'", "last_activity_at": "2026-09-09T10:12:27.414000+00:00", "quality": {"checked": true, "gates": {"passed": 15, "failed": 0, "skipped": 5, "ok": true}, "tooling": {"plesty-sdk": "0.4.0", "plesty-lib": "0.4.0"}, "coverage_percent": 95.0, "field_tests": []}}, {"name": "plesty-pl-image-scan", "slug": "plesty-pl-image-scan", "namespace": "plesty/hub/experiments/plesty-pl-image-scan", "description": "A plesty pl image scan experiment.", "category": "experiments", "vendor": "", "web_url": "https://gitlab.com/plesty/hub/experiments/plesty-pl-image-scan", "repo_url": "https://gitlab.com/plesty/hub/experiments/plesty-pl-image-scan.git", "docs_url": "https://docs.plesty.net/plesty-pl-image-scan/", "latest_tag": "", "version": "", "standard": "quantum", "dependency": "plesty-pl-image-scan @ git+https://gitlab.com/plesty/hub/experiments/plesty-pl-image-scan.git", "last_commit": "fix(ci): include the standard pipeline from main, not the exp ref", "last_activity_at": "2026-08-25T08:05:28.183000+00:00", "quality": {"checked": false, "gates": {"passed": 0, "failed": 0, "skipped": 0, "ok": false}, "tooling": null, "coverage_percent": null, "field_tests": []}}, {"name": "plesty-pol-pl", "slug": "plesty-pol-pl", "namespace": "plesty/hub/experiments/plesty-pol-pl", "description": "Polarization-dependent photoluminescence experiment, with a zero-hardware demo branch.", "category": "experiments", "vendor": "", "web_url": "https://gitlab.com/plesty/hub/experiments/plesty-pol-pl", "repo_url": "https://gitlab.com/plesty/hub/experiments/plesty-pol-pl.git", "docs_url": "https://docs.plesty.net/plesty-pol-pl/", "latest_tag": "", "version": "", "standard": "", "dependency": "plesty-pol-pl @ git+https://gitlab.com/plesty/hub/experiments/plesty-pol-pl.git", "last_commit": "chore: initial project structure", "last_activity_at": "2026-09-15T17:33:40.810000+00:00", "quality": {"checked": false, "gates": {"passed": 0, "failed": 0, "skipped": 0, "ok": false}, "tooling": null, "coverage_percent": null, "field_tests": []}}, {"name": "plesty-pow-pl", "slug": "plesty-pow-pl", "namespace": "plesty/hub/experiments/plesty-pow-pl", "description": "Polarization-resolved photoluminescence of quantum dots.", "category": "experiments", "vendor": "", "web_url": "https://gitlab.com/plesty/hub/experiments/plesty-pow-pl", "repo_url": "https://gitlab.com/plesty/hub/experiments/plesty-pow-pl.git", "docs_url": "https://docs.plesty.net/plesty-pow-pl/", "latest_tag": "", "version": "", "standard": "quantum", "dependency": "plesty-pow-pl @ git+https://gitlab.com/plesty/hub/experiments/plesty-pow-pl.git", "last_commit": "Merge branch 'exp' into 'main'", "last_activity_at": "2026-09-14T11:54:19.450000+00:00", "quality": {"checked": true, "gates": {"passed": 15, "failed": 0, "skipped": 5, "ok": true}, "tooling": {"plesty-sdk": "0.3.5", "plesty-lib": "0.3.5"}, "coverage_percent": 91.0, "field_tests": []}}]}