BLib — Third-Party Components
=============================

BLib bundles the following third-party libraries inside its jar using NeoForge/Fabric
jar-in-jar. Their CODE is exactly as published upstream; only their jar manifests have been
filled in - see "Note on metadata" below.

  com.just:just-core
  com.just:just-codec
  com.just:just-goap

      Origin:   https://maven.bvanseghi.dev/just
      Author:   bvanseghi
      Purpose:  just-core provides general functional utilities (Option and friends) used
                throughout BLib's API. just-codec provides the schema-based serialisation
                layer behind BLib's NBT and network codecs. just-goap provides the
                goal-oriented action planner that BLib's AI API is built on.

      Exact bundled versions are recorded in this jar's manifest under
      "Bundled-Dependencies", generated from the same build properties that select the
      jar-in-jar artifacts, so the two can never disagree.

Note on metadata
----------------
These upstream artifacts are published with a minimal manifest and POM — they carry no
Implementation-Title, vendor, licence or SCM entries. That is a gap in their publishing
configuration, not an indication of obfuscated or concealed code:

  - package and class names are complete and readable (com.just.codec.schema.CodecSchema,
    com.just.core.functional.option.Option, com.just.ai.goap.Agent, and so on)
  - debug symbols are intact — LineNumberTable and LocalVariableTable are present
    throughout, which obfuscation tooling removes
  - there is no reflection-based loading, no runtime class definition, no encryption and
    no string packing in these libraries or in BLib itself

WHAT BLIB CHANGES, AND WHAT IT DOES NOT
---------------------------------------
No class file in these libraries is altered in any way. The only modification is that each
bundled jar's META-INF/MANIFEST.MF - which upstream ships containing nothing but
"Manifest-Version: 1.0" - has been filled in so the library states its own name, version and
author. Those manifests attribute the work to bvanseghi, not to BLib, and each carries a
Repackaged-By entry recording that BLib added the metadata.

This is done because the upstream artifacts cannot be republished by this project, and three
unnamed jars nested inside a mod is a pattern that invites exactly the suspicion this file
exists to answer.

Class counts are unchanged by the process: just-core 118, just-codec 82, just-goap 129.

Anyone wishing to inspect them can extract them from this jar at:

    META-INF/jarjar/just-core-<version>.jar
    META-INF/jarjar/just-codec-<version>.jar
    META-INF/jarjar/just-goap-<version>.jar

BLib itself
-----------
BLib is published by Stargazer Studios with full manifest metadata, and its own sources and
javadoc jars are published alongside each release.
