Przykładowa struktura pakietu artefaktów
Kompleksowy przypadek: rozwiązanie umowy najmu
Załącznik do minimalnego standardu artefaktu zespołowego v0.1.
Kompleksowy przykład: prawnik zarządu mienia komunalnego przygotowuje opinię o zgodności z prawem rozwiązania umowy najmu. Rozszerzony poziom pakietu.
1. Drzewo katalogów
MAT-2026-0042-arenda-rozirvannya/
├── README.md # paszport pakietu: co to jest, dla kogo, status
├── metadata.yaml # koperta pakietu (matter_id, wersje, poziom)
├── final/
│ └── vysnovok.md # opinia końcowa (dokument jako interfejs)
├── sources/
│ ├── source-registry.json # rejestr źródeł
│ ├── evidence-pack.jsonl # wyodrębnione fragmenty z powiązaniami
│ └── originals/ # kopie pierwotnych dokumentów (lub stabilne odnośniki)
│ ├── dogovir-orendy-2023.pdf
│ └── lyst-orendarya-2026-05.pdf
├── research/
│ ├── questions.md # pytania badawcze
│ ├── queries.jsonl # wykonane zapytania do rejestrów/orzecznictwa
│ ├── timeline.md # daty istotne prawnie
│ └── issue-map.md # czytelna dla człowieka mapa zagadnień
├── analysis/
│ ├── fact-matrix.json # fakty ze statusami
│ ├── rules-matrix.json # normy w brzmieniu na wymagane daty
│ ├── issue-tree.json # drzewo zagadnień z wnioskami
│ ├── critique-pack.json # słabe punkty i kontrargumenty
│ └── reasoning-graph.mmd # graf powiązań w formacie Mermaid
├── verification/
│ ├── citation-check.json # wynik kontroli cytatów
│ ├── date-check.json # wynik kontroli brzmień/dat
│ ├── redaction-check.json # kontrola danych wrażliwych
│ └── unresolved-issues.md # kwestie otwarte
├── handoff/
│ └── handoff.json # pakiet przekazania kierownikowi zarządu
└── logs/
├── decision-log.json # kluczowe decyzje i potwierdzenia
└── activity.jsonl # dziennik działań (poziom audytowy)
2. Fragmenty kluczowych artefaktów
metadata.yaml
package: legal-work-package
schema_version: "0.1"
matter_id: MAT-2026-0042
title: "Rozwiązanie umowy najmu mienia komunalnego: opinia prawna"
level: extended # basic | extended | audit
language: uk
created_by: { actor: "О. Шевченко", actor_type: joint, agent_env: "claude-code 2.x" }
handoff_to: "kierownik zarządu"
status: human_review_pending
versions: { fact_matrix: 4, rules_matrix: 2, issue_tree: 3, critique_pack: 2 }
sources/source-registry.json (fragment)
{
"artifact_type": "source_registry",
"matter_id": "MAT-2026-0042",
"version": 2,
"sources": [
{
"source_id": "SRC-001",
"type": "legislation",
"title": "Kodeks cywilny Ukrainy, art. 651",
"identifier": "435-15",
"url": "https://zakon.rada.gov.ua/laws/show/435-15",
"edition_date": "2026-05-01",
"verified_at": "2026-07-08",
"status": "verified"
},
{
"source_id": "SRC-007",
"type": "case_law",
"title": "Orzeczenie Sądu Kasacyjnego Gospodarczego (Sąd Najwyższy) z 12.03.2025 w sprawie nr 910/1234/24",
"url": "https://reyestr.court.gov.ua/Review/123456789",
"verified_at": "2026-07-08",
"status": "verified"
},
{
"source_id": "SRC-010",
"type": "matter_document",
"title": "Umowa najmu nr 15/2023 z dnia 01.02.2023",
"location": "originals/dogovir-orendy-2023.pdf",
"status": "original_on_file"
}
]
}
analysis/fact-matrix.json (fragment)
{
"artifact_type": "fact_matrix",
"version": 4,
"facts": [
{
"fact_id": "F-003",
"statement": "Najemca nie płacił czynszu od stycznia do maja 2026 roku",
"status": "established",
"evidence_ids": ["EV-004", "EV-005"],
"confirmed_by": "О. Шевченко",
"confirmed_at": "2026-07-09"
},
{
"fact_id": "F-006",
"statement": "Najemca powołuje się na okoliczności siły wyższej",
"status": "alleged",
"evidence_ids": ["EV-009"],
"note": "Nie przedstawiono zaświadczenia Izby Przemysłowo-Handlowej — status nie może zostać ustalony (established)"
}
]
}
analysis/critique-pack.json (fragment)
{
"artifact_type": "critique_pack",
"version": 2,
"items": [
{
"critique_id": "CR-001",
"target": "conclusion:C-001",
"type": "counterargument",
"statement": "Sąd może uznać naruszenie za nieistotne, jeśli zadłużenie zostało częściowo spłacone przed wniesieniem pozwu",
"supporting_sources": ["SRC-008"],
"severity": "medium",
"response": "W rozdziale 4 opinii dodano analizę ryzyka i alternatywny scenariusz"
}
]
}
handoff/handoff.json (fragment)
{
"artifact_type": "handoff_package",
"version": 1,
"from": "О. Шевченко (legal_analyst)",
"to": "kierownik zarządu (senior_reviewer)",
"depends_on": ["fact_matrix@4", "rules_matrix@2", "issue_tree@3", "critique_pack@2"],
"done": ["Przeanalizowano podstawy rozwiązania umowy na podstawie art. 651 Kodeksu cywilnego Ukrainy", "Przeanalizowano orzecznictwo Sądu Kasacyjnego Gospodarczego (Sąd Najwyższy) z lat 2024–2026"],
"verified": ["citation-check: passed", "date-check: passed", "redaction-check: passed"],
"disputed": ["Ocena istotności naruszenia (zob. CR-001)"],
"next_steps": ["Potwierdzić stanowisko w sprawie CR-001", "Podjąć decyzję o wniesieniu pozwu"],
"human_confirmation_required": true
}
analysis/reasoning-graph.mmd
graph LR
SRC001["SRC-001<br/>Kodeks cywilny Ukrainy, art. 651"] --> R001["R-001<br/>Podstawa rozwiązania:<br/>istotne naruszenie"]
SRC010["SRC-010<br/>Umowa najmu"] --> EV004["EV-004<br/>pkt 3.2: termin płatności"]
SRC011["SRC-011<br/>Wyciągi skarbowe"] --> EV005["EV-005<br/>brak płatności"]
EV004 --> F003["F-003 (established)<br/>Brak płatności przez 5 miesięcy"]
EV005 --> F003
F003 --> I001["I-001<br/>Czy naruszenie jest istotne?"]
R001 --> I001
SRC007["SRC-007<br/>Orzeczenie Sądu Kasacyjnego Gospodarczego (SN)"] --> I001
I001 --> C001["C-001<br/>Istnieją podstawy do rozwiązania"]
CR001["CR-001<br/>Kontrargument:<br/>częściowa spłata"] -.-> C001
C001 --> D001["D-001<br/>Decyzja: wniesienie pozwu<br/>⏳ potwierdzenie przez człowieka"]
Graf czyta się od lewej do prawej: źródła (SRC-001, SRC-010, SRC-011, SRC-007) zasilają dowody (EV-004, EV-005) oraz normę R-001; dowody składają się na ustalony fakt F-003, który wraz z normą i orzecznictwem tworzy zagadnienie I-001; zagadnienie prowadzi do wniosku C-001, przeciwko któremu skierowany jest kontrargument CR-001 (powiązanie przerywaną linią), a wniosek prowadzi do decyzji D-001, która oczekuje na potwierdzenie przez człowieka.
3. Co widzi odbiorca
Kierownik zarządu otwiera README oraz handoff.json — dwie minuty wystarczają, by zrozumieć, co zostało zrobione, co sprawdzono automatycznie, gdzie znajduje się jedyny sporny punkt (CR-001) i co wymaga jego decyzji. Jego agent w ciągu kilku sekund przeprowadza walidację schematu, kontrolę łańcucha powiązań i kontrolę cytatów. Weryfikacja przestała polegać na powtarzaniu całego badania, a stała się audytem jednego spornego punktu.
Ten sam pakiet za rok odnajdzie agent innego prawnika w podobnej sprawie: ponownie wykorzysta rejestr źródeł, sprawdzi, czy art. 651 Kodeksu cywilnego Ukrainy i orzecznictwo Sądu Najwyższego nie uległy zmianie, i zbuduje zaktualizowaną wersję z oznaczeniem tego, co dokładnie się zmieniło.
Uwaga: przykład jest syntetyczny; dane spraw i dokumentów są fikcyjne. Odczytywalne maszynowo przykłady wszystkich ośmiu artefaktów są utrzymywane w repozytorium modelu obiektowego VeriLex. Cały pakiet jest tworzony i weryfikowany za pomocą standardowych narzędzi gotowych środowisk agentowych (w tym przykładzie — Claude Code): nie użyto żadnego oprogramowania tworzonego na zamówienie.
Żywą wersję tego pakietu można zobaczyć w interaktywnym demo.