# Third-party notices and source distribution

## Application

Copyright 2026 James. The Desabenab application, native adapter, capability tooling and regression fixtures are distributed under **GPL-3.0-or-later**; the full text is in `LICENSE`. The foundation documentation's MIT grant is preserved in `LICENSE-ORIGINAL-MIT.txt`.

This release uses a GPL-compatible application licence for the combined distribution. No upstream authorship is reassigned to James. Required upstream names remain present in their original notices.

## IRremoteESP8266

- Repository: https://github.com/crankyoldgit/IRremoteESP8266
- Exact revision: `1e2f0f3ef0a93cbf2a8ddb2e95130f8f4c584b3f` (2.9.0 source)
- Source archive: `upstream-irremote.tar.gz`; archive SHA-256 is in `sources.json`.
- Included paths: `src/`, `test/IRsend_test.h`, `LICENSE.txt`, `README.md`, `SupportedProtocols.md`, `library.properties`.
- Upstream files are **unmodified**. Their copyright headers, contributor references and notices remain intact.
- Upstream root `LICENSE.txt` contains LGPL 2.1. The historical `src/IRremoteESP8266.h` header also contains a GPL notice and a requirement to retain the preceding attribution. Both are preserved. This project does not erase that file-specific notice or label every upstream file MIT/LGPL-only.
- Full upstream LGPL text is also available separately as `LICENSE-UPSTREAM-LGPL-2.1.txt`. GPL version 3 is supplied as the application `LICENSE`.

Credits include the original library authors and subsequent contributors named in the unchanged files: Ken Shirriff, Mark Szabo, Sebastien Warin, David Conran, sillyfrog, Ville Skyttä, Mark Kuchel, and the other authors credited by upstream. These names identify community source provenance, not project maintainers or endorsements.

The native adapter `generate-native.cpp` calls the selected upstream classes listed in `coverage.json` for every API request. Other source modules are included for build dependencies. `build-native.py` verifies and expands the archive and compiles the adapter; `generate-catalogue.py` probes capabilities and creates regression fixtures. No upstream code is patched.

## Generated data and corresponding source

`signals.json` is a regression fixture and is never loaded by the runtime API or published as a static signal asset. `catalogue.json` and `profile-specs.json` identify probed capabilities and selected remote mappings. They are supplied under the application GPL-3.0-or-later terms with the complete generation sources, build instructions, input selection and unmodified upstream archive.

The deployed website serves `source.tar.gz`, containing all application sources, scripts, catalogue inputs and licence files, plus `upstream-irremote.tar.gz`. Users can modify the source and regenerate/rebuild the complete application. The build's explicit release manifest is `release-files.json`. Do not remove corresponding source or notices from redistributed builds.

The native compiled adapter is built on the deployment host or in the Docker image from the supplied corresponding source. It is not included in the static web distribution. No WebAssembly binary or modified upstream library is shipped to browsers.

## SmartIR

SmartIR was audited at the revision in `sources.json`, but **no SmartIR code or command data is included** in this release. `coverage.json` contains only source identifiers and metadata needed to describe the audit. Its examined climate recordings lack explicit carrier-frequency and duty evidence suitable for this array contract. If material is added later, preserve its complete MIT notice, including the copyright of Vassilis Panos, pin source revisions and establish frequency provenance. The upstream name is used only for factual acknowledgement, not derivative branding.

## Future imports

Every import must record its exact source revision, original and local paths, applicable file licences, complete notices, modifications and dates. Preserve source authorship and provide any required corresponding source/build materials with releases. Do not infer model compatibility or invent carrier frequency from a brand name.
