5 Commits
Author SHA1 Message Date
Dario LipicarandClaude Opus 5 5f75c9418b chore(deps): track master for protocol, cpp-sdk, plugin-qt and qt-sdk (#6)
* feat: take the Qt host runtime from logos-qt-host, not logos-qt-sdk

LogosTest.cmake linked logos-qt-sdk::logos_qt_sdk for the host runtime a
module test needs — LogosAPI, LogosAPIProvider, the provider bases. B1 moved
that code to logos-plugin-qt, which exports it as logos-qt-host::logos_qt_host,
so name that target instead.

The root it comes from is picked from LOGOS_QT_HOST_ROOT, falling back to
LOGOS_QT_SDK_ROOT. The fallback is not decoration: every caller today reaches
this file through logos-module-builder, which passes only LOGOS_QT_SDK_ROOT,
and requiring the new variable would take every module's unit-tests check down
until that repo moves. Whichever root is chosen is reported by name in the
configure log, and the imported target is checked before it is linked — a
find_package that hands back no target now stops the configure instead of
deferring to a wall of undefined LogosAPI symbols.

logos-qt-sdk stays an input and stays on the include path when a caller
supplies both roots, because it still owns the Qt-typed headers that are NOT
the host runtime: logos_qt_lp_bridge.h and logos_qt_wire.h (generated consumer
wrappers include them by name) and logos_ui_plugin_context.h. It is ordered
after the host runtime's include dir so the five shared header names resolve
to qt-host.

Two things this repo never had are added so the repoint is verifiable here at
all: `checks.<sys>.example-tests` builds and runs examples/basic-module-test
through LogosTest.cmake on the qt-host path, and `example-tests-qt-sdk` does
the same on the fallback path so a change to one cannot quietly break the
other. Both were needed to find two latent breaks in nix/mkLogosModuleTests.nix
— it never passed CMAKE_MODULE_PATH, so `include(LogosTest)` could not resolve,
and its checkPhase drove ctest, which reports "No tests were found!!!" and
exits 0. The check phase now locates the test binaries itself and fails when
there are none.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

* feat(b2b): LOGOS_QT_HOST_ROOT is the only host-runtime root

LogosTest.cmake accepted LOGOS_QT_SDK_ROOT as an alternative source of the Qt
host runtime, for callers that had not migrated. logos-qt-sdk stopped forwarding
those headers, so that branch now configures cleanly -- QT_HOST_INCLUDE is set,
find_package(logos-qt-sdk) resolves, the target imports -- and then dies much
later on "logos_api.h: No such file". It is deleted; a missing LOGOS_QT_HOST_ROOT
is a FATAL_ERROR that names logos-qt-sdk as explicitly NOT a substitute.

LOGOS_QT_SDK_ROOT keeps its other, real job: the Qt-typed consumer headers
logos-qt-sdk owns (logos_qt_lp_bridge.h, logos_qt_wire.h,
logos_ui_plugin_context.h). That block's layout probe moves off logos_api.h --
absent from both of that prefix's layouts now -- onto logos_qt_wire.h.

mkLogosModuleTests.nix makes logosQtHost a required argument instead of one half
of a two-way assert, and the flake drops the example-tests-qt-sdk check, which
existed to cover the pre-split path that no longer exists. logosQtSdk is passed
alongside logosQtHost in the remaining check so the Qt-typed headers stay
covered.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

* chore(deps): rev-pin the B4 chain at the revs that are actually pushed

The lock this branch carried named logos-plugin-qt 8ccb1fc, which is a stale
commit on feat/sdk-codegen-b3-d11 and an ancestor of NEITHER b4 branch, so the
qt-host this repo's LogosTest.cmake links predated the windows-target work
every other consumer in the chain has moved to. The other three inputs were
worse than stale: their urls tracked master, and the revs beside them were only
ever right by accident.

All four are now rev-pinned in the url, because none of them is on a master:

  logos-protocol   c8bab12  feat/per-client-token-store (contains e6d5b57)
  logos-cpp-sdk    a04b278  feat/sdk-codegen-b3-d11     (contains e3744fb8)
  logos-plugin-qt  cc24fa1  feat/b4-qt-host-windows-target (contains 8846fc5)
  logos-qt-sdk     8a06b87  feat/sdk-codegen-b3-d11     (contains c6be61d)

Every one is a fast-forward from its own master, so nothing is dropped, and
each is the rev logos-qt-sdk and logos-view-module-runtime already pin — which
is the point of cc24fa1 in particular. logos-qt-sdk pins plugin-qt in its own
url and this flake does not redirect it, so a different root pin would put two
logos-qt-host prefixes on one link line. They resolve to a single store path
(v780ipqq), verified by evaluating both instances.

checks.aarch64-darwin.example-tests builds and its six tests run and pass.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

* chore(deps): track master for protocol, cpp-sdk, plugin-qt and qt-sdk

All four upstream PRs merged (#59, #138, #19, #33), so the rev pins that bridged
to them are retired and their rationales rewritten.

The logos-plugin-qt `follows` on the logos-qt-sdk input STAYS, and is now the
only thing holding the property the rev pin used to hold with it: qt-sdk's
default package propagates whatever logos-qt-host it resolved, so without the
follows the example tests could see two logos-qt-host store paths. Verified: the
example-tests closure contains exactly ONE logos-qt-host derivation.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
2026-08-19 18:40:53 -03:00
Dario LipicarandClaude Opus 4.8 9665bc7929 Retarget LogosTest.cmake to the qt-split SDK stack (#4)
* Retarget LogosTest.cmake to the qt-split SDK stack

The test harness linked logos-cpp-sdk::logos_sdk, which no longer exists
after the Qt split: the Qt developer layer moved to logos-qt-sdk and the
transport/consumer core into the logos-protocol library. LogosTest.cmake
now resolves three roots (LOGOS_CPP_SDK_ROOT via logos_module_context.h,
plus LOGOS_QT_SDK_ROOT / LOGOS_PROTOCOL_ROOT), takes mock-transport
headers from logos-protocol, links logos-qt-sdk::logos_qt_sdk +
logos-cpp-sdk::logos_headers, and in source layouts compiles the qt-sdk
sources while linking the protocol library.

nix/mkLogosModuleTests.nix gains required logosQtSdk/logosProtocol args;
the devShell exports the new roots. flake.lock pins the extraction-chain
branch revs (temporary — re-lock against masters when the chain merges).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* lock: qt-split chain fully merged — pins advance to masters (cpp-sdk 87abcd8, protocol 9de4165, qt-sdk 8d0e5d9)

---------

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-12 23:57:54 -03:00
Dario Lipicar 44816073a4 bump dependencies (#2)
* bump dependencies

* fix flake.nix
2026-05-07 12:42:41 -03:00
Iuri Matias 55b15075b5 fixes to make it behave better with go libs 2026-04-08 17:46:43 -04:00
Iuri Matias bf3ff3f7cb test framework for logos modules 2026-04-02 16:49:47 -04:00