Skip to content

Commit 73ea81e

Browse files
authored
Merge pull request #48 from ondata/fix/cli-discoverability-and-repo-links
fix(cli): which azionabile, help completo, link repo aggiornati a ondata
2 parents b85b538 + 8e91994 commit 73ea81e

13 files changed

Lines changed: 252 additions & 145 deletions

LOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22

33
## 2026-07-10
44

5+
- **fix CLI — `which` azionabile, help completo, link repo a ondata** (PR #48, branch `fix/cli-discoverability-and-repo-links`). Tre fix UX emersi dall'uso reale: (1) `which` restituiva forme combinate non incollabili ("bill-text links / fetch") senza dire come usarle — ora una voce per comando con esempio pronto da eseguire (dagli `examples` reali dei tool) e rimando a `--help`; JSON con campo `example`; aggiunte capacità mancanti (camera-amendments, audizioni, bill-text fetch come voce propria); query vuota (`which " "`) → messaggio d'uso + exit 2 invece dell'intero catalogo. (2) `--format`/`--limit`/`--offset` senza descrizione nell'help in ~93 occorrenze (incluso `sparql query`, definizione separata) — ora `--format` documenta `csv | jsonl` ovunque. (3) Riferimenti al vecchio path `github.com/aborruso/...` → `ondata` in README (git clone, npx skills add), manifest.json, User-Agent camera-amendments, 5 citation wiki; aggiunti `repository`/`homepage`/`bugs` in package.json (la pagina npm non linkava il repo). Il pacchetto npm resta `@aborruso/...`. 123/123 test verdi.
6+
57
- **v0.24.0 — PR #47 mergiata** (merge commit `e0ba02b`): fallback bulk AKN completato dopo un lungo ciclo di review (Greptile + 7 giri Copilot, 10 commit, 25 thread tutti risolti). Oltre a quanto già in LOG: colonna `sede` separata da `type` (semantica diversa per fonte LOD/AKN), fix di correttezza sulla paginazione quando solo il bucket Assemblea del bulk è troncato, `enrichProponents` fallisce esplicito su outage sistematico (non più vuoto silenzioso indistinguibile dai file stub), cap `limit<=100` su `--with-proponents` (rischio timeout/rate-limit sul Worker con `limit` alto), hint distinto per pagina-oltre-la-fine vs vuoto genuino nel fallback AKN. Chiude automaticamente #38 e #30 (issue #45 resta aperta: altri spunti dell'analisi non ancora implementati, es. `bill-text` con link AKN raw). 123/123 test verdi.
68

79
- **feat `amendments` — fallback bulk AKN GitHub + proponenti** (P1 dell'analisi fonti non-LOD; issue #45→#38+#30, branch `feat/amendments-akn-fallback`). Nuovo `src/core/akn.ts` (Worker-compatible, fetch nativo): path atto, listing cartelle via endpoint JSON web-UI GitHub (troncamento a 1000 gestito via totalCount, errore esplicito su finestra irraggiungibile), parser AKN. Il tool: (1) espone `akn_xml_url` su ogni riga LOD (conversione `URLTestoXml`→raw, `flagCommissione` decide emend/emendc); (2) con `ddlUri` e LOD vuoto fa fallback sul bulk (`source=akn`); (3) `--with-proponents` estrae primo firmatario e cofirmatari dal testo AKN (docProponent/TLCPerson, doppia variante markup Assemblea/Commissione, preferito `showAs` col nome completo). **Scoperta in corsa**: il LOD osr:Emendamento si è riallineato tra il 7 e il 10 lug (Piano Casa 0→799, match esatto col bulk 400+399) — freschezza intermittente, il fallback resta rete di sicurezza; trappola nuova `dataPresentazione` xsd:string sui DDL recenti (wiki aggiornato, 3 pagine + log). Verificato: Amidei em. 1.30 ddl/56260 (caso wiki, prima solo via browser WAF), Piano Casa con proponenti da entrambe le sedi. 114/114 test verdi (+11), tsc pulito. Skill CLI e MCP aggiornate. Idea futura annotata: estrattore AKN bulk in Rust per analisi offline (docs/future-ideas.md).

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ italianparliament search find --name schlein
4848
### Da sorgente (sviluppo)
4949

5050
```bash
51-
git clone https://github.com/aborruso/italianparliament-mcp
51+
git clone https://github.com/ondata/italianparliament-mcp
5252
cd italianparliament-mcp
5353
npm install
5454
npm run build
@@ -65,8 +65,8 @@ Lo strumento **dà il meglio guidato da un agente AI**. Il repo include due Agen
6565
Le skill funzionano con diversi agenti (Claude Code, OpenCode, Codex, Copilot e altri). Installazione cross-agent in un comando con [`skills`](https://github.com/vercel-labs/skills):
6666

6767
```bash
68-
npx skills add aborruso/italianparliament-mcp --skill italian-parliament-cli
69-
npx skills add aborruso/italianparliament-mcp --skill italian-parliament-mcp
68+
npx skills add ondata/italianparliament-mcp --skill italian-parliament-cli
69+
npx skills add ondata/italianparliament-mcp --skill italian-parliament-mcp
7070
```
7171

7272
In alternativa, copia la cartella `skills/<nome>/` e registrala secondo la documentazione del tuo agente.

docs/lod-wiki/camera/assenti.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,4 +64,4 @@ SELECT ?v ?d WHERE {
6464
}
6565
LIMIT 3
6666
```
67-
[4] Issue: https://github.com/aborruso/italianparliament-mcp/issues/19
67+
[4] Issue: https://github.com/ondata/italianparliament-mcp/issues/19

docs/lod-wiki/camera/votazioni-ricerca-html.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -123,4 +123,4 @@ Non integrato nel progetto: è scraping HTML di un endpoint non documentato (fra
123123

124124
[1] Intercettazione traffico con agent-browser (`network requests`) il 2026-07-01: nessuna chiamata XHR, singola POST server-rendered.
125125
[2] Verifica CDDNUMEROATTO whitelist: `document.getElementById('CDDNUMEROATTO').options` → 217 elementi, ultimo "DDL n. 2488-B".
126-
[3] https://github.com/aborruso/italianparliament-mcp/issues/21
126+
[3] https://github.com/ondata/italianparliament-mcp/issues/21

docs/lod-wiki/senato/corrispondenza-webmaster.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,6 @@ Il dettaglio tecnico estratto da ogni scambio è documentato nella pagina wiki p
3232

3333
| Data | Da → A | Oggetto |
3434
|------|--------|---------|
35-
| 2026-07-08 08:00 | Borruso → Webmaster | Segnala che gli emendamenti collegati a DDL recenti risultano sempre assenti (DL Sicurezza 2025, Piano Casa 2026: 0 emendamenti) mentre sono regolarmente presenti su provvedimenti anche vecchi (Cura Italia 2020: 3.827; DL dic. 2022: 119). Query di verifica allegata: nessun DDL collegato a un emendamento ha `osr:dataPresentazione` successiva al 9/8/2024. Chiede se è un aggiornamento sospeso temporaneamente o se gli emendamenti recenti sono pubblicati altrove. **Contenuto tecnico integrale → [Emendamenti — dataset fermo da agosto 2024](emendamenti-freschezza.md).** Issue collegata: [#38](https://github.com/aborruso/italianparliament-mcp/issues/38). |
35+
| 2026-07-08 08:00 | Borruso → Webmaster | Segnala che gli emendamenti collegati a DDL recenti risultano sempre assenti (DL Sicurezza 2025, Piano Casa 2026: 0 emendamenti) mentre sono regolarmente presenti su provvedimenti anche vecchi (Cura Italia 2020: 3.827; DL dic. 2022: 119). Query di verifica allegata: nessun DDL collegato a un emendamento ha `osr:dataPresentazione` successiva al 9/8/2024. Chiede se è un aggiornamento sospeso temporaneamente o se gli emendamenti recenti sono pubblicati altrove. **Contenuto tecnico integrale → [Emendamenti — dataset fermo da agosto 2024](emendamenti-freschezza.md).** Issue collegata: [#38](https://github.com/ondata/italianparliament-mcp/issues/38). |
3636

3737
*Prossimo passo: in attesa di risposta del Webmaster.*

docs/lod-wiki/senato/trappole.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,4 +39,4 @@ Quando la legislatura è codificata **solo nell'URI**, un range filter su `?s` +
3939
# Citations
4040

4141
[1] Verifica `CONCAT`/matching nomi (2026-07-01): `sparql query --endpoint senato` su `"Ignazio La Russa"``senatore/1275`.
42-
[2] Issue matching nomi: https://github.com/aborruso/italianparliament-mcp/issues/20
42+
[2] Issue matching nomi: https://github.com/ondata/italianparliament-mcp/issues/20

docs/lod-wiki/senato/votazione-ddl-link.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,4 +49,4 @@ Estesa il 1° luglio 2026 (pomeriggio) dopo aver scoperto che gli Ordini del Gio
4949
# Citations
5050

5151
[1] Indagine LOD del 2026-07-01 (issue #21): enumerazione percorsi + validazione resolver su `19-432-3``ddl/60201`, `19-21-1``ddl/56123`, `19-389-7``ddl/59837`.
52-
[2] https://github.com/aborruso/italianparliament-mcp/issues/21
52+
[2] https://github.com/ondata/italianparliament-mcp/issues/21

manifest.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,11 @@
77
"long_description": "MCP server for the Italian Parliament SPARQL endpoints (dati.camera.it, dati.senato.it). Tools for deputies, senators, bills, votes, speeches, parliamentary groups, government members, oversight acts, committees, rankings, and direct links to bill texts. Designed for journalists, researchers and parliamentary analysts.",
88
"author": {
99
"name": "aborruso",
10-
"url": "https://github.com/aborruso/italianparliament-mcp"
10+
"url": "https://github.com/ondata/italianparliament-mcp"
1111
},
1212
"repository": {
1313
"type": "git",
14-
"url": "https://github.com/aborruso/italianparliament-mcp"
14+
"url": "https://github.com/ondata/italianparliament-mcp"
1515
},
1616
"license": "MIT",
1717
"keywords": ["italian-parliament", "open-data", "camera", "senato", "sparql"],

package.json

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,14 @@
3838
],
3939
"author": "Andrea Borruso <aborruso@gmail.com>",
4040
"license": "MIT",
41+
"repository": {
42+
"type": "git",
43+
"url": "git+https://github.com/ondata/italianparliament-mcp.git"
44+
},
45+
"homepage": "https://github.com/ondata/italianparliament-mcp#readme",
46+
"bugs": {
47+
"url": "https://github.com/ondata/italianparliament-mcp/issues"
48+
},
4149
"dependencies": {
4250
"@modelcontextprotocol/sdk": "^1.27.1",
4351
"axios": "^1.7.9",

0 commit comments

Comments
 (0)