Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
242 commits
Select commit Hold shift + click to select a range
855d6d7
Merge pull request #96 from codetalks-hw/main
zhangwenjun-huawei Aug 21, 2026
4e42b6d
refactor(core): unify exception root on A2ATError with machine-readab…
codetalks-hw Aug 21, 2026
fe0b4bb
refactor(llm): fold LLM exception tree into A2ATError
codetalks-hw Aug 21, 2026
f3bf911
refactor(prompt): re-parent prompt exceptions onto A2ATError
codetalks-hw Aug 21, 2026
3fb7c86
refactor(negotiation): remove NegotiationContentException in favor of…
codetalks-hw Aug 21, 2026
d801436
refactor(facade): converge client/server exception handling on A2ATError
codetalks-hw Aug 21, 2026
d32e1c3
docs: rewrite exception architecture sections for A2ATError unification
codetalks-hw Aug 21, 2026
e8f9c2b
Merge pull request #97 from codetalks-hw/refactor/exception-unification
zhangwenjun-huawei Aug 21, 2026
96b2715
refactor: rename template_uri metadata key to templateUri
wushunhao Aug 21, 2026
9e7c2d3
Merge pull request #98 from wushunhao/feat/content-validation
zhangwenjun-huawei Aug 21, 2026
25a0876
feat(core): add TemplateUri value type and StandardTemplates constants
codetalks-hw Aug 21, 2026
6fe12d3
fix(profile): include JDK 17 in old_jdk_support activation for error-…
Zhoujie628 Aug 21, 2026
88f21ff
Merge pull request #100 from Zhoujie628/main
zhangwenjun-huawei Aug 21, 2026
e114d5f
refactor(templates): converge hardcoded template URI strings onto Sta…
codetalks-hw Aug 21, 2026
c100760
Merge pull request #101 from codetalks-hw/refactor/standard-template-uri
zhangwenjun-huawei Aug 21, 2026
88eec9a
refactor(validation): remove TemplateReference in favor of generic pi…
codetalks-hw Aug 21, 2026
2fa35f9
Merge pull request #102 from codetalks-hw/refactor/standard-template-uri
zhangwenjun-huawei Aug 21, 2026
a9a52ca
refactor(templates): reshape template URI layout to path-segments wit…
codetalks-hw Aug 21, 2026
fdcae2f
Merge pull request #103 from codetalks-hw/refactor/standard-template-uri
zhangwenjun-huawei Aug 21, 2026
0a9adb4
refactor(api): replace String templateUri with TemplateUri type on fa…
codetalks-hw Aug 21, 2026
64ff286
refactor(core,prompt,negotiation): move TemplateUri/StandardTemplates…
codetalks-hw Aug 21, 2026
5f7f638
refactor(negotiation,prompt,core): tighten internal implementation cl…
codetalks-hw Aug 21, 2026
3424f5c
refactor(model): spell out Information content types and default Temp…
codetalks-hw Aug 21, 2026
f858089
refactor(core,negotiation,prompt): register stray error codes, consol…
codetalks-hw Aug 21, 2026
3a7a0c5
refactor(core,prompt,negotiation): switch PromptTemplate.uri to Templ…
codetalks-hw Aug 22, 2026
40028bb
refactor(negotiation,resources): file-driven negotiation vocabulary a…
codetalks-hw Aug 22, 2026
1ef23f1
Merge pull request #104 from codetalks-hw/refactor/standard-template-uri
zhangwenjun-huawei Aug 22, 2026
1ef7d77
fix(negotiation): harden vocabulary loading and align local-root cach…
codetalks-hw Aug 22, 2026
52e7d29
Merge pull request #105 from codetalks-hw/refactor/standard-template-uri
zhangwenjun-huawei Aug 22, 2026
1b39772
Merge pull request #106 from codetalks-hw/refactor/standard-template-…
zhangwenjun-huawei Aug 22, 2026
5d18fda
docs(core,negotiation): fix @since month to 2026-08 for newly added c…
codetalks-hw Aug 22, 2026
b2493f2
feat: add abort template, refresh energy-saving template
zhangwenjun-huawei Aug 22, 2026
5f202b8
Merge pull request #107 from zhangwenjun-huawei/main
zhangwenjun-huawei Aug 22, 2026
a0795ee
Merge pull request #108 from codetalks-hw/fix/javadoc-since-2026-08
zhangwenjun-huawei Aug 22, 2026
514f8e8
feat(negotiation): address the common abort template in the reference…
codetalks-hw Aug 22, 2026
db4bd50
feat(negotiation): load the common abort template and its vocabulary …
codetalks-hw Aug 22, 2026
609031a
feat(negotiation): generate abort messages from typed data
codetalks-hw Aug 22, 2026
0afc753
feat(negotiation): extract, generate and validate abort messages end …
codetalks-hw Aug 22, 2026
ef6f02d
feat(client,server,negotiation): mirror the abort API on both facades
codetalks-hw Aug 22, 2026
e6995d3
refactor(negotiation): rename AbortContent to NegotiationAbortContent
codetalks-hw Aug 22, 2026
b746b09
Merge pull request #116 from codetalks-hw/feat/negotiation-abort-support
zhangwenjun-huawei Aug 22, 2026
3242c7c
fix: load content_validation prompts with .md extension and wrap LLM …
wushunhao Aug 22, 2026
a270e2a
fix: reject prompt compliance when semantic errors are non-empty
wushunhao Aug 22, 2026
0987a20
fix: make OpenAIClient lazy sdkClient init thread-safe with volatile DCL
wushunhao Aug 22, 2026
63aa66d
fix: require data schema in FromDataWithSchema and send full slot des…
wushunhao Aug 22, 2026
14b1681
Merge pull request #109 from wushunhao/feat/content-validation
zhangwenjun-huawei Aug 22, 2026
cda1879
fix(prompt): add missing .md suffix
qinyanhao01 Aug 22, 2026
b4cdf7e
feat(sample): add task-t accuracy validation demo
qinyanhao01 Aug 22, 2026
48d6322
feat(llm): support A2AT_LLM_REASONING_EFFORT and guard against empty …
Zhoujie628 Aug 22, 2026
3a376fc
chore(sample): add task-t client env template
qinyanhao01 Aug 22, 2026
d98a8e1
fix(prompt): load content_validation prompts with .md extension and d…
Zhoujie628 Aug 22, 2026
2e99006
Merge pull request #113 from Zhoujie628/fix/semantic-validator-prompt…
zhangwenjun-huawei Aug 22, 2026
b062c38
fix(llm): validate A2AT_LLM_REASONING_EFFORT at config load and docum…
Zhoujie628 Aug 22, 2026
07a89a0
Merge pull request #114 from Zhoujie628/feat/llm-reasoning-effort
zhangwenjun-huawei Aug 22, 2026
c700034
fix(prompt): keep single-brace example text verbatim instead of faili…
Zhoujie628 Aug 22, 2026
e874e35
fix(client): use double-braced unknown slot to trigger render failure…
Zhoujie628 Aug 22, 2026
952baad
test: update extractor schema injection test to expect JSON-serialize…
wushunhao Aug 22, 2026
ed326c0
feat: serialize FromDataWithSchema data schema as JSON in LLM user pr…
wushunhao Aug 22, 2026
7110356
test: update client extractor schema test to use JSON Schema format
wushunhao Aug 22, 2026
a820485
refactor: rename validateAndFilling*Data to validate*PromptAndDataFil…
wushunhao Aug 22, 2026
875f284
Merge pull request #119 from wushunhao/feat/content-validation
zhangwenjun-huawei Aug 22, 2026
0657ef7
feat(sample): add service-recovery sample with unified SampleRunner
wangruiyang8 Aug 22, 2026
a256a59
feat(sample): add negotiation end-to-end demo and fromData/fromText A…
Zhoujie628 Aug 22, 2026
bc6470b
refactor(sample): load negotiation scenario data from scenario.json
Zhoujie628 Aug 22, 2026
2ff20df
refactor(sample): keep only generic rules in negotiation code, move a…
Zhoujie628 Aug 22, 2026
03a0bd4
fix(prompt): keep single-brace example text verbatim instead of faili…
Zhoujie628 Aug 22, 2026
7b44fcd
fix(client): use double-braced unknown slot to trigger render failure…
Zhoujie628 Aug 22, 2026
bc493ee
feat(sample): stream transport support and release-grade design document
Zhoujie628 Aug 22, 2026
8ae2fd7
feat(sample): add negotiation qwen evaluation
cnafan Aug 22, 2026
680f466
feat(sample): improve negotiation evaluation diagnostics
cnafan Aug 22, 2026
bf68ae9
fix(sample): align negotiation validation api
cnafan Aug 22, 2026
fb3df64
fix(sample): adapt to validateTaskPromptAndDataFilling rename
Zhoujie628 Aug 22, 2026
be4b176
Merge pull request #115 from Zhoujie628/feat/negotiation-sample
zhangwenjun-huawei Aug 22, 2026
b13a9e3
feat(sample): add negotiation smoke evaluation set
cnafan Aug 22, 2026
15c5d90
Merge pull request #118 from Zhoujie628/fix/renderer-single-brace
zhangwenjun-huawei Aug 22, 2026
2d67ee0
fix(sample): evaluate negotiation APIs end to end
cnafan Aug 22, 2026
ffc408d
refactor(sample): split notificationDataFormat schema into per-field …
wangruiyang8 Aug 22, 2026
490ebaa
Merge branch 'main' of github.com:project-openan/a2a-t-sdk-java
qinyanhao01 Aug 22, 2026
6dd6442
fix(sample): report negotiation end-to-end success
cnafan Aug 22, 2026
a3fe444
Merge remote-tracking branch 'origin/main'
cnafan Aug 22, 2026
16d4da2
chore(sample): exclude local negotiation guides
cnafan Aug 22, 2026
492d7df
Merge branch 'main' of https://github.com/project-openan/a2a-t-sdk-java
wangruiyang8 Aug 22, 2026
b43ada3
Merge pull request #122 from cnafan/feat/private-line-negotiation-eva…
zhangwenjun-huawei Aug 22, 2026
bbd21de
fix(sample): adapt task-t to refactored sdk
qinyanhao01 Aug 22, 2026
874be80
feat(sample): generate service-recovery javaargs.txt for startup cons…
wangruiyang8 Aug 22, 2026
9203756
Merge pull request #120 from wangruiyang8/main
zhangwenjun-huawei Aug 22, 2026
f3d99fb
Merge pull request #121 from qinyanhao01/main
zhangwenjun-huawei Aug 22, 2026
f885885
feat(a2a-t-sample): split task-t cases by args
qinyanhao01 Aug 22, 2026
60b637c
Merge remote-tracking branch 'remote/main'
qinyanhao01 Aug 22, 2026
4820d59
feat(sample): add negotiation interface closed-loop evaluator with re…
Zhoujie628 Aug 22, 2026
0570b45
fix(prompt): preserve null semantic params so missing slots stay dete…
Zhoujie628 Aug 22, 2026
71cf21f
docs(sample): explain @-argfile run form and document the negotiation…
Zhoujie628 Aug 22, 2026
d535e20
Merge pull request #125 from Zhoujie628/feat/negotiation-interface-eval
zhangwenjun-huawei Aug 22, 2026
27c631e
Merge pull request #128 from Zhoujie628/fix/semantic-validator-null-p…
zhangwenjun-huawei Aug 22, 2026
456a5dc
refactor(core): move NegotiationContext to core model
codetalks-hw Aug 22, 2026
1d67952
feat(core): carry negotiation context in MetadataContent metadata
codetalks-hw Aug 22, 2026
7df5f61
feat(negotiation): take explicit negotiation context in validate APIs
codetalks-hw Aug 22, 2026
41d0247
feat(negotiation): drop the negotiation context section from templates
codetalks-hw Aug 22, 2026
46129c5
docs: update negotiation context metadata contract in both guides
codetalks-hw Aug 22, 2026
af29b33
fix(sample): adapt negotiation interface evaluator to explicit Negoti…
codetalks-hw Aug 22, 2026
2b85b96
Merge pull request #129 from codetalks-hw/feat/negotiation-context-me…
zhangwenjun-huawei Aug 22, 2026
9421524
Merge pull request #123 from qinyanhao01/main
zhangwenjun-huawei Aug 22, 2026
b595687
refactor(sample): restructure service-recovery reportFormat to struct…
wangruiyang8 Aug 22, 2026
ad86ab2
test(sample): add accuracy test for service-recovery NotificationT ge…
wangruiyang8 Aug 22, 2026
18be1f7
Merge pull request #130 from wangruiyang8/main
zhangwenjun-huawei Aug 22, 2026
d30b0a7
docs(negotiation): align context javadoc with the negotiationContext …
codetalks-hw Aug 22, 2026
6b5116c
fix(lint): align linter canonical name with en-US template heading
wushunhao Aug 23, 2026
ea370ee
feat: add Authorization-T slot schemas with client and server tests
wushunhao Aug 23, 2026
8f84e26
feat(sample): add Authorization-T demo with outcome-based scenario va…
wushunhao Aug 23, 2026
000528f
docs(sample): add Javadoc/@since and pre-fill authz.env defaults
wushunhao Aug 23, 2026
f3b17aa
Merge pull request #131 from wushunhao/feat/auth-demo
zhangwenjun-huawei Aug 23, 2026
3070178
Merge pull request #132 from codetalks-hw/docs/fix-negotiation-contex…
zhangwenjun-huawei Aug 23, 2026
daa282e
chore: ignore .worktrees directory
wushunhao Aug 22, 2026
67da7cf
refactor: unify LLM config into single parse chain and cache LLM clie…
wushunhao Aug 22, 2026
d5db8eb
refactor: remove client bridge layer, rule extractor and dead classes…
wushunhao Aug 23, 2026
6643552
test: backfill characterization tests for recognizer, orchestrator, b…
wushunhao Aug 23, 2026
c2d5950
test: adapt Authorization slot schema resource test to prompt module …
wushunhao Aug 23, 2026
623ffa4
style: apply spotless to changed files and drop redundant unmodifiabl…
wushunhao Aug 23, 2026
adff9ea
feat(prompt): refresh service-recovery template and energy-saving tem…
zhangwenjun-huawei Aug 23, 2026
96c12b5
feat(prompt): refresh slot.json
zhangwenjun-huawei Aug 23, 2026
9873524
Merge pull request #134 from zhangwenjun-huawei/main
zhangwenjun-huawei Aug 23, 2026
f50a3ca
refactor: rename ScenarioRecognitionFunction to ScenarioRecognizer, S…
wushunhao Aug 23, 2026
49f40d1
Merge pull request #133 from wushunhao/feat/content-validation
zhangwenjun-huawei Aug 23, 2026
d3da580
fix(validation): load content_validation prompts from classpath and e…
wushunhao Aug 23, 2026
cf0aff0
fix(validation): address review findings on PR #136
wushunhao Aug 23, 2026
823f76a
Merge pull request #136 from wushunhao/fix/content-validation-prompt-…
zhangwenjun-huawei Aug 24, 2026
1182634
feat(a2a-t-core): carry partial params in validation exception
qinyanhao01 Aug 24, 2026
f262a76
feat(a2a-t-sample): print failure details in demo main
qinyanhao01 Aug 24, 2026
f1d4023
test(a2a-t-sample): trim rejection cases to required slots
qinyanhao01 Aug 24, 2026
997ff68
Merge branch 'main' of github.com:project-openan/a2a-t-sdk-java
qinyanhao01 Aug 24, 2026
f6bf16c
feat(sample): negotiation interface evaluator with fine-grained cases…
Zhoujie628 Aug 24, 2026
0d4f8c8
docs(sample): add ready-to-copy eval env template to the evaluator guide
Zhoujie628 Aug 24, 2026
543dfc5
Merge pull request #142 from Zhoujie628/feat/negotiation-interface-eval
zhangwenjun-huawei Aug 24, 2026
6254dcb
test(negotiation): add data-driven corpus harness and full case corpus
codetalks-hw Aug 23, 2026
0190851
test(negotiation): add jqwik property layer for negotiation content APIs
codetalks-hw Aug 23, 2026
b6bc1b9
chore(tools): add corpus index and review tooling
codetalks-hw Aug 24, 2026
2972c32
test(negotiation): realign corpus to private-line complaint diagnosis…
codetalks-hw Aug 24, 2026
9a681b1
chore(tools): sync corpus tooling to business realignment
codetalks-hw Aug 24, 2026
ad3a199
feat(client,server): add LLM client injection point to assembly builders
codetalks-hw Aug 24, 2026
7c10af3
test(corpus): extract corpus harness into dedicated a2a-t-corpus module
codetalks-hw Aug 24, 2026
dbf2b83
chore(tools): point corpus tooling at a2a-t-corpus module
codetalks-hw Aug 24, 2026
40add51
feat(validation): inject template content into validation prompts
wushunhao Aug 24, 2026
12f4d10
docs(corpus): add a2a-t-corpus module README
codetalks-hw Aug 24, 2026
a312a69
fix(prompt): unify slot-section identification in sectioned renderers
wushunhao Aug 24, 2026
8ec4264
fix(negotiation): preserve cause chain on validation template-load fa…
wushunhao Aug 24, 2026
3c22470
Merge pull request #143 from wushunhao/feat/template-content-in-valid…
zhangwenjun-huawei Aug 24, 2026
c0f9b7c
fix(core): accept null-value params
qinyanhao01 Aug 24, 2026
11056f8
refactor(task-t): harden eval, drop sample filter
qinyanhao01 Aug 24, 2026
4ff61dc
Merge pull request #145 from qinyanhao01/main
zhangwenjun-huawei Aug 24, 2026
d392411
Merge pull request #141 from codetalks-hw/feat/negotiation-test-corpus
zhangwenjun-huawei Aug 24, 2026
3dd3140
feat(corpus): add live LLM validation family
codetalks-hw Aug 25, 2026
d630ed6
Merge pull request #146 from codetalks-hw/feat/corpus-live-llm-valida…
zhangwenjun-huawei Aug 25, 2026
fc5fbe5
feat(sample): record full LLM call evidence in the evaluation report
Zhoujie628 Aug 25, 2026
969c47d
feat(sample): split eval suite into fromData/fromText tracks with ful…
Zhoujie628 Aug 25, 2026
e55c7e6
fix(sample): adapt eval cases to the generation gate and client-owned…
Zhoujie628 Aug 25, 2026
bf2d76f
Merge pull request #147 from Zhoujie628/feat/negotiation-interface-eval
zhangwenjun-huawei Aug 25, 2026
aa90968
feat(prompt): iterate auth slot-extraction optimization with examples…
wushunhao Aug 25, 2026
92ee5ae
feat(sample): sync v11 prompt baseline, natural-language scenario set…
wushunhao Aug 25, 2026
559a0b8
fix(prompt): render blank slot sections as title plus single separator
wushunhao Aug 24, 2026
09302ce
feat(sample): run authz scenarios concurrently with optional reasonin…
wushunhao Aug 25, 2026
520585e
fix(corpus): calibrate live cases after the first real-model run
codetalks-hw Aug 25, 2026
0da3658
feat(tools): add live transcript export for review and prompt replay
codetalks-hw Aug 25, 2026
91bcd23
docs(corpus): document the live family and transcript export in modul…
codetalks-hw Aug 25, 2026
8739874
refactor(tools): inline replay requests in the live transcript report
codetalks-hw Aug 25, 2026
f9e4d10
fix(negotiation): require information reject reasons
cnafan Aug 25, 2026
abcc445
test(corpus): align information ending items with non-empty requirement
cnafan Aug 25, 2026
15de079
feat(sample): rework authz scoring to contract assertions and align r…
wushunhao Aug 25, 2026
38c7c22
test(sample): add realistic input variants to authz scenario sets
wushunhao Aug 25, 2026
5e8a485
Merge pull request #135 from wushunhao/feat/auth-demo
zhangwenjun-huawei Aug 25, 2026
3448550
Merge pull request #149 from codetalks-hw/feat/live-transcript-export
zhangwenjun-huawei Aug 25, 2026
afb2ae3
Merge pull request #150 from cnafan/fix/information-reject-reasons-gi…
zhangwenjun-huawei Aug 26, 2026
270e188
docs(sample): clarify that fromData generation also runs the LLM extr…
Zhoujie628 Aug 25, 2026
61d158a
feat(sample): focused evaluator for the three Negotiation-T fromData …
Zhoujie628 Aug 25, 2026
8a456ec
test(sample): rebuild fromData API cases on the Task-T field-combinat…
Zhoujie628 Aug 25, 2026
4aa9435
feat(sample): extend the fromData API evaluator with the validate-and…
Zhoujie628 Aug 26, 2026
9f14357
test(sample): carry real field values in the fromData API cases
Zhoujie628 Aug 26, 2026
d6f07b6
fix(negotiation): require information propose requested items
Zhoujie628 Aug 26, 2026
45a50d6
test(sample): align propose case intents with the real-value semantics
Zhoujie628 Aug 26, 2026
de26e69
test(sample): name reject items after what they actually carry
Zhoujie628 Aug 26, 2026
a9bcde2
test(sample): settle the fromData case design per the template requir…
Zhoujie628 Aug 26, 2026
99705d3
fix(negotiation): define the Reject-branch extraction contract as rea…
Zhoujie628 Aug 26, 2026
4f5ed23
Merge pull request #148 from Zhoujie628/feat/negotiation-interface-eval
zhangwenjun-huawei Aug 26, 2026
fbfd51f
Merge pull request #151 from Zhoujie628/fix/propose-empty-items
zhangwenjun-huawei Aug 26, 2026
70e1fba
Merge pull request #154 from Zhoujie628/fix/reject-reason-extraction
zhangwenjun-huawei Aug 26, 2026
3384661
fix(sample): remove internal qwen endpoint from env template
cnafan Aug 26, 2026
3c3949b
Merge pull request #156 from cnafan/fix/remove-internal-qwen-endpoint
zhangwenjun-huawei Aug 26, 2026
dfe0958
feat(core): add NegotiationPerformative and context performative field
codetalks-hw Aug 26, 2026
c7377c2
refactor(negotiation): rename NegotiationPhase to NegotiationPerforma…
codetalks-hw Aug 26, 2026
3ccbb1f
refactor(core): require non-null performative on NegotiationContext
codetalks-hw Aug 26, 2026
872d800
Merge pull request #152 from codetalks-hw/feat/negotiation-performative
zhangwenjun-huawei Aug 26, 2026
0dc57ac
feat(sample): add per-scenario validate schema and redistribute authz…
wushunhao Aug 26, 2026
a18d45b
feat(sample): switch authz policy list to labeled numbered format wit…
wushunhao Aug 26, 2026
0c0e7b7
docs(sample): add smoke IO transcript next to the authz demo guide
wushunhao Aug 26, 2026
f5ba992
feat(sample): drop semicolons from authz policy list value lines
wushunhao Aug 26, 2026
e8b1575
test(sample): cover the wire performative in the negotiation evaluators
Zhoujie628 Aug 27, 2026
57f66ae
Merge pull request #157 from Zhoujie628/feat/eval-performative-refresh
zhangwenjun-huawei Aug 27, 2026
5ea7d7d
docs(sample): restructure smoke transcript and reorder smoke cases
wushunhao Aug 27, 2026
8a4519c
feat(prompt): refresh service recovery template and private line comp…
zhangwenjun-huawei Aug 27, 2026
75aff0b
fix(prompt): rollback information negotiation template
zhangwenjun-huawei Aug 27, 2026
99353d7
Merge pull request #158 from zhangwenjun-huawei/main
zhangwenjun-huawei Aug 27, 2026
2f35d76
fix(negotiation): align reject sample with itemized template
cnafan Aug 27, 2026
841c575
Merge pull request #159 from cnafan/feat/private-line-negotiation-ite…
zhangwenjun-huawei Aug 27, 2026
5a72dda
fix(negotiation): define the propose-branch extraction contract as fu…
Zhoujie628 Aug 27, 2026
d847854
fix(doc): refresh developer guide and API reference
zhangwenjun-huawei Aug 28, 2026
0de5a27
Merge pull request #162 from zhangwenjun-huawei/main
zhangwenjun-huawei Aug 28, 2026
d9b3c6d
feat(sample): rework authz suite into paired design with customer-vie…
wushunhao Aug 28, 2026
804d210
feat(input-limit): guard free-text facade inputs with configurable ma…
codetalks-hw Aug 28, 2026
72bab51
feat(input-limit): raise default free-text limit to 16384 chars
codetalks-hw Aug 28, 2026
9e9d05f
Merge pull request #155 from wushunhao/feat/auth-demo-extend
zhangwenjun-huawei Aug 28, 2026
e201f9b
Merge pull request #163 from codetalks-hw/feat/input-text-length-limit
zhangwenjun-huawei Aug 28, 2026
0907759
refactor(sample): decouple negotiation validation schemas
cnafan Aug 28, 2026
fff5ed7
Merge pull request #164 from cnafan/feat/negotiation-schema-github-pr
zhangwenjun-huawei Aug 28, 2026
67e76d9
feat(negotiation): add confirm-request rounds to target and feasibili…
codetalks-hw Aug 28, 2026
5721463
Merge pull request #165 from codetalks-hw/feat/negotiation-confirm-re…
zhangwenjun-huawei Aug 28, 2026
333a871
docs(sample): document negotiation evaluation runs
cnafan Aug 28, 2026
718cdc9
test(sample): add negotiation abnormal evaluations
cnafan Aug 28, 2026
10f46e3
Merge pull request #167 from cnafan/feat/negotiation-abnormal-github-pr
zhangwenjun-huawei Aug 28, 2026
19602e0
Merge pull request #166 from cnafan/docs/negotiation-sample-run-guide
zhangwenjun-huawei Aug 28, 2026
eb31f14
test(sample): rebuild propose cases as meaning-plus-sample expectations
Zhoujie628 Aug 27, 2026
9a50438
test(sample): mirror the SDK item-array schema and the three-form tas…
Zhoujie628 Aug 27, 2026
a13d371
fix(sample): omit the relationship line for single-field negotiation …
Zhoujie628 Aug 28, 2026
22fe778
refactor(sample): drop the superseded 3x3 negotiation generation samples
Zhoujie628 Aug 28, 2026
22bcc04
feat(sample): unify negotiation validation schemas and evaluate the c…
Zhoujie628 Aug 28, 2026
db285d7
Merge pull request #160 from Zhoujie628/fix/propose-extraction-contract
zhangwenjun-huawei Aug 28, 2026
3929702
fix(sample): spell out the client supplement in the fromText ending g…
Zhoujie628 Aug 28, 2026
24e707e
Merge pull request #161 from Zhoujie628/test/eval-propose-expectation
zhangwenjun-huawei Aug 28, 2026
8bfeb5b
feat(sample): split validation and extraction sources in authz suite
wushunhao Aug 28, 2026
46f7d51
Merge pull request #168 from wushunhao/feat/auth-demo-extend
zhangwenjun-huawei Aug 28, 2026
9c0b396
feat(prompt): unify prompt resource configurability with source-type …
wushunhao Aug 29, 2026
66656c4
fix(facade): drop null-uri guards for typed failure and unify query m…
wushunhao Aug 29, 2026
384ac25
docs(user-guide): mark local prompt root required under local_file wi…
wushunhao Aug 29, 2026
c8eafde
fix(prompt): fail fast on missing local root in catalog and refresh s…
wushunhao Aug 29, 2026
30e6357
Merge pull request #171 from wushunhao/feat/adr0004-prompt-resource-c…
zhangwenjun-huawei Aug 29, 2026
574ddd7
feat(core): add error catalog, message templates and business excepti…
codetalks-hw Aug 29, 2026
fcacc79
feat(resources): rewrite validation prompt error contracts to facts s…
codetalks-hw Aug 29, 2026
d65e362
refactor(prompt): migrate validators and extractors to catalog codes
codetalks-hw Aug 29, 2026
0a72e47
refactor(negotiation): migrate content and validation errors to catal…
codetalks-hw Aug 29, 2026
3318dc1
refactor(client,server): migrate facades to catalog codes and stop le…
codetalks-hw Aug 29, 2026
615ced1
test(corpus,sample): migrate expectations to the catalog error contract
codetalks-hw Aug 29, 2026
bba912d
docs(en,zh): document the new error catalog and facts schema
codetalks-hw Aug 29, 2026
23c068d
fix(core): align pipeline test with the loader-gated constructor and …
codetalks-hw Aug 29, 2026
4e1cda1
style: apply palantir format to branch-touched files
codetalks-hw Aug 29, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
106 changes: 0 additions & 106 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,109 +30,3 @@ jobs:

