Repository navigation
Conversation
Combines two tracks into one v0.4.0 release: - Spoor B: replace in-memory pipeline with COPC streaming + CCCoreLib FFI kernel - Spoor A: full adoption of @openaec/ui design tokens and components Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
First of five plans derived from the v0.4.0 design spec. This plan handles only the UI rebrand: install @openaec/ui from GitHub, rename --theme-* to --oaec-* throughout, remove the multi-theme switcher, single dark theme. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Create src/styles/openaec-overrides.css with composite canvas-grid and ribbon-gradient tokens - Import openaec-overrides.css between components.css and globals.css in main.tsx - Strip all four multi-theme blocks from globals.css; replace with single [data-theme="light"] block using --oaec-* tokens - Update @theme block RHS from --theme-* to --oaec-* - Rename all remaining --theme-* references in utility sections to --oaec-* equivalents - Replace hardcoded hex brand colours (#1d4ed8, #2563eb, #fff) with --oaec-accent / --oaec-accent-hover / --oaec-accent-text Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Remove the unscoped 'Input controls - Dark theme' block (~63 lines) from Ribbon.css — .ribbon-input-group, .ribbon-input-label, .ribbon-color-input, and the unscoped .ribbon-input/.ribbon-input-row rules were dead code overridden by the scoped .ribbon-transform-inputs block. Clean stale hex fallbacks from that scoped block (var(--oaec-bg-input, #0f172a) → var(--oaec-bg-input), etc.). Update ErrorBoundary inline styles in main.tsx to match the OpenAEC palette (#1a1a2e→#36363E, #ff6b6b/#ffa07a→#f87171, #4a90d9→#D97706, #888→rgba(250,250,249,0.6)). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…stem Plan 1 of 5 toward v0.4.0. Replaces multi-theme styling (--theme-*) with @openaec/ui tokens (--oaec-*), removes the theme switcher UI and state, adopts the OpenAEC dark palette with orange accent as the single theme. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Adds the missing orange File tab as leftmost ribbon-tab (matches the OpenAEC standard from open-2d-studio); for v1 it triggers the Import handler. Overrides five tokens in openaec-overrides.css to match the canonical style-book values (@openaec/ui v0.1.0 is out of sync upstream): panels darker not lighter, borders neutral grey not orange-tinted, secondary/muted text as warm neutrals. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…rt/Export/About) Implements the OpenAEC-standard backstage pattern from open-2d-studio. The orange File tab in the ribbon now opens a full-viewport overlay with a sidebar (Open / Import / Export / About) and a main content panel per active view. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
After the Authenticode and OpenPGP signing, sign-updates.sh writes a minisign .sig beside the Windows setup and each AppImage with the repository's updater key, and the .sig files go on the release. Once the release is public, a last job makes latest.json with the release kit of the installer: it checks every signature against UPDATER_PUBKEY and the tag against native/Cargo.toml, and attaches latest.json last. The OpenAEC Installer then checks the signature before a silent update (OpenAEC-Foundation/OpenAEC-Blueprint#33). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… actual E57 projection
…rve model cameras
…and both API contracts
…back access control
|
Combined validation passed on integration commit
Real GUI validation used an isolated headless labwc/pixman Wayland compositor and Mesa lavapipe Vulkan. Each probe used private settings/cache directories and cleaned up only its own processes; no credentials are recorded.
The static source ( Native idle RSS was 255,592 KiB (~250 MiB) in this development/software-renderer run; this is the app process, not a deployed container benchmark. The coarse real-E57 surface is a functional atlas/cancellation fixture, not a reconstruction-quality claim. Reproduction scripts are |
|
Aanvullende echte reader-validatie heeft twee E57-vervolgfouten gevonden en opgelost in #64: verlies van de schaal van intensiteitsgrenzen en gewijzigde sensorrastergrenzen, die de interpretatie in externe readers veranderden. #64 bevat deze integratie als voorouder en moet met de E57-acceptatie worden meegenomen. De bestaande head van deze PR blijft ongewijzigd. De vervolgfix is lokaal volledig gecontroleerd: 1.486 workspace-tests geslaagd, geen fouten, plus daadwerkelijke voor/na-controles van de BLK2GO-sectie en de volledige Riegl-scan met pye57, PDAL en CloudCompare. Zie #64 voor het reproduceerbare bewijs en de precieze readerbeperkingen. |
Combine the pending release, E57, photo and managed-session improvements while preserving the current native Rust application. All 15 open PR heads are retained as ancestors, with conflicts resolved in release signing, cumulative API revision 15 and Dutch translations.
The integration also fixes a cross-PR regression: pausing external MCP must not make a healthy managed GUI appear crashed. The native GUI now supplies a heartbeat;
/gui-healthand authenticated/gezonduse it independently of the MCP checkbox. Commands stay refused while paused, and stale/exited GUIs become unhealthy. A real GUI smoke mode and both Linux package checks cover this combination.Validation of the combined source passes:
Each source feature also carries its versioned real-data validation. Combined test details are recorded in the validation comment below; cross-platform CI and package checks run on this same integration commit.
Merge with a merge commit to preserve every included PR's history (GitHub indirect merges). Review the complete current integration diff; the normal code-owner approval remains required.
Closes #34. Closes #42.
Refs #13, #16, #32, #33, #39, #41 and #52. These remain open for the outstanding point-colour resampling, general pane/window layouts, broader product requirements, deployed/client acceptance and release follow-up. Native SuperCloud route B is implemented; the retired Classic browser prototype is not revived. The related signed-download correction is separately reviewed in website PR #61.