feat(ms-ai-architect): Spor E krav 2 — onboarding Phase 6 guided-prose (coaching) (TDD) [skip-docs]
Phase 6 (fri kontekst) coacher nå brukeren FØR det åpne spørsmålet med to lister: «hva som typisk hører hjemme» (initiativer, smertepunkter, tidligere hendelser, strategiske føringer, leverandør-preferanser/-forbud) og «hva du vanligvis kan hoppe over» (det de fem strukturerte kategoriene alt fanget; generell AI-synsing; secrets/sensitive personopplysninger → ALDRI). Lagring forblir ordrett. Lukker operatør-krav 2 (S39): onboarding skal coache på inkludering/ekskludering, ikke bare stille ett blankt spørsmål. TDD: 7 nye assert i tests/test-onboarding-parity.sh (RED→GREEN), suite-navn utvidet til «K4-paritet + Phase 6 guided-prose». 21/21 PASS. validate 0-fail, test-hooks 11/11, user-data node 25/25 — alle grønne. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
97ebcd737a
commit
d6a60ca480
2 changed files with 39 additions and 3 deletions
|
|
@ -112,9 +112,24 @@ After answers, write `business-references.md` to the data directory.
|
||||||
|
|
||||||
### Phase 6: Fri kontekst (`org/free-context.md`) — VALGFRI
|
### Phase 6: Fri kontekst (`org/free-context.md`) — VALGFRI
|
||||||
|
|
||||||
Et enkelt fritekst-felt for alt de strukturerte spørsmålene ikke fanget. Still ÉTT åpent spørsmål (vanlig prompt, ikke AskUserQuestion):
|
Et fritekst-felt for alt de strukturerte spørsmålene ikke fanget. Dette er ofte den enkeltkategorien som gjør rådene mest treffsikre — så ikke still spørsmålet blankt. **Du skal coache brukeren** på hva som hører hjemme her og hva de trygt kan hoppe over. Presenter de to listene under (kort, i prosa) FØR det åpne spørsmålet, slik at brukeren vet hva som er verdt å nevne — og ikke kaster bort tid på det som ikke hjelper.
|
||||||
|
|
||||||
> «Er det noe annet du vil at AI Architect skal vite om virksomheten din? F.eks. pågående initiativer, smertepunkter, tidligere AI-/sky-hendelser, strategiske føringer, eller preferanser — alt som gjør rådene mer treffsikre. (Valgfritt — trykk enter / skriv «hopp over» for å hoppe over.)»
|
**Hva som typisk hører hjemme her** (nevn disse som eksempler til brukeren):
|
||||||
|
- Pågående eller planlagte AI-/sky-initiativer, og hvor de står
|
||||||
|
- Konkrete smertepunkter eller flaskehalser dere vil at AI skal løse
|
||||||
|
- Tidligere AI-/sky-hendelser, mislykkede piloter eller lærdommer
|
||||||
|
- Strategiske føringer, veikart eller politiske/organisatoriske rammer
|
||||||
|
- Leverandør- eller teknologi-preferanser og -forbud (f.eks. «ikke OpenAI direkte», «kun EU-region»)
|
||||||
|
- Bransje- eller virksomhetsspesifikke forhold som ikke passet inn i kategoriene over
|
||||||
|
|
||||||
|
**Hva du vanligvis kan hoppe over her** (si dette eksplisitt så brukeren ikke gjentar seg):
|
||||||
|
- Alt som allerede er fanget i de fem strukturerte kategoriene (sektor, lisens, dataklassifisering, plattformvalg osv.) — ikke gjenta det
|
||||||
|
- Generell AI-synsing uten konkret virksomhetsrelevans
|
||||||
|
- Passord, nøkler, secrets eller sensitive personopplysninger — slikt skal ALDRI inn her
|
||||||
|
|
||||||
|
Still deretter ÉTT åpent spørsmål (vanlig prompt, ikke AskUserQuestion):
|
||||||
|
|
||||||
|
> «Er det noe annet du vil at AI Architect skal vite om virksomheten din? Se gjerne på listen over — alt som gjør rådene mer treffsikre. (Valgfritt — trykk enter / skriv «hopp over» for å hoppe over.)»
|
||||||
|
|
||||||
- **Hvis brukeren gir tekst:** skriv `free-context.md` til datakatalogen med brukerens prosa gjengitt ordrett (ikke omskriv eller forkort):
|
- **Hvis brukeren gir tekst:** skriv `free-context.md` til datakatalogen med brukerens prosa gjengitt ordrett (ikke omskriv eller forkort):
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -24,7 +24,7 @@ if [ ! -f "$AGENT" ]; then
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
init_suite "Onboarding Privat-sektor-paritet (K4)"
|
init_suite "Onboarding-agent kildesjekk (K4-paritet + Phase 6 guided-prose)"
|
||||||
|
|
||||||
# === Forgrening: sektortype velges først og styrer oppfølgingen ===
|
# === Forgrening: sektortype velges først og styrer oppfølgingen ===
|
||||||
assert_matches_pattern "$AGENT" "Sektortype.*Offentlig sektor, Privat sektor" \
|
assert_matches_pattern "$AGENT" "Sektortype.*Offentlig sektor, Privat sektor" \
|
||||||
|
|
@ -52,6 +52,27 @@ done
|
||||||
assert_matches_pattern "$AGENT" "ALDRI private virksomheter om Offentleglova" \
|
assert_matches_pattern "$AGENT" "ALDRI private virksomheter om Offentleglova" \
|
||||||
"Private spørres ALDRI Offentleglova/Arkivloven/Forvaltningsloven"
|
"Private spørres ALDRI Offentleglova/Arkivloven/Forvaltningsloven"
|
||||||
|
|
||||||
|
# === Spor E krav 2: Phase 6 guided-prose (coaching) ===
|
||||||
|
# Operatør-direktiv S39 (memory: onboarding-quality-bar): fri-kontekst-fasen skal
|
||||||
|
# ikke bare stille ÉtT blankt spørsmål — den skal COACHE brukeren på hva som typisk
|
||||||
|
# hører hjemme og hva som trygt kan hoppes over, så fri-konteksten faktisk gjør
|
||||||
|
# rådene mer treffsikre (multiplikator-effekten). Vi asserterer mot agent-kilden.
|
||||||
|
assert_matches_pattern "$AGENT" "coache? brukeren" \
|
||||||
|
"Phase 6 instruerer agenten om å coache brukeren (ikke bare stille blankt spørsmål)"
|
||||||
|
assert_matches_pattern "$AGENT" "[Pp]resenter de to listene" \
|
||||||
|
"Phase 6 ber agenten presentere coaching-listene for brukeren"
|
||||||
|
assert_matches_pattern "$AGENT" "typisk hører hjemme" \
|
||||||
|
"Phase 6 lister hva som typisk bør med (inkluderings-coaching)"
|
||||||
|
assert_matches_pattern "$AGENT" "vanligvis kan hoppe over" \
|
||||||
|
"Phase 6 lister hva som vanligvis kan hoppes over (ekskluderings-coaching)"
|
||||||
|
assert_matches_pattern "$AGENT" "allerede.*fanget i de fem strukturerte kategori" \
|
||||||
|
"Phase 6 ber bruker ikke gjenta det de fem strukturerte kategoriene alt fanget"
|
||||||
|
assert_matches_pattern "$AGENT" "(secrets|sensitive personopplysninger).*ALDRI" \
|
||||||
|
"Phase 6 advarer mot å lime inn secrets/sensitive personopplysninger"
|
||||||
|
# Regresjon: fri-konteksten lagres fortsatt ordrett (ikke omskrevet/forkortet)
|
||||||
|
assert_matches_pattern "$AGENT" "ordrett" \
|
||||||
|
"Phase 6 lagrer fortsatt brukerens prosa ordrett (regresjonsvakt)"
|
||||||
|
|
||||||
# === Orkestratoren er sektor-nøytral (delegerer, hardkoder ikke offentlig) ===
|
# === Orkestratoren er sektor-nøytral (delegerer, hardkoder ikke offentlig) ===
|
||||||
if [ -f "$ORCH" ]; then
|
if [ -f "$ORCH" ]; then
|
||||||
if grep -qE "Onboarding-agenten styrer selve intervjuet" "$ORCH"; then
|
if grep -qE "Onboarding-agenten styrer selve intervjuet" "$ORCH"; then
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue