Prune stale docs and update .hermes content

Delete a large set of outdated documentation (many files under docs/ and .hermes/plans/, including audits, design, prd, technical, planning, assets, and todos). Update and consolidate .hermes content: refresh shared-memory pages (decision-log, development-workflow, document-map, pitfalls, project-overview, team-conventions) and several skills/references under .hermes/skills. Also modify AGENTS.md, README.md, UI_CODING_STANDARD.md, docs/README.md and .encoding-check-ignore. Purpose: clean up stale planning/audit material and keep current hermes documentation and related top-level docs in sync.
This commit is contained in:
2026-05-15 06:24:07 +08:00
parent 2eded08bc7
commit 3cb3efb4d0
708 changed files with 4033 additions and 142328 deletions

View File

@@ -242,6 +242,51 @@ body {
animation: puzzle-freeze-wash 0.85s ease-out both;
}
@keyframes match3d-token-fly-to-tray {
0% {
opacity: 0.98;
transform: translate3d(-50%, -50%, 0) scale(1) rotate(0deg);
}
62% {
opacity: 1;
transform:
translate3d(
calc(-50% + var(--match3d-fly-dx, 0px) * 0.82),
calc(-50% + var(--match3d-fly-dy, 0px) * 0.82 - 10px),
0
)
scale(calc(var(--match3d-fly-scale, 0.68) * 1.06))
rotate(4deg);
}
100% {
opacity: 0;
transform:
translate3d(
calc(-50% + var(--match3d-fly-dx, 0px)),
calc(-50% + var(--match3d-fly-dy, 0px)),
0
)
scale(var(--match3d-fly-scale, 0.68))
rotate(0deg);
}
}
.match3d-token-fly-to-tray {
transform: translate3d(-50%, -50%, 0);
animation: match3d-token-fly-to-tray 0.42s cubic-bezier(0.18, 0.86, 0.22, 1)
both;
transform-origin: center;
will-change: transform, opacity;
}
@media (prefers-reduced-motion: reduce) {
.match3d-token-fly-to-tray {
animation-duration: 1ms;
}
}
.fusion-pixel-app,
.fusion-pixel-app * {
font-family: 'Fusion Pixel', 'Inter', ui-sans-serif, system-ui, sans-serif !important;
@@ -550,7 +595,7 @@ body {
--puzzle-runtime-board-border: rgba(255, 126, 154, 0.28);
--puzzle-runtime-board-shadow: 0 30px 80px rgba(215, 87, 134, 0.14);
--puzzle-runtime-piece-fill: rgba(255, 255, 255, 0.74);
--puzzle-runtime-piece-border: rgba(232, 191, 205, 0.54);
--puzzle-runtime-piece-border: transparent;
--puzzle-runtime-piece-empty-fill: rgba(255, 228, 236, 0.34);
--puzzle-runtime-piece-empty-text: rgba(92, 70, 80, 0.38);
--puzzle-runtime-piece-selected-fill: linear-gradient(
@@ -559,7 +604,7 @@ body {
#ff8a73
);
--puzzle-runtime-piece-selected-text: #fff7fb;
--puzzle-runtime-piece-selected-border: rgba(255, 79, 139, 0.68);
--puzzle-runtime-piece-selected-border: transparent;
--puzzle-runtime-next-card-overlay: rgba(61, 24, 38, 0.06);
--puzzle-runtime-control-fill: rgba(255, 255, 255, 0.72);
--puzzle-runtime-control-hover-fill: rgba(255, 91, 132, 0.1);
@@ -786,12 +831,12 @@ body {
--puzzle-runtime-board-border: rgba(255, 255, 255, 0.16);
--puzzle-runtime-board-shadow: 0 30px 80px rgba(0, 0, 0, 0.35);
--puzzle-runtime-piece-fill: rgba(255, 255, 255, 0.12);
--puzzle-runtime-piece-border: rgba(255, 255, 255, 0.22);
--puzzle-runtime-piece-border: transparent;
--puzzle-runtime-piece-empty-fill: rgba(0, 0, 0, 0.18);
--puzzle-runtime-piece-empty-text: rgba(255, 255, 255, 0.2);
--puzzle-runtime-piece-selected-fill: rgba(251, 191, 36, 0.84);
--puzzle-runtime-piece-selected-text: #020617;
--puzzle-runtime-piece-selected-border: rgba(253, 230, 138, 1);
--puzzle-runtime-piece-selected-border: transparent;
--puzzle-runtime-next-card-overlay: rgba(0, 0, 0, 0.1);
--puzzle-runtime-control-fill: rgba(0, 0, 0, 0.36);
--puzzle-runtime-control-hover-fill: rgba(255, 255, 255, 0.1);
@@ -1359,6 +1404,61 @@ html[data-mobile-keyboard-open='true'] .platform-mobile-bottom-dock {
font-weight: 800;
}
.platform-category-filter-dialog {
box-shadow: var(--platform-desktop-hover-shadow);
}
.platform-category-filter-dialog__options {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 0.55rem;
}
.platform-category-filter-dialog__option {
min-height: 2.35rem;
border: 1px solid var(--platform-subpanel-border);
border-radius: 0.78rem;
background: var(--platform-subpanel-fill);
color: var(--platform-text-base);
padding: 0 0.75rem;
font-size: 0.88rem;
font-weight: 900;
}
.platform-category-filter-dialog__option--active {
border-color: var(--platform-cool-border);
background: var(--platform-cool-bg);
color: var(--platform-cool-text);
}
.platform-category-filter-dialog__actions {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 0.75rem;
border-top: 1px solid var(--platform-line-soft);
padding: 0.85rem 1rem 1rem;
}
.platform-category-filter-dialog__action {
min-height: 2.55rem;
border-radius: 9999px;
padding: 0 1rem;
font-size: 0.92rem;
font-weight: 900;
}
.platform-category-filter-dialog__action--secondary {
border: 1px solid var(--platform-subpanel-border);
background: var(--platform-subpanel-fill);
color: var(--platform-text-base);
}
.platform-category-filter-dialog__action--primary {
border: 1px solid var(--platform-cool-border);
background: var(--platform-cool-bg);
color: var(--platform-cool-text);
}
.platform-category-game-list {
display: grid;
min-width: 0;
@@ -2452,15 +2552,16 @@ html[data-mobile-keyboard-open='true'] .platform-mobile-bottom-dock {
}
.puzzle-runtime-piece {
border-color: var(--puzzle-runtime-piece-border);
border-color: transparent;
color: var(--puzzle-runtime-text-strong);
box-shadow: none;
}
.puzzle-runtime-piece--selected {
border-color: var(--puzzle-runtime-piece-selected-border);
background: var(--puzzle-runtime-piece-selected-fill);
color: var(--puzzle-runtime-piece-selected-text);
box-shadow: var(--puzzle-runtime-primary-shadow);
border-color: transparent;
background: transparent;
color: var(--puzzle-runtime-text-strong);
box-shadow: none;
}
.puzzle-runtime-piece--merged {
@@ -2470,13 +2571,13 @@ html[data-mobile-keyboard-open='true'] .platform-mobile-bottom-dock {
}
.puzzle-runtime-piece--filled {
background: var(--puzzle-runtime-piece-fill);
background: transparent;
}
.puzzle-runtime-piece--empty {
border-color: var(--puzzle-runtime-surface-border);
background: var(--puzzle-runtime-piece-empty-fill);
color: var(--puzzle-runtime-piece-empty-text);
border-color: transparent;
background: transparent;
color: transparent;
}
.puzzle-runtime-next-card-overlay {
@@ -4309,6 +4410,17 @@ html[data-mobile-keyboard-open='true'] .platform-mobile-bottom-dock {
font-size: 0.8rem;
}
.platform-category-filter-dialog__options {
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 0.48rem;
}
.platform-category-filter-dialog__option {
min-height: 2.18rem;
border-radius: 0.68rem;
font-size: 0.8rem;
}
.platform-category-game-list {
gap: 0.7rem;
}