@passioncode-ai/fabric-agent-adapter 0.5.1 → 0.5.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,61 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.5.3 - 2026-09-30
4
+
5
+ Follows Fabric ADR-0092 (the organization's licence) and the PassionCode.ai repository
6
+ standard (fabric-workspace `knowledge/repository-standard.md`). No behaviour of the skills'
7
+ scripts, the kits or the probe changes; the contract pin stays at `2ea54f7`.
8
+
9
+ ### Changed
10
+
11
+ - **License.** From this version the adapter is open source under the GNU AGPL-3.0, or
12
+ available under a commercial license from PassionCode.ai (contact@passioncode.ai): SPDX
13
+ `AGPL-3.0-only OR LicenseRef-PassionCode-Commercial` in `package.json`, the marketplace entry,
14
+ the plugin manifest and the three skills' `license:`. `LICENSE` is the unmodified AGPL-3.0 text
15
+ and `COMMERCIAL-LICENSE.md` is new; both, with `CLA.md`, are byte for byte the knowledge base
16
+ templates and now ship in the npm package. Versions v0.4.3 to v0.5.2 stay under PolyForm
17
+ Noncommercial or Internal Use, and v0.4.2 and earlier under MIT.
18
+ - **The skills send a PassionCode.ai repository to the repository standard.**
19
+ `creating-fabric-agents` (step 2), `adapting-projects-to-fabric` and `building-fabric-services`
20
+ (a new section each) name the licence files, the README quick start with a verified MCP call,
21
+ `AGENTS.md` read-first and `CLAUDE.md` `@AGENTS.md`; an agent someone builds for themselves is
22
+ outside the standard, and its licence is its owner's choice.
23
+ - **README** follows the standard: the first paragraph says what the adapter is and that it
24
+ works without Fabric; `## Quick start for a new teammate` (Install, Configure, MCP, Develop)
25
+ replaces "Install", "Verify one service" and "Validate this repository", and its MCP step was
26
+ run with a real client (Claude Code 2.1.285, `--strict-mcp-config`, a temporary config).
27
+ - **AGENTS.md** opens with the knowledge base *Read first* block and closes with *After work*.
28
+
29
+ ### Added
30
+
31
+ - `test/validate.py` fails a tree whose `LICENSE`, `COMMERCIAL-LICENSE.md` or `CLA.md` differs
32
+ from the template by one byte, whose README still states the retired licence or lacks the
33
+ licensing wording, whose package does not ship the licence files, or whose skill drops the
34
+ repository-standard paragraph; each rule was watched failing on a planted copy
35
+ (`test/test_validate.py` `LicenseTests`, `RepositoryStandardTests`).
36
+
37
+ ## 0.5.2 - 2026-09-30
38
+
39
+ Follows Fabric Agent Contract DEC-0018. **Contract pin** moves from `9cd778e` to `2ea54f7`.
40
+
41
+ ### Fixed
42
+
43
+ - **Real clients could not connect to a kit-built MCP surface.** Claude Code 2.1.285 opens
44
+ every HTTP server with `initialize`; `McpToolServer` answered `-32601`, so the client marked
45
+ the server `failed` before calling `tools/list`. Every test drove the dispatcher directly,
46
+ so none saw it. It now answers `initialize` (echoing a supported protocol version) and
47
+ `ping`, and the sample answers `GET /mcp` with 405.
48
+ - **Every tool's `outputSchema` is rooted at `type: object`** (DEC-0018, FAC-SEM-023): the job
49
+ union is `{type: object, oneOf: [envelope, handle]}` in both kits, `tool_for_capability` /
50
+ `toolForCapability` and `McpToolServer.add_tool` refuse any other root, and the probe gains
51
+ `interop.output-schema-object`, which FAILs a tool whose root is not type object.
52
+
53
+ ### Added
54
+
55
+ - `test/test_real_client.py`, opt-in (`FABRIC_REAL_CLIENT=1`): the sample service listed by
56
+ the installed `claude` CLI, in a throwaway directory with `--strict-mcp-config`, stopped at
57
+ its init event before any model call.
58
+
3
59
  ## 0.5.1 - 2026-09-30
4
60
 
5
61
  Aligns the kits, the probe and the provider writer with the contract owner's rulings,
package/CLA.md ADDED
@@ -0,0 +1,28 @@
1
+ # Contributor License Agreement
2
+
3
+ This agreement lets PassionCode.ai accept your contribution and keep offering the
4
+ software under its source-available licenses and under separate commercial licenses.
5
+ It is between you and Siarhei Sheleh (the "Maintainer").
6
+
7
+ By opening a pull request or otherwise submitting a contribution to a PassionCode.ai
8
+ repository, and ticking the CLA box in the pull request template, you agree to the
9
+ following for every contribution you submit:
10
+
11
+ 1. **Copyright license.** You grant the Maintainer a perpetual, worldwide,
12
+ non-exclusive, royalty-free, irrevocable license to reproduce, prepare derivative
13
+ works of, publicly display, publicly perform, sublicense and distribute your
14
+ contribution and such derivative works, under any license terms, including
15
+ commercial terms.
16
+ 2. **Patent license.** You grant the Maintainer, and everyone who receives the
17
+ software from the Maintainer, a perpetual, worldwide, non-exclusive, royalty-free,
18
+ irrevocable patent license to make, use, sell, offer for sale, import and otherwise
19
+ transfer your contribution, where your patents would otherwise be infringed by it
20
+ alone or combined with the software it was submitted to.
21
+ 3. **You can make this grant.** The contribution is your original work, or you have
22
+ the right to submit it under this agreement. If your employer has rights to what you
23
+ create, you have its permission or it has waived those rights for this contribution.
24
+ Third-party material in a contribution is identified, with its license.
25
+ 4. **No other obligations.** You keep the copyright in your contribution. You provide
26
+ it "as is", without warranties. The Maintainer is not obliged to use it.
27
+
28
+ Questions: contact@passioncode.ai
@@ -0,0 +1,11 @@
1
+ # Commercial license
2
+
3
+ This repository is open source under the [GNU Affero General Public License v3.0](LICENSE)
4
+ (`AGPL-3.0-only`). PassionCode.ai also offers it under a commercial license, for use that does not
5
+ meet the AGPL's terms — for example inside a closed-source product, or as a modified hosted
6
+ service whose source is not published.
7
+
8
+ To obtain a commercial license, write to **contact@passioncode.ai**.
9
+
10
+ SPDX: `AGPL-3.0-only OR LicenseRef-PassionCode-Commercial`. Copyright (c) 2026 Siarhei Sheleh.
11
+ Contributions are accepted under [CLA.md](CLA.md), which allows this dual licence.