Commit Graph
5 Commits
Author SHA1 Message Date
Ole André Vadla Ravnås 8d12aa4d7f core: Carry the app icon on a spawn target 2026-09-28 17:35:15 +02:00
Ole André Vadla Ravnås 3e761d4885 Revert "core: Restore Swift 6.1 compatibility"
This reverts commit 4809ab8278.
2026-04-29 16:33:49 +02:00
Ole André Vadla Ravnås 4809ab8278 core: Restore Swift 6.1 compatibility
The `nonisolated <Protocol>` conformance syntax (SE-0470) is only
recognized by Swift 6.2's parser, so the Ubuntu CI job (Swift 6.1.3)
fails to parse JSInspectValue.swift and SpawnConfig.swift.

Move the protocol conformances into trailing extensions and guard
the `nonisolated` markers behind `#if compiler(>=6.2)`. The Xcode
build (which sets SWIFT_DEFAULT_ACTOR_ISOLATION = MainActor) still
gets nonisolated conformances; SwiftPM builds work on 6.1 and 6.2.
2026-04-29 15:43:24 +02:00
Ole André Vadla Ravnås 42c8115bab Add persistence models and ProjectStore CRUD
Define all domain model structs as plain Codable types in
LumaCore, replacing the SwiftData @Model classes:

  ProcessSession, InstrumentInstance, REPLCell, NotebookEntry,
  ITraceCaptureRecord, AddressInsight, InstalledPackage,
  ProjectPackagesState, ProjectCollaborationState,
  TargetPickerState, RemoteDeviceConfig

Flesh out ProjectStore with complete GRDB/SQLite CRUD for
all 11 tables. Both the SwiftUI and GTK frontends will use
this as their persistence layer.
2026-04-06 20:13:59 +02:00
Ole André Vadla Ravnås 54868d8b9d Extract portable model types into LumaCore
Move pure data types out of Luma/ into Sources/LumaCore/
so they can be shared with the GTK frontend:

- AddressAnchor, CFGGraph, ITraceDecoder (+ all related
  types: TraceEntry, ITraceMetadata, RegisterState, etc.)
- JSInspectValue, SpawnConfig, ProcessModule
- HookPackConfig, HookPackManifest, InstrumentConfigCodec
- InstrumentIcon, InstrumentKind, ConsoleLevel

CFGGraph uses its own Point2D instead of CoreGraphics
types, keeping the core free of Apple frameworks.

Remove premature stubs (Engine, ProcessNode,
InstrumentRuntime, EventStream) that will be properly
built in a later phase once the real implementations
are ready to move.
2026-04-06 19:19:20 +02:00