- name: Build and run tests
run: mvn -B clean verify

e2e-test:
name: E2E Samples Test
runs-on: ubuntu-latest
needs: build-and-test
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Set up JDK 17
uses: actions/setup-java@v4
with:
distribution: temurin
java-version: '17'
cache: maven

- name: Package project
run: mvn -B package -DskipTests

- name: Create server env
run: |
cat > server.env << 'EOF'
A2AT_LANGUAGE=zh-CN
A2AT_PROMPT_SOURCE_TYPE=local_file
A2AT_PROMPT_RESOURCE_LOCAL_ROOT_DIR=a2a-t-resources/src/main/resources/prompt_resources
A2AT_LLM_PROVIDER=openai
A2AT_LLM_MODEL=deepseek-chat
A2AT_LLM_BASE_URL=https://api.deepseek.com
A2AT_LLM_API_KEY=
A2AT_NEGOTIATION_STATE_STORE_TYPE=in_memory
A2AT_SAMPLE_HOST=127.0.0.1
A2AT_SAMPLE_PORT=26335
REGISTRY_CENTER_HOST=127.0.0.1
REGISTRY_CENTER_PORT=5001
EOF
sed -i 's|^A2AT_LLM_API_KEY=$|A2AT_LLM_API_KEY=${{ secrets.A2AT_LLM_API_KEY }}|' server.env

