Commit Graph
59 Commits
Author SHA1 Message Date
Dario LipicarandClaude Opus 4.8 1705bf77ec chore: add logos-delivery-module and logos-delivery-demo submodules (#90)
* chore: add logos-delivery-module and logos-delivery-demo submodules

Register the delivery module and its demo UI app as flake submodules:

- Add both as git submodules under repos/
- scripts/ws: new "Delivery" section in the REPOS array (flake repos)
- flake.nix: input blocks with follows
  - logos-delivery-module follows logos-module-builder + nix-bundle-lgx
    (external logos-delivery / rln input left un-followed)
  - logos-delivery-demo's delivery_module input follows logos-delivery-module
- nix/dep-graph.nix: matching dependency-graph entries

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

* chore: bump logos-libp2p-module to latest master

Bump the submodule 8ba1a52 -> 31ecb52 (latest master). The new revision
adds two workspace-dependency inputs (logoscore-cli, package-manager) that
the openmetrics e2e drives, so register the matching follows and refresh
the dep-graph entry:

- flake.nix: pin -> 31ecb52; add inputs.logoscore-cli -> logos-logoscore-cli
  and inputs.package-manager -> logos-package-manager follows
- nix/dep-graph.nix: deps/follows updated to match (hasTests stays true)

External inputs (vacp2p/nim-libp2p, openmetrics-module) are left un-followed.

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

---------

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-23 10:50:51 -03:00
Dario LipicarandClaude Opus 4.8 6577c18cf0 chore: pin RAILGUN private-tx landing (railgun + keystore#4 + eth-rpc#4 + backend#7 + ui#7) (#89)
* chore: pin railgun private-tx landing — railgun + keystore#4 + eth-rpc#4 + backend#7 + ui#7

Adds the RAILGUN private-transactions module + wires it into the EVM wallet:

  logos-evm-railgun-module   NEW → 0e4928a  (shield/transfer/unshield + 4337 relayed_send + init_from_seed)
  logos-evm-keystore-module  0419b73 → 620ec17  (sign_digest: raw 32-byte signing)
  logos-evm-eth-rpc-module   de295ef → a4b2b28  (raw_rpc_url: proxied bundler POST)
  logos-evm-wallet-backend   209ca88 → c0db18a  (RAILGUN coordinator: init_private/shield/private_send/view)
  logos-evm-wallet-ui        033e74e → d716552  (Private tab: shield / private send / shielded balance)

The relayer keeps railgun keys in railgun, the EOA key in keystore (bridge-signer
over IPC), and routes the bundler submit through net-proxy. Sepolia-first,
mainnet-gated, UNAUDITED warnings throughout. Component PRs: keystore#4, eth-rpc#4,
backend#7, ui#7 (railgun on main). Raised for pre-merge Tests-and-Doctests
validation; re-pin to merged masters once the component PRs land.

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

* chore: pin railgun infra prereqs — module-builder#137 + rust-sdk#22 (merged)

  logos-module-builder  7bcd2de → e14e438  (nix.rust.toolchain: per-module rust toolchain)
  logos-rust-sdk        eff1ad5 → 9957a9d  (lift Send on single-mode module instances)

Both merged to their masters. They enable the RAILGUN module's nix build (alloy/
ruint need rustc >=1.91; the engine's signer is non-Send). Additive/backward-compat.

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

* chore: re-pin railgun private-tx chain to merged masters

The 9-repo merge chain landed; re-pin every input from its feature/intermediate
commit to its merged master (flake.nix URLs + flake.lock + gitlinks):

  logos-module-builder             e14e438 → 8bb7bd8  (#137 nix.rust + #138 rust-sdk Send-lift)
  logos-evm-keystore-module        620ec17 → 1ac3869  (sign_digest, #4)
  logos-evm-eth-rpc-module         a4b2b28 → bf08ea9  (raw_rpc_url, #4)
  logos-evm-railgun-module         babda0a → 4444b22  (deps re-pinned to merged main)
  logos-evm-wallet-backend-module  61c1cf7 → 910a7cd  (RAILGUN private coordinator, #7)
  logos-evm-wallet-ui              ab63a82 → 3736386  (Private RAILGUN tab, #7)

logos-rust-sdk already pinned at the merged master 9957a9d (#22). The component
PRs validated green in run 27908162706 against the same trees (squash-merges
preserved tree content); re-triggering Tests-and-Doctests as the final gate.

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

---------

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-21 14:50:53 -03:00
Dario LipicarandClaude Opus 4.8 894b360bd7 chore: add EVM wallet modules to the workspace (7 repos) (#87)
Registers the EVM multi-chain wallet — six Logos modules plus the
fail-closed net-proxy crate — as workspace submodules + flake inputs so
they build/test through `ws` with the rest of the tree. All seven are
pinned to their merged `main`.

  logos-evm-net-proxy             f1a5564  (Rust crate; fail-closed RPC chokepoint)
  logos-evm-keystore-module       0419b73  (Rust cdylib module)
  logos-evm-eth-rpc-module        de295ef  (Rust cdylib module, concurrency:multi)
  logos-evm-token-list-module     283e711  (Rust cdylib module)
  logos-evm-uniswap-module        e06d777  (Rust cdylib module, concurrency:multi)
  logos-evm-wallet-backend-module 394e3a3  (Rust coordinator + tx builder)
  logos-evm-wallet-ui             033e74e  (universal C++ QtRO+QML UI)

Wiring:
  - .gitmodules: 7 submodules. dir == input name == GitHub slug
    (logos-evm-*). The doctest matrix (tests-and-doctests.yml) intersects
    logos-doctest-hub's repos.json names against submodule DIR names, and
    the hub names must be the slug for the github.io/<slug> report URL —
    so the dir has to be the slug too. (No inputToDirOverrides needed.)
  - flake.nix: inputs with follows wiring every cross-dep and
    logos-module-builder to the workspace's shared inputs, so an
    --auto-local override of any one propagates downstream.
  - scripts/ws: REPOS entries + an `evm-wallet` group. keystore +
    token-list ship no committed flake.lock, so get_manual_follows()
    declares their module-builder dep by hand.
  - nix/dep-graph.nix: regenerated (repoInputNames is derived from it).
  - flake.lock: the 7 inputs added; no existing input's rev changed.

Based off master: master's logos-module-builder (38ddf92, with the
nix.rust external-dep support these Rust cdylib modules need) is newer
than the cdylib-universal branch's pin, so master is the correct base.

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-20 18:26:14 -03:00
Dario LipicarandClaude Opus 4.7 0643190345 Phases 2–4: logos-qt-sdk submodule + Qt-split repins + follows (#65)
* chore: bump lgpd chain pins so plain builds get the guarded downloader

Scoped 4-input bump (cpp-sdk, package-downloader,
package-downloader-module, package-manager-ui):

- logos-cpp-sdk 25c88f4d -> 800f65a: provides logos_module_context.h
  which package_downloader_impl.h now requires (PR #61).
- logos-package-downloader dea6503 -> 96371ef: defensive objOrEmpty /
  is_object guards so a null in index.json no longer throws
  type_error.306.
- logos-package-downloader-module 5d4bc2a -> ab4169f: legacy
  releaseTag method removal + resolver-fence failures attributed to
  the requested package(s).
- logos-package-manager-ui f3f9a03 -> b21c9ba: multi-repo API
  migration + nameless-error-row defense-in-depth.

A plain `nix build .#logos-basecamp` (no --override-input) now links
the guarded lgpd; verified the closure's libpackage_downloader_lib
carries the post-guard code. Edited the 4 url= lines by hand rather
than `ws sync-graph` (which would have bumped 17 unrelated submodule
pins); a later sync-graph run will reconcile the rest.

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

* Add logos-protocol: workspace wiring for the protocol extraction

New Foundation repo logos-protocol hosts the transport/token/IPC layer
extracted from logos-cpp-sdk behind the versioned lp_* C ABI.

- .gitmodules + repos/logos-protocol submodule
- flake.nix: logos-protocol input; logos-cpp-sdk follows logos-protocol;
  cpp-sdk pinned to its PR branch (bump at merge)
- flake.lock: lock the two changed inputs
- nix/dep-graph.nix: protocol entry + cpp-sdk dep edge (surgical; full
  sync-graph regeneration deferred until the nightly-bump drift settles)
- scripts/ws: REPOS entry (Foundation) + core group

* Phase 2-4 wiring: logos-qt-sdk submodule + Qt-split repins + qt-sdk follows

- repos/logos-qt-sdk submodule (Foundation; core group; ws REPOS)
- flake.nix: logos-qt-sdk input (temporarily over ssh while the repo is
  private); repins to the qt-split branch heads of cpp-sdk/protocol/
  module-builder/plugin-qt/liblogos/module/module-client/basecamp;
  follows for the retargeted repos' new logos-protocol/logos-qt-sdk
  inputs (incl. logoscore-cli)
- dep-graph: qt-sdk node + new edges (surgical; full sync-graph still
  deferred until the nightly-bump drift settles)

* fix: repin logos-module-builder to 59983c0 (restored universal-module cmake path)

The previous module-builder pin's LogosModule.cmake sync dropped the
generated_code glob / metadata copy / api-style blocks, so universal
modules built without Qt-plugin glue and capability_module failed to
load, breaking all cross-module IPC in the integration gate.

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

* chore: repin gate inputs — logoscore-cli P2 head, test-modules/capability master

logoscore-cli was pinned pre-retarget (5a1cf746, before the qt-split link
commit); test-modules/capability rode stale nightly revs. Pin all three so
the integration gate runs on committed pins, no overrides.

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

* chore: repin logos-test-modules to qt-split branch (unit-test harness retarget)

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

* chore: logos-qt-sdk is public — switch flake input from git+ssh to github:

Same rev (b64f9102), just the fetcher: anonymous tarball fetches work now,
so CI needs no ssh key or API token for this input.

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

* chore: bump module-builder pin — inner mkLogosModuleTests import fix

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

* fix: register logos-lidl in .gitmodules, drop leaked openmetrics gitlink

The Phase 2-4 wiring commit swept two local gitlinks into the tree:
repos/logos-lidl (a real chain repo — now properly registered, pinned at
the feat/lidl-frontend head) and repos/openmetrics-module (an untracked
local checkout that exists neither on master nor in .gitmodules —
removed). 'git submodule update --init' died on the unregistered paths,
killing every job in the new tests-and-doctests workflow at setup.

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

* fix: align submodule gitlinks with flake pins

The tests-and-doctests workflow runs against the checked-out gitlink
state, so gitlinks must match the flake pins: module-builder → cae33ce
(inner mkLogosModuleTests import fix), module-client → 2bf380e (facade
fail-fast fix), and chat-ui/storage-module/nix-bundle-dir back to
master's pointers (drifted in the bump merge resolution).

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

* fix: pin logoscore-py tagged-bytes branch — the one red in ws test --all

The protocol's canonical {"_bytes"} result form leaked through the
python client's call() and its repr went back over the wire
(test_return_bytes_size: 21 != 5). Fixed in
logos-co/logos-logoscore-py#4; temporary pin, drop at merge.

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

* fix: pin logoscore-py tagged-bytes branch — the one red in ws test --all

The protocol's canonical {"_bytes"} result form leaked through the
python client's call() and its repr went back over the wire
(test_return_bytes_size: 21 != 5). Fixed in
logos-co/logos-logoscore-py#4; temporary pin, drop at merge.

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

* chore: bump builder (QML-path arg fix) + cpp-sdk (doctest logoscore pin)

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

* chore: bump basecamp (vmr/liblogos lock fixes) + cpp-sdk (nested-builder doctest overrides)

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

* chore: bump cpp-sdk — doctest overrides applied to all three specs

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

* chore: bump vmr (unit-test link fix) + pin standalone-app retarget branch

ws test --all reached both once the QML eval fix landed: vmr's
tests/CMakeLists.txt still linked the dead logos_sdk archive, and the
workspace still pinned standalone-app master (the retarget lives on
logos-co/logos-standalone-app#20).

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

* chore: bump standalone-app — master merge brings the 3-arg spawn caller

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

* chore: bump basecamp — diagnostic 300s first-action waits

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

* chore: bump basecamp — design-system/qt-mcp lock fixes, drop diagnostic waits

* chore: bump chain pins — rust-sdk cdylib adoption closes the ipc-test floor

liblogos cf793ea (authToken property for the cdylib glue) · logoscore
616cb07 · protocol 1ca34a0 (integers stay integers across the C ABI) ·
qt-sdk 019ac36 (lock) · rust-sdk d85d49b (fixtures on the cdylib path:
one protocol stack + logos_module_accept_token handshake — ipc-test
green locally).

* chore: bump rust-sdk — rust-provider doctest ported to the cdylib path

* chore: bump tutorial — outcome-agnostic bad-bind doctest step

* chore: bump tutorial — wait_for gate before the Modules click

* chore: bump tutorial — Settings-first Modules navigation

* chore: call-error channel for typed wrappers — pins + tutorial demo

protocol 6492494 (CallError + err-out invoke overloads; lp_invoke
returns LP_ERR_UNAVAILABLE + canonical error JSON for unacquirable
targets) · cpp-sdk bd24fb6 (generated wrappers take a trailing
logos::CallError* = nullptr; dispatch catch-alls) · qt-sdk/builder/
rust-sdk lock layer · tutorial 65da5c3 (sumVia demonstrates the
out-param; returns -1 on a failed bind call).

* chore: bump rust-sdk + cpp-sdk pins for the parity doctest set

logos-rust-sdk -> f263e7c: cross-language feature-parity doctest
(contract-first C++ cdylib + Rust-first module + universal C++ consumer,
typed calls/events in both directions), lidl-gen parity features
(--from-rust, bind, typed event decode, dep clients, on_context_ready),
ipc fixtures already on the cdylib path.

logos-cpp-sdk -> 810e7c6: generated-wrapper error channel
(logos::CallError out-param) + generated onInit ordering fix (modules
aggregate + event wiring before onContextReady so universal modules can
subscribe from the hook).

Gitlinks aligned with the pins.

* ci: generate a root index on gh-pages so the Pages root stops 404ing

The publish job writes each run's reports under branch/<name>/ or
nightly/<date>/ (peaceiris keep_files merge) and generates an index one
level down at <base>/index.html — but nothing ever wrote site/index.html,
so https://logos-co.github.io/logos-workspace/ itself returned 404 while
every deep report link worked.

The arrange step now enumerates the report sets already published on
gh-pages (shallow clone of the branch; tolerant of it not existing on the
first run), merges in the current run's base, and writes a root index
grouping them as Nightly / Branches.

* ci: don't let a failed cachix post-step push fail a green test job

Run 27421167515: ws test --all finished 21 passed / 0 failed, every doctest
suite green on both platforms — but the job (and run) went red because the
cachix action's post step failed pushing some store paths (exit 3). The
cache is an optimization; continue-on-error on the setup step covers its
post hook too.

* chore: bump rust-sdk to 713abbc — multi-spec doctest workflow

The suite's Doc-Tests workflow now lists BOTH specs in its run block, so
the tests-and-doctests pipeline (which parses that block for spec
discovery) picks up the cross-language-composition doctest alongside
rust-provider-module. Verified green on both platforms in the rust-sdk
repo (run 27424612866).

* chore: bump builder + rust-sdk for the composition doctests + load-time context hook

logos-module-builder -> 48b7ff6 (feat/cdylib-interface): the two
cross-language composition doctests now live HERE (moved from rust-sdk —
they exercise the builder's authoring surface across both SDKs), plus the
mirror scenario (LIDL-first Rust -> pure C++ -> pure Rust) is new. Lock
carries cpp-sdk 2642133: the cdylib ready-latch — the context hook now
fires at module LOAD (once context + emit callback are wired; tokens
seeded before context in the glue), matching universal C++ semantics.

logos-rust-sdk -> b145bbd: EventSubscription (typed event subscriptions
own their client lifetime — a bare Receiver used to die silently with the
temporary typed client), the matching scaffold ready-latch, and the
composition doctest moved out.

Gitlinks aligned.

* fix: correct rust-sdk pin sha + complete the relock

The previous commit carried a mistyped rust-sdk rev (nonexistent object)
and consequently a stale flake.lock — the relock had 404'd. Pins now
actually resolve: builder 48b7ff6, rust-sdk b145bbd758a.

* chore: bump pins for the qt-generator split

ALL Qt glue emission moved from logos-cpp-sdk's generator into
logos-qt-sdk's NEW logos-qt-generator (per the Qt-confinement invariant —
generated Qt code is the Qt layer's product):

- logos-qt-sdk -> c9e3130: hosts logos-qt-generator (universal glue,
  cdylib glue, NEW ui backend), compiling the LIDL frontend distributed
  by cpp-sdk (share/lidl-frontend) so the two tools share one parser.
- logos-module-builder -> c115998: glue invocations switched to
  logos-qt-generator; NEW uiCodegen (type=ui_qml + interface=universal —
  the universal authoring model for UI plugin backends, typed deps/events
  via modules() + onContextReady at load); both composition doctests
  green on the split pipeline (23/23, 25/25).
- logos-cpp-sdk -> a84b641 (workspace pin stays on the qt-free branch;
  the deletion rev 6ecef82 rides the builder/qt-sdk locks): generator now
  emits ONLY Qt-free outputs.
- logos-rust-sdk -> 1c5e65b: builder locks at the split heads.

Gitlinks aligned.

* fix: workspace cpp-sdk pin must carry the lidl-frontend distribution

The follows wiring resolves the builder's and qt-sdk's cpp-sdk to THIS
pin — and logos-qt-generator compiles cpp-sdk's share/lidl-frontend,
which lives on feat/cdylib-authoring (6ecef82, a superset of the qt-free
head pinned before). At a84b641 the frontend was absent, so the qt
generator had no sources and every universal-module build failed in the
gate. Pin moves to the cdylib-authoring head (also the rev the builder's
own lock carries).

* chore: land cpp-sdk master f5a127dd across the chain

The one master commit since the chain cut ('use updated capability
module', cpp-sdk#85): its three files moved to logos-protocol in P1, so
the typed-requestModule refactor is PORTED there (protocol 3de5398,
111/111) and cpp-sdk's chain branches merge master recording the
supersession (modify/delete -> deleted). Locks cascaded:
protocol 3de5398 · cpp-sdk 9044f1b (master merged + protocol pin) ·
qt-sdk c1d5a06 · builder c849834 (also carries the master-merge
propagation from #113's unblocking) · rust-sdk 27e3526. Gitlinks aligned.

* chore: bump pins — the universal UI backend ships

type=ui_qml + interface=universal: a UI module backend is now ONE clean
impl class deriving LogosModuleContext — typed dependency callers, typed
event subscriptions, bind_<interface> binders, and onContextReady, with
the .rep and all plugin glue generated (logos-qt-generator --backend ui).
Proven end to end by module-builder's new ui-typed-backend doctest (4/4:
typed call QML→glue→impl→core module; typed event captured by the
onContextReady subscription surfacing in the view). Legacy
initLogos(LogosAPI*) UI plugins are untouched.

- logos-plugin-qt 9146087: LogosModule.cmake compiles the generated glue
- logos-qt-sdk 6b5e283: glue emits name/version literals; out-of-line
  ctor (incomplete LogosModules in moc TUs); CI installer fix
- logos-module-builder b398972: uiCodegen + the doctest + locks
- logos-cpp-sdk a8b8400 / logos-protocol 10cf0b9: master-merge +
  frontend backport + typed-requestModule heads, CI workflows

Gitlinks aligned.

* chore: bump pins - UI authoring split rework + docs sweep

The universal UI backend lands in its final shape: the USER writes the
.rep (full QtRO surface) + the *Backend class (deriving SimpleSource +
LogosModuleContext for onContextReady/modules()); ONLY the *Plugin and
*Interface classes are generated. ui-typed-backend doctest 4/4 on the
new split, with lastTick as a .rep PROP fed straight from the typed
event subscription (QML auto-sync, no polling).

Also: docs sweep across the chain (rust-sdk binds lp_* directly -
module-client framing retired from its README/source docs; qt-sdk README
documents logos-qt-generator; builder/cpp-sdk READMEs aligned).

qt-sdk 8f33a86 / builder 104ee26 / cpp-sdk a90a37f / rust-sdk 605c90a;
gitlinks aligned.

* chore: cpp-sdk#83 merged — chain pins advance to masters + refreshed heads

protocol 9de4165 (master) · cpp-sdk f065223 (cdylib branch atop master) ·
qt-sdk 722e590 · liblogos 156a751 · logoscore-cli e428985 · module-client
55544cb · builder 8786e9a (cdylib-interface atop qt-sdk-split c567bbc) ·
basecamp 5d04fca · rust-sdk 2732a91. Every head test-verified pre-push.

* chore: qt-sdk#1 + lidl#2 merged — pins advance to masters + refreshed heads

qt-sdk 8d0e5d9 (master) · lidl gitlink 8786eca (master) · liblogos 7cb5284 ·
module-client a307ad6 · logoscore-cli 60db252 · builder 5611f61 (cdylib-iface
atop qt-sdk-split 4631ba8) · basecamp 6fc7172 · rust-sdk c8808b9. All
lock-rev swaps to content-identical inputs; every head test-verified.

* chore: builder#113 merged — builder#119 rebased onto master (a007d8e), rust-sdk follows (e37d257)

* chore: plugin-qt#10 merged — pins to master (650ecfa); builder 5fe8ef4, rust-sdk 503d4d8 follow

* fix: drop QJson from liblogos Qt-free core (user-caught) + pin cascade

logos-module de634ce exposes rawMetadataJson; liblogos 65f7b18 parses the
protocol gate with nlohmann — zero Qt includes in src/logos_core outside
runtime_qt. Consumers follow: logoscore-cli b66a41f, basecamp 508319e,
rust-sdk 2f211e3.

* chore: logos-module b42805d (result-lm untracked) + liblogos 7917251

* chore: liblogos#142 + logos-module#16 + module-client#5 merged — pins to masters

liblogos 050f2d3 · logos-module a3e288a · module-client 7abdc8b (all master
squashes, byte-identical to chain heads). Consumers re-verified: logoscore-cli
888791d, basecamp fbcacc5, rust-sdk fabdb17.

* chore: logoscore-cli#43 + basecamp#214 + rust-sdk#11 + cpp-sdk#84 merged — pins to masters

Only builder#119 (1aa7695: result out-link cleanup, deps to masters, specs
cargo-pin rust-sdk master) and this PR remain in the train.

* chore: builder#119 merged — every chain pin now at master

All 11 chain inputs point at master squashes. This PR is the last car of
the P2–P4 train.

* chore: regenerate dep-graph.nix + flake.nix auto-inputs via ws sync-graph

The hand-merged dep-graph drifted from the canonical generator output
(entry ordering + repos whose masters absorbed the chain gained
protocol/qt-sdk deps). All submodules aligned to gitlinks first so the
generator sees exactly what CI sees. No pin changes.

---------

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-12 22:55:59 -03:00
Dario LipicarandClaude Opus 4.7 3c5dc95e0c Add logos-protocol: workspace wiring for the protocol extraction (#64)
* chore: bump lgpd chain pins so plain builds get the guarded downloader

Scoped 4-input bump (cpp-sdk, package-downloader,
package-downloader-module, package-manager-ui):

- logos-cpp-sdk 25c88f4d -> 800f65a: provides logos_module_context.h
  which package_downloader_impl.h now requires (PR #61).
- logos-package-downloader dea6503 -> 96371ef: defensive objOrEmpty /
  is_object guards so a null in index.json no longer throws
  type_error.306.
- logos-package-downloader-module 5d4bc2a -> ab4169f: legacy
  releaseTag method removal + resolver-fence failures attributed to
  the requested package(s).
- logos-package-manager-ui f3f9a03 -> b21c9ba: multi-repo API
  migration + nameless-error-row defense-in-depth.

A plain `nix build .#logos-basecamp` (no --override-input) now links
the guarded lgpd; verified the closure's libpackage_downloader_lib
carries the post-guard code. Edited the 4 url= lines by hand rather
than `ws sync-graph` (which would have bumped 17 unrelated submodule
pins); a later sync-graph run will reconcile the rest.

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

* Add logos-protocol: workspace wiring for the protocol extraction

New Foundation repo logos-protocol hosts the transport/token/IPC layer
extracted from logos-cpp-sdk behind the versioned lp_* C ABI.

- .gitmodules + repos/logos-protocol submodule
- flake.nix: logos-protocol input; logos-cpp-sdk follows logos-protocol;
  cpp-sdk pinned to its PR branch (bump at merge)
- flake.lock: lock the two changed inputs
- nix/dep-graph.nix: protocol entry + cpp-sdk dep edge (surgical; full
  sync-graph regeneration deferred until the nightly-bump drift settles)
- scripts/ws: REPOS entry (Foundation) + core group

* fix: pin logoscore-py tagged-bytes branch — the one red in ws test --all

The protocol's canonical {"_bytes"} result form leaked through the
python client's call() and its repr went back over the wire
(test_return_bytes_size: 21 != 5). Fixed in
logos-co/logos-logoscore-py#4; temporary pin, drop at merge.

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

* fix: real cpp-sdk P1 sha + completed relock

The previous commit carried a mistyped cpp-sdk rev and a silently failed
relock. Pins now resolve: protocol 1e4bc72, cpp-sdk 066db38d.

* chore: protocol#2 merged — pins advance to protocol master

protocol -> 29afbac (master, the merged extraction + typed-requestModule
port); cpp-sdk -> b309aa8 (its lock repointed to protocol master).
Gitlinks aligned.

* chore: cpp-sdk#82 merged — pin advances to cpp-sdk master

---------

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-12 19:37:56 -03:00
Dario LipicarandClaude Opus 4.8 bb736f8b6b ws: exempt logos-rust-sdk from workspace follows (keep cpp-sdk c_ffi) (#63)
Under `ws test --all --workspace`, the workspace overrides each repo's deps
via `follows` so the workspace versions propagate. For logos-rust-sdk that
swaps its pinned logos-module-builder/c_ffi (-> logos-cpp-sdk/c_ffi) for the
workspace's master cpp-sdk — which lacks the `support c-ffi` codegen
(cpp-sdk commit d98e2a9, only on the `c_ffi` branch, never merged to master).
The caller module's generated code then fails to compile:

  fatal error: sdk_test_provider_module_api.h: No such file or directory

Add a `follows_exempt` list and skip auto-follows generation for those repos,
so sync-graph emits `follows = {}` for logos-rust-sdk and it builds from its
own c_ffi-based lock (the configuration that passes standalone). Combined with
the merged cargoLock 403 fix, this takes the rust-sdk ipc-test green in the
bump. Revert once c-ffi lands on cpp-sdk master.

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-09 18:59:41 -03:00
Dario LipicarandClaude Opus 4.8 e1b948d8e1 ws: drop logos-calc-* tutorial sub-flakes (removed from logos-tutorial master) (#62)
* chore: bump lgpd chain pins so plain builds get the guarded downloader

Scoped 4-input bump (cpp-sdk, package-downloader,
package-downloader-module, package-manager-ui):

- logos-cpp-sdk 25c88f4d -> 800f65a: provides logos_module_context.h
  which package_downloader_impl.h now requires (PR #61).
- logos-package-downloader dea6503 -> 96371ef: defensive objOrEmpty /
  is_object guards so a null in index.json no longer throws
  type_error.306.
- logos-package-downloader-module 5d4bc2a -> ab4169f: legacy
  releaseTag method removal + resolver-fence failures attributed to
  the requested package(s).
- logos-package-manager-ui f3f9a03 -> b21c9ba: multi-repo API
  migration + nameless-error-row defense-in-depth.

A plain `nix build .#logos-basecamp` (no --override-input) now links
the guarded lgpd; verified the closure's libpackage_downloader_lib
carries the post-guard code. Edited the 4 url= lines by hand rather
than `ws sync-graph` (which would have bumped 17 unrelated submodule
pins); a later sync-graph run will reconcile the rest.

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

* ws: drop logos-calc-* tutorial sub-flakes (removed from logos-tutorial master)

The calc tutorial examples moved out of the top level into `outputs/` on
logos-tutorial master (the #63 calc_aggregator restructure), so
`repos/logos-tutorial/logos-calc-module` (and -ui / -ui-cpp) no longer exist
once the nightly bump checks out current master. `ws test --all` then reports
them as "not cloned" and counts each as a failure.

Remove the three sub-flake entries from the REPOS table and their
get_base_repo_url cases. `ws sync-graph` regenerates flake.nix's AUTO-INPUTS
and nix/dep-graph.nix from this table, so those generated files drop the calc
inputs on the next sync (which the nightly workflow runs before building).

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

---------

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-09 18:18:58 -03:00
Dario Lipicar fe01fca85d bump a gazillion things (#60)
* bump a gazillion things

* PR comments

* bump to support-non-local-remote-transports

* fixes

* more bumps
2026-05-08 15:42:51 -03:00
Khushboo Mehta 8b2e4ba204 feat: bump modules with support to subscrible to core module events from qml only apps 2026-04-14 15:54:24 +02:00
Iuri Matias 90d6e21f65 add ws update-order command 2026-04-13 11:57:33 +02:00
Iuri Matias c5c545bb81 ws: respect submodules pinned commits 2026-04-10 14:53:06 -04:00
Iuri Matias 503e4cbba5 update dependency 2026-04-10 14:47:00 -04:00
Iuri Matias 97c592c1da update flake 2026-04-10 14:42:44 -04:00
Iuri Matias 7dbd059217 remove legacy repos 2026-04-10 14:10:23 -04:00
Iuri Matias f63f6f60be remove legacy repos 2026-04-10 13:23:18 -04:00
Iuri Matias 9a9037541d remove repos/logos-modules 2026-04-10 12:32:41 -04:00
Dario Gabriel Lipicar 941703bb1b generate workspace follows automatically from each repo's flake 2026-04-10 12:46:24 -03:00
Dario Gabriel Lipicar 2e56440fab fix logos-tutorial reference 2026-04-10 11:40:43 -03:00
Dario Gabriel Lipicar ef0d3dedb3 incorporate module and plugin persistence 2026-04-09 17:38:08 -03:00
Khushboo Mehta 431777f186 feat: bum submodules and be able to test logos-calc-ui and logos-calc-cpp-ui from ws 2026-03-31 19:32:25 +02:00
Iuri Matias 6f835a0f0b fix perm issue 2026-03-30 13:55:02 -04:00
Iuri Matias 8b3ee0d797 make ws less verbose 2026-03-30 13:52:26 -04:00
Dario Lipicar 225990b5d3 use reworked package manager (#33) 2026-03-27 16:53:45 -03:00
Khushboo Mehta 98d9c4b633 chore: bump tutorial and buidler repos with change to have inbuilt bundle flake input 2026-03-27 18:22:32 +01:00
Logos Workspace 14c24684ae uew new liblogos and logos-module-client 2026-03-26 10:02:48 -04:00
Logos Workspace c1d078d1a9 move process stats out of liblogos 2026-03-24 17:02:16 -04:00
Logos Workspace 2c55383458 add logoscore-cli git module; add skill for how to add git modules
add logoscore-cli git module; add skill for how to add git modules

add logoscore-cli

add logoscore-cli

add logoscore-cli
2026-03-24 14:11:45 -04:00
copilot-swe-agent[bot]andKhushboo-dev-cpp 6b96b0ccb8 fix: apply review feedback - mktemp -d, glob checks, deterministic plugin dir, flake ws fallback
Co-authored-by: Khushboo-dev-cpp <60327365+Khushboo-dev-cpp@users.noreply.github.com>
Agent-Logs-Url: https://github.com/logos-co/logos-workspace/sessions/64974415-f3ce-4bb4-a9be-a9ee57082236
2026-03-24 16:14:50 +01:00
Khushboo Mehta 0dbe2b0dad feat: add standalone app as submodule 2026-03-24 15:58:49 +01:00
Logos Workspace 48d25ad9c5 add ws bundle; update repos 2026-03-23 16:09:43 -04:00
Iuri Matias 8c99a893a6 show summary at the end display what repos passed or not 2026-03-20 15:29:42 -04:00
Iuri Matias b87c31e1fc show what repo or dir is failing 2026-03-20 15:15:00 -04:00
Iuri Matias 2c7975e15d add ws repo-upgrade command 2026-03-20 13:25:34 -04:00
Iuri Matias 9cd747ad1a add ws diagnose util to detect cyclic dependencies and multiple variants of the same dependency 2026-03-20 11:39:04 -04:00
Dario Lipicar df71614c64 support all flake outputs (#15) 2026-03-18 17:59:18 -03:00
Khushboo Mehta 380b617ae2 chore:rename to logos-basecamp 2026-03-18 15:10:43 +01:00
Khushboo Mehta 0c53befe4a chore: add missing repos and rename logos-app-poc to logos-app 2026-03-18 15:05:26 +01:00
Iuri Matias d96ec27b77 add ws update --deep; fixes to ws 2026-03-16 17:26:24 -04:00
Iuri Matias 1509a5b285 Merge pull request #8 from logos-co/fix_ci_use_local_repos
Fix ci to ensure it uses local repos with --workspace flag
2026-03-16 11:08:04 -04:00
Iuri Matias f12d756b07 use --workspace flag in ci build as well to ensure it's using the repo dependencies 2026-03-13 11:06:48 -04:00
Iuri Matias 5e85ccf1b3 add support for --groups when running ws commands 2026-03-13 10:12:59 -04:00
Iuri Matias 30f45fc265 support specifying multiple repos for ws instead of jsut one, for e.g ws build logos-liblogos logos-package 2026-03-13 09:32:32 -04:00
Iuri Matias 7c67484b3d add --workspace flag; CI fixes; remove old logos-simple-module
add --workspace flag; CI fixes; remove old logos-simple-module

regenerate dep graph

revert --rebuild flag for tests

add --workspace flag

don't run tests for simple-module; not needed, repo might need to be removed

remove simple module; too old and causing issues in the ci

remove simple module; too old and causing issues in the ci
2026-03-12 18:31:28 -04:00
Iuri Matias 776ce5df62 add logos-test-modules with tests; update liblogos so it supports --quit-on-finish flag necessary for tests; ensure that --auto-local and --local is supported everywhere, specially ws tests 2026-03-12 16:12:21 -04:00
Iuri Matias 6039bbdedb add logos-test-modules 2026-03-12 11:53:35 -04:00
Iuri Matias fbcc644b59 add check-qt to check for compatibility issues as a precheck for ws run logos-app 2026-03-12 11:43:52 -04:00
Iuri Matias 94ea4e386f add --quiet flag; github ci workflow for PRs 2026-03-11 22:05:42 -04:00
Iuri Matias 0dbef668c2 update nix-bundler-dir and nix-bundle lgx 2026-03-11 20:52:41 -04:00
Iuri Matias 1b27816b70 update instructions on how to use and setup the various binaries 2026-03-11 20:44:05 -04:00
Iuri Matias e27b4c82a2 add lgpm, lgx, lm, logoscore scripts that always reflect latest changes in repos in the project 2026-03-11 20:14:25 -04:00