Skip to content

Commit 0e93420

Browse files
author
CryptoJones
committed
feat(i18n): add Catalan locale + README (L6) (#19)
Catalan locale + README. Switcher updated across all 17 READMEs. Romance coverage complete. 238/238 tests pass.
1 parent 80ce829 commit 0e93420

19 files changed

Lines changed: 424 additions & 16 deletions

README.ca.md

Lines changed: 263 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,263 @@
1+
<div align="center">
2+
3+
```
4+
╔══════════════════════════════════════════════════════════════╗
5+
║ ║
6+
║ T R I A G E ║
7+
║ ║
8+
║ meta-planificador que vigila la seva pròpia cua ║
9+
║ ║
10+
╚══════════════════════════════════════════════════════════════╝
11+
```
12+
13+
**Una cua de prioritats conscient de si mateixa.** Els senyals
14+
aporten fets sobre el món; les regles converteixen els fets en deltes
15+
de prioritat; la cua es reordena sola a cada tick. Tu fixes els
16+
objectius — Triage decideix l'ordre i t'explica exactament per què.
17+
18+
[![License](https://img.shields.io/badge/License-Apache_2.0-blue.svg?logo=apache)](LICENSE)
19+
[![Stdlib only](https://img.shields.io/badge/deps-stdlib_only-success?logo=python&logoColor=white)](pyproject.toml)
20+
[![Codeberg](https://img.shields.io/badge/Codeberg-CryptoJones%2FTriage-2185D0?logo=codeberg&logoColor=white)](https://codeberg.org/CryptoJones/Triage)
21+
[![GitHub](https://img.shields.io/badge/GitHub-CryptoJones%2FTriage-181717?logo=github&logoColor=white)](https://github.com/CryptoJones/Triage)
22+
23+
**Llegeix-ho en:**
24+
[English](README.md) ·
25+
[Español](README.es.md) ·
26+
[Français](README.fr.md) ·
27+
[Deutsch](README.de.md) ·
28+
[Italiano](README.it.md) ·
29+
[Português](README.pt.md) ·
30+
[Nederlands](README.nl.md) ·
31+
[Polski](README.pl.md) ·
32+
[Čeština](README.cs.md) ·
33+
[Svenska](README.sv.md) ·
34+
[Norsk](README.no.md) ·
35+
[Dansk](README.da.md) ·
36+
[Suomi](README.fi.md) ·
37+
[Română](README.ro.md) ·
38+
[Magyar](README.hu.md) ·
39+
[Türkçe](README.tr.md) ·
40+
**Català**
41+
42+
</div>
43+
44+
> Replicat tant a [GitHub](https://github.com/CryptoJones/Triage) com a
45+
> [Codeberg](https://codeberg.org/CryptoJones/Triage). Els tiquets a
46+
> qualsevol de les dues farges són benvinguts; els commits aterren a
47+
> totes dues.
48+
49+
---
50+
51+
## El que veus
52+
53+
```
54+
╔════════════════════════════════════════════════════════╗
55+
║ T R I A G E v0.9.0 ║
56+
╚════════════════════════════════════════════════════════╝
57+
ID PRI BAR ASSUMPTE
58+
════════════ ══════ ═════ ════════════════════════════════════════
59+
7cfa440bc639 [ 101] █████ Arreglar el linter ← bloquejador auto-elevat
60+
f35d7cea6b7d [ 100] █████ Afegir funció X ← bloquejada pel linter
61+
19c80b807ddd [ 35] █▒░░░ Rotar certificat ← pressió de termini
62+
abc123456789 [ 2] ░░░░░ Neteja rutinària
63+
```
64+
65+
En un terminal real, la pancarta és magenta brillant, les prioritats
66+
estan acolorides per bandes (alta = groc, mitjana = verd, baixa =
67+
cian atenuat) i les barres de prioritat s'omplen proporcionalment.
68+
El tema per defecte `bbs` és descaradament dels anys 90.
69+
70+
---
71+
72+
## Com funciona
73+
74+
```
75+
┌─────────────────────┐
76+
senyals ─────► │ Fonts de senyal │ (cron-window, github-ci, ...)
77+
└──────────┬──────────┘
78+
79+
┌─────────────────────┐
80+
│ ~/.triage/state/ │ (append-only JSONL per font)
81+
└──────────┬──────────┘
82+
83+
tick ─────► ┌─────────────────────┐ ─────► cua reordenada
84+
│ Planificador Triage │ + registre d'auditoria per tasca
85+
└──────────┬──────────┘
86+
87+
┌─────────────────────┐
88+
tasques ─────► │ CLI triage │
89+
└─────────────────────┘
90+
```
91+
92+
1. **Les fonts de senyal** aporten fets (`cron-window`, `github-ci`,
93+
futurs `runpod-cost`, `github-pr`...).
94+
2. **Les regles** converteixen els fets en deltes de prioritat
95+
(`base_score`, `deadline_decay`, `cron_window_active`,
96+
`ci_failing`, `blocker_transitive`).
97+
3. **La cua es reordena** a cada `triage tick`.
98+
4. **Cada reordenació és explicable**`triage why <id>` mostra
99+
exactament quines regles han contribuït amb quines deltes, així
100+
que l'ordre mai no és una caixa negra.
101+
102+
Mira [`DESIGN.md`](DESIGN.md) per a l'arquitectura completa, el
103+
catàleg de regles i el full de ruta.
104+
105+
---
106+
107+
## Instal·lació
108+
109+
```bash
110+
git clone https://github.com/CryptoJones/Triage # o codeberg.org/CryptoJones/Triage
111+
cd Triage
112+
pip install -e .
113+
```
114+
115+
Biblioteca estàndard de Python pura. Sense dependències en temps
116+
d'execució. Provat a 3.10 / 3.11 / 3.12.
117+
118+
---
119+
120+
## Ús
121+
122+
### Tasques
123+
124+
```bash
125+
triage add "Arreglar bug d'autenticació" --base-score 10
126+
triage add "Rotar el certificat de staging" --deadline 2026-05-20T00:00:00Z
127+
triage add "Tasca només laborable" --cron-window "* 9-17 * * 1-5"
128+
triage add "Vigilar CI" --tag "gh-ci:CryptoJones/Triage@main"
129+
triage add "Esperar al linter" --blocked-by <linter-task-id>
130+
131+
triage list # ordre de prioritat actual
132+
triage show <id> # registre brut de la tasca (JSON)
133+
triage why <id> # quines regles han contribuït amb quines deltes
134+
triage rm <id> # eliminar
135+
```
136+
137+
### Reordenar + sondejar
138+
139+
```bash
140+
triage tick # recalcular prioritats; imprimir nou ordre
141+
triage poll github-ci # invocar una font de senyal lligada a la xarxa
142+
```
143+
144+
`tick` és barat, local i idempotent — crida'l des de cron, un bucle
145+
de shell o `ScheduleWakeup` de Claude Code. `poll` és per a fonts de
146+
senyal que toquen la xarxa (pagues per aquestes explícitament).
147+
148+
### Llengua
149+
150+
Triage parla diverses llengües. Estableix la llengua amb l'opció
151+
`--lang` o les variables d'entorn habituals:
152+
153+
```bash
154+
triage --lang ca list # un sol cop
155+
TRIAGE_LANG=ca triage list # per shell
156+
triage lang # llista les llengües disponibles
157+
```
158+
159+
Llengües suportades: English, Español, Français, Deutsch, Italiano,
160+
Português, Nederlands, Polski, Čeština, Svenska, Norsk, Dansk, Suomi,
161+
Română, Magyar, Türkçe, Català. Si la llengua no es reconeix, s'usa
162+
l'anglès com a reserva.
163+
164+
### Registre d'esdeveniments (per a agents externs)
165+
166+
Cada invocació del CLI afegeix una sola línia JSON a un fitxer de
167+
registre, així un agent extern pot fer `tail -f` i analitzar el
168+
comportament de Triage:
169+
170+
```bash
171+
tail -f /var/log/triage.log | jq . # si el fitxer pertany al teu usuari
172+
```
173+
174+
Entrades d'exemple:
175+
176+
```json
177+
{"ts":"2026-05-16T06:16:18+00:00","event":"add","task_id":"9e8040d267d9","subject":"Investigar consulta lenta","base_score":10,"tags":[],"deadline":null,"blocked_by":[]}
178+
{"ts":"2026-05-16T06:16:18+00:00","event":"tick","ranked_count":2,"emitted_cron_signals":0,"top":[{"id":"ad2006db3c12","priority":35,"subject":"Rotar certificat"}],"warnings":[]}
179+
{"ts":"2026-05-16T06:16:19+00:00","event":"poll","source":"github-ci","emitted":1,"warnings":[]}
180+
{"ts":"2026-05-16T06:16:20+00:00","event":"rm","task_id":"9e8040d267d9"}
181+
```
182+
183+
Configuració:
184+
185+
| Mecanisme | Què fa |
186+
|----------------------------|-------------------------------------------------------------------|
187+
| opció `--log-file PATH` | Camí del registre per invocació. |
188+
| env `TRIAGE_LOG_FILE=PATH` | Camí del registre per shell. |
189+
| Per defecte | `/var/log/triage.log`. Recau a `~/.triage/triage.log` si `/var/log` no és escrivible (avisa un cop a stderr). |
190+
| opció `--no-log` | Desactiva el registre per a aquesta invocació. |
191+
| env `TRIAGE_NO_LOG=1` | Desactiva el registre globalment per al shell. |
192+
193+
Per utilitzar el camí estàndard `/var/log` sense sudo a cada crida:
194+
195+
```bash
196+
sudo touch /var/log/triage.log
197+
sudo chown $(id -un):$(id -gn) /var/log/triage.log
198+
```
199+
200+
El registre és un canal lateral estrictament unidireccional — els
201+
errors durant l'escriptura s'empassen perquè el comportament principal
202+
del CLI mai no es vegi interromput.
203+
204+
### Temes
205+
206+
```bash
207+
triage theme # llista temes disponibles
208+
triage theme --name bbs # renderitza files d'exemple
209+
triage --theme modern list # sobreescriu el tema per una invocació
210+
TRIAGE_THEME=mono triage list # tema per shell
211+
```
212+
213+
| Tema | Estètica |
214+
|----------|-----------------------------------------------------------------------|
215+
| `bbs` | **Per defecte.** BBS dels 90: magenta brillant, marc de doble línia (`╔═╗`), barres de blocs. |
216+
| `modern` | Paleta subtil, marcs de línia simple (`┌─┐`), barres de punts (`█▒·`). |
217+
| `mono` | Sense color, només ASCII (`+-+`, `#=.`) — segur per a canonades i terminals senzills. |
218+
219+
El color segueix les convencions:
220+
221+
- Desactivat automàticament quan stdout no és un TTY.
222+
- `NO_COLOR=1` desactiva el color (segons [no-color.org](https://no-color.org/)).
223+
- `FORCE_COLOR=1` activa el color en no-TTY.
224+
- L'opció `--no-color` = interruptor explícit per invocació.
225+
226+
---
227+
228+
## Projectes relacionats
229+
230+
Triage és una peça d'un petit ecosistema. Les peces es componen:
231+
232+
| Repositori | Rol |
233+
|------------|-----|
234+
| [**claude_skill-Triage**](https://github.com/CryptoJones/claude_skill-Triage) | Repositori de skills de Claude Code. Avui ofereix `TaskPriorityReorder` (**sobreescriptura manual** — «pujar X al capdamunt») i allotjarà la skill `triage` (**recomanador guiat per senyals** — «què hauria de fer ara?») en una versió futura. |
235+
| [**TriageMCP**](https://github.com/CryptoJones/TriageMCP) | **Servidor MCP** que embolcalla l'API de Triage per a agents d'IA. Vuit eines (`list_tasks`, `add_task`, `tick`, `why_task`, `status`, `remove_task`, `inject_signal`, `get_task`) sobre stdio. Posa'l a `~/.claude/mcp.json` i un agent podrà llegir i escriure la teva cua de prioritats directament. |
236+
| [**RunPodBoss**](https://github.com/CryptoJones/RunPodBoss) | Protector del saldo de crèdit de RunPod. S'integra amb Triage via `extra_notify_command` — quan se sobrepassa un llindar de facturació, RunPodBoss empeny un senyal manual a Triage perquè la tasca «buidar pods inactius» suri al capdamunt de la teva cua. Recepta de configuració a [`docs/runpodboss-integration.md`](docs/runpodboss-integration.md). |
237+
238+
Els quatre comparteixen la primitiva de Triage (identitat estable +
239+
prioritat recalculable) i viuen en miralls dobles (GitHub + Codeberg).
240+
241+
---
242+
243+
## Estat
244+
245+
| Versió | Característica | Estat |
246+
|--------|----------------------------------------------------------------------|-------------|
247+
| v0.1 | esquelet, tres regles, senyal cron-window, CLI | llançada |
248+
| v0.2 | propagació `blocker_transitive` + detecció de cicles | llançada |
249+
| v0.3 | font de senyal `github-ci` + regla `ci_failing` + `triage poll` | llançada |
250+
| v0.4 | sistema de temes ANSI estil BBS + subcomanda `triage theme` | llançada |
251+
| v0.5 | font de senyal `runpod-cost` + regla `cost_pressure` | llançada |
252+
| v0.6 | escriptor de registre d'esdeveniments JSONL per a agents externs | llançada |
253+
| v0.7 | font de senyal `github-pr` per a PRs obsolets | planificada |
254+
| v0.8 | skill `triage` de Claude Code (al repo `claude_skill-Triage`) | planificada |
255+
| v0.9 | mode `triage watch` de llarga durada + unitat systemd | planificada |
256+
257+
---
258+
259+
## Llicència
260+
261+
Apache 2.0. Vegeu [LICENSE](LICENSE).
262+
263+
Fet amb orgull a Nebraska. Go Big Red! 🌽 https://xkcd.com/2347/

README.cs.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,8 @@ pořadí a řekne ti přesně proč.
3636
[Suomi](README.fi.md) ·
3737
[Română](README.ro.md) ·
3838
[Magyar](README.hu.md) ·
39-
[Türkçe](README.tr.md)
39+
[Türkçe](README.tr.md) ·
40+
[Català](README.ca.md)
4041

4142
</div>
4243

README.da.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,8 @@ fortæller dig præcis hvorfor.
3636
[Suomi](README.fi.md) ·
3737
[Română](README.ro.md) ·
3838
[Magyar](README.hu.md) ·
39-
[Türkçe](README.tr.md)
39+
[Türkçe](README.tr.md) ·
40+
[Català](README.ca.md)
4041

4142
</div>
4243

README.de.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,8 @@ genau warum.
3737
[Suomi](README.fi.md) ·
3838
[Română](README.ro.md) ·
3939
[Magyar](README.hu.md) ·
40-
[Türkçe](README.tr.md)
40+
[Türkçe](README.tr.md) ·
41+
[Català](README.ca.md)
4142

4243
</div>
4344

README.es.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,8 @@ los objetivos — Triage decide el orden y te explica exactamente por qué.
3636
[Suomi](README.fi.md) ·
3737
[Română](README.ro.md) ·
3838
[Magyar](README.hu.md) ·
39-
[Türkçe](README.tr.md)
39+
[Türkçe](README.tr.md) ·
40+
[Català](README.ca.md)
4041

4142
</div>
4243

README.fi.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,8 @@ päättää järjestyksen ja kertoo tarkasti miksi.
3636
**Suomi** ·
3737
[Română](README.ro.md) ·
3838
[Magyar](README.hu.md) ·
39-
[Türkçe](README.tr.md)
39+
[Türkçe](README.tr.md) ·
40+
[Català](README.ca.md)
4041

4142
</div>
4243

README.fr.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,8 @@ et vous explique précisément pourquoi.
3737
[Suomi](README.fi.md) ·
3838
[Română](README.ro.md) ·
3939
[Magyar](README.hu.md) ·
40-
[Türkçe](README.tr.md)
40+
[Türkçe](README.tr.md) ·
41+
[Català](README.ca.md)
4142

4243
</div>
4344

README.hu.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,8 @@ dönti el a sorrendet, és pontosan elmondja, miért.
3636
[Suomi](README.fi.md) ·
3737
[Română](README.ro.md) ·
3838
**Magyar** ·
39-
[Türkçe](README.tr.md)
39+
[Türkçe](README.tr.md) ·
40+
[Català](README.ca.md)
4041

4142
</div>
4243

README.it.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,8 @@ Triage decide l'ordine e ti spiega esattamente perché.
3636
[Suomi](README.fi.md) ·
3737
[Română](README.ro.md) ·
3838
[Magyar](README.hu.md) ·
39-
[Türkçe](README.tr.md)
39+
[Türkçe](README.tr.md) ·
40+
[Català](README.ca.md)
4041

4142
</div>
4243

README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,8 @@ you exactly why.
3535
[Suomi](README.fi.md) ·
3636
[Română](README.ro.md) ·
3737
[Magyar](README.hu.md) ·
38-
[Türkçe](README.tr.md)
38+
[Türkçe](README.tr.md) ·
39+
[Català](README.ca.md)
3940

4041
</div>
4142

0 commit comments

Comments
 (0)