- name: Create client env
run: |
cat > client.env << 'EOF'
A2AT_LANGUAGE=zh-CN
A2AT_PROMPT_SOURCE_TYPE=classpath
A2AT_PROMPT_RESOURCE_LOCAL_ROOT_DIR=
A2AT_LLM_PROVIDER=openai
A2AT_LLM_MODEL=deepseek-chat
A2AT_LLM_BASE_URL=https://api.deepseek.com
A2AT_LLM_API_KEY=
A2AT_NEGOTIATION_STATE_STORE_TYPE=in_memory
A2AT_SAMPLE_HOST=127.0.0.1
A2AT_SAMPLE_PORT=26335
EOF
sed -i 's|^A2AT_LLM_API_KEY=$|A2AT_LLM_API_KEY=${{ secrets.A2AT_LLM_API_KEY }}|' client.env

- name: Diagnose LLM config availability
shell: bash
run: |
line=$(grep 'A2AT_LLM_API_KEY=' server.env)
value=${line#A2AT_LLM_API_KEY=}
len=${#value}
if [ "$len" -eq 0 ]; then
echo "::notice::A2AT_LLM_API_KEY is empty, e2e will use mock LLM responses"
else
prefix=$(echo "$value" | cut -c1-12)
echo "A2AT_LLM_API_KEY length=$len prefix=$prefix..."
fi

- name: Start server
run: |
nohup java @a2a-t-sample/target/server.javaargs.txt > server.log 2>&1 &
echo $! > server.pid
sleep 3

- name: Wait for server
run: |
for i in $(seq 1 10); do
if curl -s http://127.0.0.1:26335/ > /dev/null 2>&1; then
echo "Server ready"
break
fi
echo "Waiting for server... attempt $i"
sleep 2
done

- name: Run client
env:
A2AT_SAMPLE_MAX_ARTIFACTS: "5"
run: |
java @a2a-t-sample/target/client.javaargs.txt 2>&1 | tee client.log
artifact_count=$(grep -c 'task-artifact' client.log || true)
echo "e2e artifacts received: $artifact_count"
if [ "$artifact_count" -eq 0 ]; then
echo "::error::e2e failed: no artifacts received"
exit 1
fi
echo "e2e PASSED"

- name: Show logs
if: always()
run: |
echo "=== server.log ===" && cat server.log 2>/dev/null || true
echo "=== client.log ===" && cat client.log 2>/dev/null || true

- name: Cleanup
if: always()
run: |
kill $(cat server.pid 2>/dev/null) 2>/dev/null || true
10 changes: 10 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,19 @@ target/
.gitignore
.flattened-pom.xml
*.env
# Sample env templates carry no secrets (empty API key) and must ship with the sources.
!a2a-t-sample/src/main/resources/**/negotiation.env
!a2a-t-sample/src/main/resources/**/authz.env
reference/
findings.md
progress.md
task_plan.md

.idea/

.worktrees/
eval-results/
eval-run*.log
eval-smoke.json
.jqwik-database
__pycache__/
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ This SDK is primarily aimed at two types of users:
- Client API: Provides a task prompt generation result stream, along with negotiation entry points such as `start_negotiation`, `receive_negotiation`, and `continue_negotiation`.
- Server validation API: Targets A2A-T protocol messages that conform to the SDK format, performing metadata parsing, slot extraction.
- Negotiation types: Includes four built-in negotiation types: `information`.
- Negotiation-T content layer: Template-driven negotiation message generation (`fromData` deterministic, `fromText` with one LLM extraction step), compliance checking with parameter extraction (`validateAndFilling*Data`), and negotiation template queries. See the [Developer Guide §1.10](docs/en/developer_guide.md#110-negotiation-t-content-layer).
- Negotiation-T content layer: Template-driven negotiation message generation (`fromData` deterministic, `fromText` with one LLM extraction step), compliance checking with parameter extraction (`validatePromptAndDataFilling*Data`), and negotiation template queries. See the [Developer Guide §1.10](docs/en/developer_guide.md#110-negotiation-t-content-layer).
- Resource organization: Built-in prompt resources are located in `a2a-t-resources/src/main/resources/prompt_resources`, containing `prompts`, `scenarios`, `slots`, and `templates`.
- Built-in example scenario: Currently, the package provides scenarios such as`subscribe_incident`.

Expand All @@ -67,6 +67,7 @@ The repository is organized as a Maven multi-module reactor, with core code unde
- `a2a-t-negotiation`: Negotiation types, runtime state machine, and state storage.
- `a2a-t-client`: Client facade providing task prompt generation and negotiation entry points.
- `a2a-t-server`: Server facade providing `processed task prompt` validation and negotiation entry points.
- `a2a-t-corpus`: A2A-T conformance test corpus module — a pure test module with data-driven corpus cases and property-based tests.
- `a2a-t-sample`: Runnable client/server sample.

## Installation and Environment Requirements
Expand Down
3 changes: 2 additions & 1 deletion README_zh.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ SPDX-License-Identifier: Apache-2.0
- 客户端 API:提供任务提示词生成结果流,以及 `start_negotiation`、`receive_negotiation`、`continue_negotiation` 等协商入口。
- 服务端校验 API:面向符合 SDK 格式的 `processed task prompt`,执行元数据解析、槽位提取和槽位校验。
- 协商类型:内置 `information` 协商类型。
- Negotiation-T 内容层:以模板为驱动的协商消息生成(`fromData` 确定性执行、`fromText` 含一次 LLM 抽取)、合规校验与参数提取(`validateAndFilling*Data`)以及协商模板查询。参见[开发指南 §1.10](docs/zh/开发指南.md)。
- Negotiation-T 内容层:以模板为驱动的协商消息生成(`fromData` 确定性执行、`fromText` 含一次 LLM 抽取)、合规校验与参数提取(`validatePromptAndDataFilling*Data`)以及协商模板查询。参见[开发指南 §1.10](docs/zh/开发指南.md)。
- 资源组织:内置提示词资源位于 `a2a-t-resources/src/main/resources/prompt_resources`,包含 `prompts`、`scenarios`、`slots`、`templates`。
- 内置示例场景:当前随包提供 `subscribe_incident`等场景。

Expand All @@ -67,6 +67,7 @@ SPDX-License-Identifier: Apache-2.0
- `a2a-t-negotiation`:协商类型、运行时状态机与状态存储。
- `a2a-t-client`:客户端封装,提供任务提示词生成与协商入口。
- `a2a-t-server`:服务端封装,提供A2A-T协议报文的校验与协商入口。
- `a2a-t-corpus`:A2A-T 一致性测试语料模块——纯测试模块,含数据驱动用例与属性测试。
- `a2a-t-sample`:可运行的客户端/服务端示例。

## 安装与环境要求
Expand Down
Loading
Loading