Repository navigation
Conversation
Preserves the UI work that until now existed only as uncommitted changes in the `minimax-aaos-cosmic-ui-20261001` worktree, with no commit, branch or stash holding it. The backdrop gains a real spatial layer under the transparent shell: an opaque theme base so glass surfaces reveal what is beneath, a deterministic star field rather than random noise or a particle simulation, and concentric orbit rings drawn from the grid brush. ThemePalette grows the brushes those surfaces resolve, and AaosTheme declares them. MainWindow refactors the shell into a topbar and a context sidebar, with the rail labels present in the markup but hidden so the narrow-width contract keeps holding, and the home cards moved onto the new frame grid. SourceReaderView picks up the same treatment. Accessibility improves with AutomationProperties.Name on the navigation and action buttons, so the controls are reachable by name rather than only by position. Surfaces that are not connected now say so in the interface: the workspace tree, file/document/ trash, personal memory and knowledge graph panels read "waiting for the Core projection" or "not yet built" instead of presenting an empty success. That matches the contract's rule that an unconnected surface must render as unconnected, and it is why the six navigation and layout contract tests are updated here rather than bypassed - 229 tests pass. Committed on the author's behalf to put the work under version control and on the remote. The changes themselves are as found; nothing outside the seven source files and six test files was touched.
CI failed on one test in the first commit of this branch:
tests/test_aaos_icon_b10_contract.py::test_icon_stroke_and_foreground_follow_both_theme_palettes
assert palettes.count('["AaosIvoryBrush"]') == 2
assert 3 == 2
The assertion was written when two palettes existed. The cosmic theme layer added a third -
深空主题 / DeepSpace - and moved Apply() from a two-way choice to a switch over three tables, so
each palette defines the ivory brush the icons bind to and there are now three definitions. The
behaviour is correct; the assertion described the palette count rather than the rule it was testing.
It now states the rule: one ivory-brush definition per palette table, whatever number of tables
exists, read from the declarations themselves. That keeps the original intent and will not need
editing again when a fourth palette appears - while still failing if a palette forgets the brush.
Palette tables verified to be structurally identical before changing the assertion (34 lines each),
so a complete third palette was added rather than a partial one.
The test file is one of the files outside the six the branch already touched, which is why the
first commit's local run did not catch it: the six affected contract files pass, and this one is not
among them.
CI is the authority for this fix - the local run of the full suite also reports six diagnostics and
release-manifest failures, but those are the known host-environment class documented in
AAOS-ERRORS-BLOCKERS-20261001.md (one asserts no absolute-path marker while the worktree path itself
contains "D:\") and CI reported none of them.
Owner
Author
|
Frozen as donor material (owner decision, 2026-10-06). The product mainline is Tauri/React, and the reuse/copy of this desktop work is already in place: src-tauri/src/main.rs path-includes desktop/src-tauri/src/{backend,job,protocol,runtime}.rs, and AGENTS.md records the formal host as reusing the existing desktop/ lifecycle. The branch is preserved unfrozen-in-repo but this PR will not be merged; its cosmic UI layer and four-theme model stay with the frozen Avalonia donor. Reopen if the donor is ever revived. |
DTALEX66
added a commit
that referenced
this pull request
Oct 6, 2026
… no longer verifiable Both sentences read as present-tense truth. Re-measuring them today produced 650/14/10-shared by one method and 0 by another, because #157 is merged and #158 was closed: the honest correction is that the claim can no longer be reproduced, not that a new number replaces it. Nothing is overwritten - the originals stay above the dated correction.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What this is
The cosmic UI layer for the Avalonia desktop, committed and pushed so it is under version control
and on the remote. Until this branch, the work existed only as uncommitted changes in the
minimax-aaos-cosmic-ui-20261001worktree — no commit, no stash, and no remote branch held it, so aremoval of that worktree would have lost 353 added lines.
Draft on purpose. Author's work, committed on their behalf: the changes are as found. If the
author prefers a different shape — a different base, a squash, an amended message, the second
commit dropped — say so and it will be redone. Only
tests/test_aaos_icon_b10_contract.pyin thesecond commit was written here, to fix a failing assertion described below.
Commits
fec7a18fdesktop-vnext,desktop-fast,desktop-build,windows-runtime-smoke,browser-smoke,wheel-smoke,rust-vnext,contracts-vnext,py-compat(3.11 and 3.13),migration-targeted,security-targeted,format-targeted627e74fftests/test_aaos_icon_b10_contract.pytest (3.12),gateplan,lint,a0-gates. The heavy jobs are correctly skipped for a test-only changeWhat changed
AaosBackdrop.csMainWindow.axamlMainWindow.axaml.csThemePalette.csApply()moves from a two-way choice to a switch over three tablesThemes/AaosTheme.axamlViews/SourceReaderView.axamlProgram.cstests/*filesTwo properties worth noting for review:
AutomationProperties.Nameis set on the navigation andaction buttons, so controls are reachable by name rather than only by position.
knowledge-graph panels read "waiting for the Core projection" or "not yet built" rather than
presenting an empty success. That matches the production contract's rule that a surface which is
not connected must render as not connected —
docs/current/AAOS-PRODUCTION-HTTP-CONTRACT-20261001.md§8, on PR Measure production multiformat reachability, fix launcher credential identity, publish HTTP contract #157.The one assertion this branch had to fix
The first commit's CI failed on exactly one test:
The assertion was written when two palettes existed; the third palette makes three definitions of
the brush. The behaviour is correct and the assertion was describing the palette count rather than
the rule it tested. It now states the rule — one ivory-brush definition per palette table, read
from the declarations — so it survives a fourth palette while still failing if a palette forgets the
brush. The three palette tables were first verified to be structurally identical (34 lines each),
so a complete third palette was added rather than a partial one.
That file is outside the six this branch already touched, which is why the first local run did not
catch it.
Verification and what is not claimed
229 passed.test_diagnostics_api.pyandtest_release_manifest.py. These are the known host-environment class recorded inAAOS-ERRORS-BLOCKERS-20261001.md— one asserts that diagnostics carry no absolute-path markerwhile this worktree's own path contains
D:\, and the others depend on arelease-identity.jsonthat is absent here. CI, which is clean, reported none of them, and none of the three files
touched by those tests is in this branch's diff.
tests are structural contracts, not screenshots. The UI fidelity question the errors document
raises under "正式 UI" is untouched by this PR.
Relationship to the other branches
codex/aaos-ui-phase2-20261001exists on the remote but is identical tocodex/Audit— itcarries no UI work of its own. This branch is the first commit that actually contains the cosmic UI
changes. Based against
codex/Audit, the newest of the two.