Skip to content
Merged
Show file tree
Hide file tree
Changes from 11 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .atl/.skill-registry.cache.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
"fingerprint": "d11040d9c59a89af514af78b245d01c57a37d79a"
"fingerprint": "52eb4455fccd840aa5bcee63cf799aa6f1f7fb3e"
}
118 changes: 57 additions & 61 deletions .atl/skill-registry.md

Large diffs are not rendered by default.

3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -36,3 +36,6 @@ yarn-error.log*
# typescript
*.tsbuildinfo
next-env.d.ts

# local agent/tool state
.serena/
47 changes: 47 additions & 0 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ This document defines the mandatory rules and constraints for the AI agent worki
- DO NOT modify, delete, or rewrite existing Prisma migration files on `main`; create a new migration for schema changes instead.
- AI MUST NOT take autonomous business decisions (suggestions only).
- **No commits or PRs without explicit permission**: never run git commit, git push, or create PRs unless the user explicitly requests it. Changes must remain in the staging area/working tree until the user decides otherwise.
- **No issue required for PRs**: this repository does not require a GitHub issue to open a pull request. If a PR template asks for issue linkage, mark it as not applicable instead of blocking PR creation.
- **Never auto-complete PRs**: always stop and ASK before merging. Never merge PRs automatically, even if all checks pass. The user must explicitly approve every merge.

---
Expand Down Expand Up @@ -68,3 +69,49 @@ This document defines the mandatory rules and constraints for the AI agent worki
- Event Bus: `docs/event-bus.md`
- Entity Model: `docs/entities.md`
- Modules: See `docs/module-*.md`

<!-- headroom:rtk-instructions -->

# RTK (Rust Token Killer) - Token-Optimized Commands

When running shell commands, **always prefix with `rtk`**. This reduces context
usage by 60-90% with zero behavior change. If rtk has no filter for a command,
it passes through unchanged — so it is always safe to use.

## Key Commands

```bash
# Git (59-80% savings)
rtk git status rtk git diff rtk git log

# Files & Search (60-75% savings)
rtk ls <path> rtk read <file> rtk grep <pattern>
rtk find <pattern> rtk diff <file>

# Test (90-99% savings) — shows failures only
rtk pytest tests/ rtk cargo test rtk test <cmd>

# Build & Lint (80-90% savings) — shows errors only
rtk tsc rtk lint rtk cargo build
rtk prettier --check rtk mypy rtk ruff check

# Analysis (70-90% savings)
rtk err <cmd> rtk log <file> rtk json <file>
rtk summary <cmd> rtk deps rtk env

# GitHub (26-87% savings)
rtk gh pr view <n> rtk gh run list rtk gh issue list

# Infrastructure (85% savings)
rtk docker ps rtk kubectl get rtk docker logs <c>

# Package managers (70-90% savings)
rtk pip list rtk pnpm install rtk npm run <script>
```

## Rules

- In command chains, prefix each segment: `rtk git add . && rtk git commit -m "msg"`
- For debugging, use raw command without rtk prefix
- `rtk proxy <cmd>` runs command without filtering but tracks usage
<!-- /headroom:rtk-instructions -->
70 changes: 52 additions & 18 deletions app/[locale]/cart/cart-view.module.css
Original file line number Diff line number Diff line change
Expand Up @@ -45,34 +45,43 @@

.itemRow {
display: flex;
align-items: center;
align-items: flex-start;
justify-content: space-between;
padding: 1rem;
border: 1px solid #e0e0e0;
border-radius: 8px;
gap: 1rem;
}

.itemInfo {
display: flex;
align-items: center;
gap: 1rem;
flex: 1;
min-width: 0;
.itemPreview {
position: relative;
flex-shrink: 0;
width: 100px;
height: 100px;
}

.thumbnail {
width: 64px;
height: 64px;
.previewImage {
width: 100px;
height: 100px;
object-fit: cover;
border-radius: 4px;
flex-shrink: 0;
border-radius: 6px;
}

.designThumb {
position: absolute;
bottom: -4px;
right: -4px;
border-radius: 6px;
object-fit: cover;
border: 2px solid #fff;
box-shadow: 0 1px 4px rgba(0, 0, 0, 0.15);
}

.itemDetails {
.itemInfo {
display: flex;
flex-direction: column;
gap: 0.2rem;
flex: 1;
min-width: 0;
}

Expand All @@ -88,16 +97,25 @@
color: #666;
}

.customization {
font-size: 0.8rem;
color: #888;
.customizationLine {
font-size: 0.82rem;
color: #555;
}

.customizationText {
font-size: 0.82rem;
color: #555;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}

.itemActions {
display: flex;
align-items: center;
gap: 1rem;
align-items: flex-start;
gap: 0.75rem;
flex-shrink: 0;
padding-top: 0.1rem;
}

.quantityControls {
Expand Down Expand Up @@ -145,6 +163,15 @@
color: #666;
min-width: 5rem;
text-align: right;
display: flex;
flex-direction: column;
align-items: flex-end;
gap: 0.1rem;
}

.unitPriceLabel {
font-size: 0.72rem;
color: #999;
}

.removeButton {
Expand Down Expand Up @@ -191,3 +218,10 @@
.checkoutButton:hover {
opacity: 0.9;
}

.editLink {
font-size: 0.8rem;
color: var(--color-coral, #df8072);
text-decoration: underline;
margin-top: 0.15rem;
}
Loading