@orbitpanel/cli 1.11.0 → 1.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/intelligence/action-guardrails.d.ts +20 -0
- package/dist/lib/intelligence/action-guardrails.js +106 -0
- package/dist/lib/intelligence/action-guardrails.js.map +1 -0
- package/dist/lib/intelligence/action-parser.d.ts +2 -1
- package/dist/lib/intelligence/action-parser.js +18 -3
- package/dist/lib/intelligence/action-parser.js.map +1 -1
- package/dist/lib/intelligence/agent-prompt.js +38 -16
- package/dist/lib/intelligence/agent-prompt.js.map +1 -1
- package/oclif.manifest.json +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Action Guardrails — Validazione contenuto delle azioni proposte dal modello.
|
|
3
|
+
*
|
|
4
|
+
* Guardrail conservativi e semplici per ridurre over-suggestion.
|
|
5
|
+
* Nessun NLP complesso — solo regole di lunghezza minima,
|
|
6
|
+
* rilevamento domande, e verifica minima di contenuto azionabile.
|
|
7
|
+
*
|
|
8
|
+
* Principio: meglio rifiutare un'azione buona che accettarne una cattiva.
|
|
9
|
+
*/
|
|
10
|
+
import type { ActionParams, ActionIntent } from './action-parser.js';
|
|
11
|
+
export interface ContentValidationResult {
|
|
12
|
+
valid: boolean;
|
|
13
|
+
reason?: string;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Valida il contenuto di un'azione proposta.
|
|
17
|
+
* Complementare a validateActionParams (che verifica solo presenza/assenza).
|
|
18
|
+
* Questo verifica la qualità del contenuto.
|
|
19
|
+
*/
|
|
20
|
+
export declare function validateActionContent(intent: ActionIntent | string, params: ActionParams): ContentValidationResult;
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Action Guardrails — Validazione contenuto delle azioni proposte dal modello.
|
|
3
|
+
*
|
|
4
|
+
* Guardrail conservativi e semplici per ridurre over-suggestion.
|
|
5
|
+
* Nessun NLP complesso — solo regole di lunghezza minima,
|
|
6
|
+
* rilevamento domande, e verifica minima di contenuto azionabile.
|
|
7
|
+
*
|
|
8
|
+
* Principio: meglio rifiutare un'azione buona che accettarne una cattiva.
|
|
9
|
+
*/
|
|
10
|
+
// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
11
|
+
// GUARDRAIL RULES
|
|
12
|
+
// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
13
|
+
/** Lunghezza minima testo per tipo di azione */
|
|
14
|
+
const MIN_TEXT_LENGTH = {
|
|
15
|
+
create_note: 5,
|
|
16
|
+
create_task: 10,
|
|
17
|
+
create_decision: 15,
|
|
18
|
+
};
|
|
19
|
+
/** Pattern che indicano una domanda (non un'azione o decisione) */
|
|
20
|
+
const QUESTION_PATTERN = /^(come|cosa|perch[eé]|quando|dove|quale|quali|chi|che)\s/i;
|
|
21
|
+
const ENDS_WITH_QUESTION = /\?\s*$/;
|
|
22
|
+
/** Pattern che indicano contenuto azionabile (verbi imperativi/infinitivi) */
|
|
23
|
+
const ACTIONABLE_PATTERN = /\b(fix|fixa|fixare|aggiorna|aggiornare|implementa|implementare|crea|creare|rimuovi|rimuovere|testa|testare|verifica|verificare|controlla|controllare|migra|migrare|ottimizza|ottimizzare|refactor|deploy|deploya|configura|configurare|installa|installare|disabilita|disabilitare|abilita|abilitare|ripara|riparare|correggi|correggere|sostituisci|sostituire|sposta|spostare|rinomina|rinominare|pulisci|pulire|aggiungi|aggiungere)\b/i;
|
|
24
|
+
/** Pattern che indicano una decisione (scelta, posizione) */
|
|
25
|
+
const DECISION_PATTERN = /\b(usare|scegliere|adottare|preferire|decidere|passare a|migrare a|sostituire con|optare per|mantenere|abbandonare|deprecare|eliminare|introdurre|standardizzare)\b/i;
|
|
26
|
+
// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
27
|
+
// VALIDATION
|
|
28
|
+
// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
29
|
+
/**
|
|
30
|
+
* Valida il contenuto di un'azione proposta.
|
|
31
|
+
* Complementare a validateActionParams (che verifica solo presenza/assenza).
|
|
32
|
+
* Questo verifica la qualità del contenuto.
|
|
33
|
+
*/
|
|
34
|
+
export function validateActionContent(intent, params) {
|
|
35
|
+
switch (intent) {
|
|
36
|
+
case 'create_note':
|
|
37
|
+
return validateNoteContent(params.text);
|
|
38
|
+
case 'create_task':
|
|
39
|
+
return validateTaskContent(params.text);
|
|
40
|
+
case 'create_decision':
|
|
41
|
+
return validateDecisionContent(params.text);
|
|
42
|
+
case 'complete_task':
|
|
43
|
+
return validateCompleteTaskContent(params.taskId);
|
|
44
|
+
// Non-operative intents pass unconditionally
|
|
45
|
+
case 'none':
|
|
46
|
+
case 'explain':
|
|
47
|
+
case 'suggest_command':
|
|
48
|
+
return { valid: true };
|
|
49
|
+
default:
|
|
50
|
+
return { valid: false, reason: `Intent sconosciuto: ${intent}` };
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
// ─── Individual validators ──────────────────────────────────────
|
|
54
|
+
function validateNoteContent(text) {
|
|
55
|
+
if (!text || text.trim().length < MIN_TEXT_LENGTH.create_note) {
|
|
56
|
+
return { valid: false, reason: `Testo nota troppo breve (min ${MIN_TEXT_LENGTH.create_note} caratteri).` };
|
|
57
|
+
}
|
|
58
|
+
return { valid: true };
|
|
59
|
+
}
|
|
60
|
+
function validateTaskContent(text) {
|
|
61
|
+
if (!text) {
|
|
62
|
+
return { valid: false, reason: 'Testo task mancante.' };
|
|
63
|
+
}
|
|
64
|
+
const trimmed = text.trim();
|
|
65
|
+
if (trimmed.length < MIN_TEXT_LENGTH.create_task) {
|
|
66
|
+
return { valid: false, reason: `Testo task troppo breve (min ${MIN_TEXT_LENGTH.create_task} caratteri).` };
|
|
67
|
+
}
|
|
68
|
+
// Domanda → non è un task
|
|
69
|
+
if (QUESTION_PATTERN.test(trimmed) || ENDS_WITH_QUESTION.test(trimmed)) {
|
|
70
|
+
return { valid: false, reason: 'Il testo sembra una domanda, non un task azionabile.' };
|
|
71
|
+
}
|
|
72
|
+
// Deve contenere almeno un verbo d'azione o forma imperativa
|
|
73
|
+
if (!ACTIONABLE_PATTERN.test(trimmed)) {
|
|
74
|
+
return { valid: false, reason: 'Il task deve essere azionabile — descrivi cosa fare con un verbo d\'azione.' };
|
|
75
|
+
}
|
|
76
|
+
return { valid: true };
|
|
77
|
+
}
|
|
78
|
+
function validateDecisionContent(text) {
|
|
79
|
+
if (!text) {
|
|
80
|
+
return { valid: false, reason: 'Testo decisione mancante.' };
|
|
81
|
+
}
|
|
82
|
+
const trimmed = text.trim();
|
|
83
|
+
if (trimmed.length < MIN_TEXT_LENGTH.create_decision) {
|
|
84
|
+
return { valid: false, reason: `Testo decisione troppo breve (min ${MIN_TEXT_LENGTH.create_decision} caratteri).` };
|
|
85
|
+
}
|
|
86
|
+
// Domanda → non è una decisione
|
|
87
|
+
if (QUESTION_PATTERN.test(trimmed) || ENDS_WITH_QUESTION.test(trimmed)) {
|
|
88
|
+
return { valid: false, reason: 'Il testo sembra una domanda, non una decisione presa.' };
|
|
89
|
+
}
|
|
90
|
+
// Deve contenere un pattern decisionale
|
|
91
|
+
if (!DECISION_PATTERN.test(trimmed)) {
|
|
92
|
+
return { valid: false, reason: 'Il testo non sembra una decisione — usa verbi come "usare", "scegliere", "adottare", "passare a".' };
|
|
93
|
+
}
|
|
94
|
+
return { valid: true };
|
|
95
|
+
}
|
|
96
|
+
function validateCompleteTaskContent(taskId) {
|
|
97
|
+
if (!taskId || taskId.trim().length === 0) {
|
|
98
|
+
return { valid: false, reason: 'ID task mancante per il completamento.' };
|
|
99
|
+
}
|
|
100
|
+
// Task IDs in SessionEngine sono 12 char, prefix match richiede 6+
|
|
101
|
+
if (taskId.trim().length < 6) {
|
|
102
|
+
return { valid: false, reason: 'ID task troppo breve (min 6 caratteri per match univoco).' };
|
|
103
|
+
}
|
|
104
|
+
return { valid: true };
|
|
105
|
+
}
|
|
106
|
+
//# sourceMappingURL=action-guardrails.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"action-guardrails.js","sourceRoot":"","sources":["../../../src/lib/intelligence/action-guardrails.ts"],"names":[],"mappings":"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"}
|
|
@@ -52,7 +52,8 @@ export interface ValidationResult {
|
|
|
52
52
|
export declare function parseActionFromResponse(rawText: string): ParseResult;
|
|
53
53
|
/** Controlla se un'azione è operativa (produce side effects) */
|
|
54
54
|
export declare function isOperativeAction(action: ProposedAction): boolean;
|
|
55
|
-
/** Valida un'azione proposta rispetto ai suoi parametri
|
|
55
|
+
/** Valida un'azione proposta rispetto ai suoi parametri e contenuto.
|
|
56
|
+
* Combina check strutturale (campo presente?) + guardrail contenuto (qualita testo). */
|
|
56
57
|
export declare function validateActionParams(action: ProposedAction): ValidationResult;
|
|
57
58
|
/** Verifica se un'azione è consentita dalla capability map */
|
|
58
59
|
export declare function isActionAllowed(action: ProposedAction, capabilityLevel: CapabilityLevel, phase: ImplementationPhase): ValidationResult;
|
|
@@ -89,8 +89,10 @@ export function parseActionFromResponse(rawText) {
|
|
|
89
89
|
export function isOperativeAction(action) {
|
|
90
90
|
return OPERATIVE_INTENTS.includes(action.intent);
|
|
91
91
|
}
|
|
92
|
-
/** Valida un'azione proposta rispetto ai suoi parametri
|
|
92
|
+
/** Valida un'azione proposta rispetto ai suoi parametri e contenuto.
|
|
93
|
+
* Combina check strutturale (campo presente?) + guardrail contenuto (qualita testo). */
|
|
93
94
|
export function validateActionParams(action) {
|
|
95
|
+
// Structural check: required fields present?
|
|
94
96
|
switch (action.intent) {
|
|
95
97
|
case 'create_note':
|
|
96
98
|
case 'create_task':
|
|
@@ -98,12 +100,12 @@ export function validateActionParams(action) {
|
|
|
98
100
|
if (!action.params.text || action.params.text.trim().length === 0) {
|
|
99
101
|
return { valid: false, reason: 'Testo mancante per l\'azione.' };
|
|
100
102
|
}
|
|
101
|
-
|
|
103
|
+
break;
|
|
102
104
|
case 'complete_task':
|
|
103
105
|
if (!action.params.taskId || action.params.taskId.trim().length === 0) {
|
|
104
106
|
return { valid: false, reason: 'ID task mancante.' };
|
|
105
107
|
}
|
|
106
|
-
|
|
108
|
+
break;
|
|
107
109
|
case 'none':
|
|
108
110
|
case 'explain':
|
|
109
111
|
case 'suggest_command':
|
|
@@ -111,6 +113,19 @@ export function validateActionParams(action) {
|
|
|
111
113
|
default:
|
|
112
114
|
return { valid: false, reason: `Azione sconosciuta: ${action.intent}` };
|
|
113
115
|
}
|
|
116
|
+
// Content guardrail: quality check for operative intents
|
|
117
|
+
try {
|
|
118
|
+
// Lazy import to avoid circular dependency
|
|
119
|
+
const { validateActionContent } = require('./action-guardrails.js');
|
|
120
|
+
const contentCheck = validateActionContent(action.intent, action.params);
|
|
121
|
+
if (!contentCheck.valid) {
|
|
122
|
+
return { valid: false, reason: contentCheck.reason };
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
catch {
|
|
126
|
+
// If guardrails module unavailable, fall through with structural check only
|
|
127
|
+
}
|
|
128
|
+
return { valid: true };
|
|
114
129
|
}
|
|
115
130
|
/** Verifica se un'azione è consentita dalla capability map */
|
|
116
131
|
export function isActionAllowed(action, capabilityLevel, phase) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"action-parser.js","sourceRoot":"","sources":["../../../src/lib/intelligence/action-parser.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"action-parser.js","sourceRoot":"","sources":["../../../src/lib/intelligence/action-parser.ts"],"names":[],"mappings":"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"}
|
|
@@ -39,28 +39,50 @@ const BEHAVIORAL_RULES = `REGOLE DI COMPORTAMENTO:
|
|
|
39
39
|
- Sii conciso: max 3-4 frasi per risposta, a meno che non sia una spiegazione richiesta
|
|
40
40
|
- Parla italiano
|
|
41
41
|
- Non usare emoji`;
|
|
42
|
-
const STRUCTURED_ACTIONS = `
|
|
43
|
-
Quando ritieni utile proporre un'azione locale (nota, task, decisione, completamento task),
|
|
44
|
-
aggiungi un blocco alla fine della tua risposta con questo formato esatto:
|
|
42
|
+
const STRUCTURED_ACTIONS = `DECISION BOUNDARY — Quando agire e quando no:
|
|
45
43
|
|
|
44
|
+
LIVELLO 1 — EXPLAIN (default):
|
|
45
|
+
Rispondi con testo. NON includere blocco azione.
|
|
46
|
+
Quando: domande, chiarimenti, spiegazioni, "cos'e", "come funziona", "perche".
|
|
47
|
+
|
|
48
|
+
LIVELLO 2 — SUGGEST:
|
|
49
|
+
Rispondi con testo e suggerisci un comando slash.
|
|
50
|
+
Quando: l'utente ha un problema pratico ma non ha detto di voler salvare qualcosa.
|
|
51
|
+
Esempio: "Prova /session start per tracciare il lavoro."
|
|
52
|
+
NON proporre action strutturata — suggerisci il comando nel testo.
|
|
53
|
+
|
|
54
|
+
LIVELLO 3 — ACT (solo con segnale forte):
|
|
55
|
+
Rispondi con testo E aggiungi un blocco azione alla fine.
|
|
56
|
+
Quando: l'utente esprime CHIARAMENTE volonta di registrare, creare, completare.
|
|
57
|
+
Segnali forti: "salva come task", "registra", "aggiungi nota", "ho deciso", "ho finito il task".
|
|
58
|
+
Se sei in dubbio, resta al LIVELLO 2 (suggest) — meglio suggerire che agire.
|
|
59
|
+
|
|
60
|
+
FORMATO BLOCCO AZIONE:
|
|
46
61
|
<orbit-action>
|
|
47
|
-
{"action":"create_task","params":{"text":"Descrizione
|
|
62
|
+
{"action":"create_task","params":{"text":"Descrizione"}}
|
|
48
63
|
</orbit-action>
|
|
49
64
|
|
|
50
65
|
Azioni disponibili:
|
|
51
|
-
- create_note:
|
|
52
|
-
- create_task:
|
|
53
|
-
- create_decision:
|
|
54
|
-
- complete_task:
|
|
55
|
-
- suggest_command:
|
|
56
|
-
|
|
66
|
+
- create_note: osservazione, stato, commento operativo (min 5 caratteri)
|
|
67
|
+
- create_task: azione concreta futura, con verbo azionabile (min 10 caratteri)
|
|
68
|
+
- create_decision: scelta architetturale o operativa presa (min 15 caratteri, con verbo decisionale)
|
|
69
|
+
- complete_task: completamento task specifico (richiede taskId visibile nel contesto, min 6 char)
|
|
70
|
+
- suggest_command: suggerimento comando slash (non operativo)
|
|
71
|
+
|
|
72
|
+
DISTINZIONE OBBLIGATORIA:
|
|
73
|
+
- NOTA: "ho sistemato il CSS" → osservazione, stato attuale
|
|
74
|
+
- TASK: "fixare il layout responsive nel footer" → azione da fare
|
|
75
|
+
- DECISIONE: "usare Tailwind invece di CSS custom per il design system" → scelta presa
|
|
76
|
+
- Se il contenuto non e chiaramente task o decisione, usa NOTA
|
|
57
77
|
|
|
58
|
-
REGOLE
|
|
59
|
-
-
|
|
60
|
-
- NON
|
|
61
|
-
-
|
|
62
|
-
-
|
|
63
|
-
-
|
|
78
|
+
REGOLE ANTI-OVER-SUGGESTION:
|
|
79
|
+
- NON proporre azioni per domande ("come funziona X?")
|
|
80
|
+
- NON trasformare spiegazioni tecniche in decisioni automatiche
|
|
81
|
+
- NON proporre complete_task se il task non e identificabile nel contesto sessione
|
|
82
|
+
- NON proporre task per semplici osservazioni ("il sito e lento")
|
|
83
|
+
- Una diagnosi NON genera automaticamente un task
|
|
84
|
+
- Nel DUBBIO: rispondi solo con testo, senza blocco azione
|
|
85
|
+
- Max 1 azione per risposta`;
|
|
64
86
|
const TONE = `TONO:
|
|
65
87
|
Sei un assistente di bordo. Diretto, pratico, informato.
|
|
66
88
|
Non sei un chatbot allegro. Non sei un consulente che spiega troppo.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-prompt.js","sourceRoot":"","sources":["../../../src/lib/intelligence/agent-prompt.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAE/D,qEAAqE;AACrE,yBAAyB;AACzB,qEAAqE;AAErE,MAAM,QAAQ,GAAG;;;;2EAI0D,CAAC;AAE5E,MAAM,oBAAoB,GAAG;;;;wGAI2E,CAAC;AAEzG,MAAM,aAAa,GAAG;;;;;;sDAMgC,CAAC;AAEvD,MAAM,gBAAgB,GAAG;;;;;;;;;;kBAUP,CAAC;AAEnB,MAAM,kBAAkB,GAAG
|
|
1
|
+
{"version":3,"file":"agent-prompt.js","sourceRoot":"","sources":["../../../src/lib/intelligence/agent-prompt.ts"],"names":[],"mappings":"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"}
|
package/oclif.manifest.json
CHANGED