# Third-Party Notices and Test Provenance

Moon Proto Lab's original MoonBit and integration code is released under the repository's MIT License. This file records external specifications, tools, dependencies, and test inputs used for verification. Unless explicitly stated below, their source code is not copied into this repository.

## Protocol Buffers specification and implementations

- Project: Protocol Buffers
- Upstream: <https://github.com/protocolbuffers/protobuf>
- License: BSD 3-Clause
- Use in this repository: public wire-format and protobuf JSON semantics are used as the interoperability specification. The CI installs the Python `protobuf` package, and the Go oracle uses `google.golang.org/protobuf`.
- Scope: Python and Go are independent test oracles. They construct descriptors and regenerate binary/JSON fixtures so MoonBit behavior can be checked against mature implementations.

The checked-in files under `tests/fixtures/` are small test messages generated by this repository's oracle programs or intentionally mutated negative cases. They are test data, not copied upstream source files.

## MoonBit protobuf runtime and generator

- Project: `moonbitlang/protoc-gen-mbt`
- Upstream: <https://github.com/moonbitlang/protoc-gen-mbt>
- License: Apache-2.0
- Related runtime module: `moonbitlang/protobuf`
- Runtime metadata/license: Apache-2.0 WITH LLVM-exception, as declared by its Mooncakes module metadata
- Use in this repository: public README/spec contracts are checked for compatibility, and an optional live-generator path can invoke an installed or locally built official generator.

Moon Proto Lab does not copy the official generator or runtime implementation. Files under `tests/differential/official_contract_fixture/` are clearly labeled, hand-authored output-shape contract fixtures. They model a few expected public type-shape snippets and must not be described as actual official generator output.

## Conformance-lite cases

`tests/conformance/upstream_lite_cases.json` is an original, small, upstream-style model of selected protobuf input/JSON output semantics. It is not copied from, and is not a mirror of, the official Protocol Buffers conformance suite. Its case names and coverage axes are local test taxonomy used to connect MoonBit golden tests with Python/Go oracle fixtures.

## Generated artifacts

Reports under `generated/` are reproducible build/test outputs and are ignored by Git. Generated MoonBit source used by compile checks is created in temporary directories and removed after verification. Any checked-in contract fixture is labeled with its provenance in the file header.
