ummaya 0.2.5 → 0.2.7

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ummaya",
3
- "version": "0.2.5",
3
+ "version": "0.2.7",
4
4
  "description": "Conversational multi-agent harness for Korean public-service channels",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
@@ -72,32 +72,31 @@
72
72
  ],
73
73
  "dependencies": {
74
74
  "@alcalzone/ansi-tokenize": "^0.3.0",
75
- "@anthropic-ai/claude-agent-sdk": "^0.2.119",
76
75
  "@anthropic-ai/mcpb": "^2.1.2",
77
76
  "@anthropic-ai/sandbox-runtime": "^0.0.49",
78
77
  "@anthropic-ai/sdk": "^0.37.0",
79
- "@aws-sdk/client-bedrock-runtime": "^3.1036.0",
78
+ "@aws-sdk/client-bedrock-runtime": "^3.1072.0",
80
79
  "@commander-js/extra-typings": "^12.1.0",
81
80
  "@growthbook/growthbook": "^1.6.5",
82
- "@grpc/grpc-js": "^1.14.3",
81
+ "@grpc/grpc-js": "^1.14.4",
83
82
  "@inkjs/ui": "^2.0.0",
84
83
  "@modelcontextprotocol/sdk": "^1.29.0",
85
84
  "@opentelemetry/api": "^1.9.1",
86
- "@opentelemetry/api-logs": "^0.215.0",
87
- "@opentelemetry/core": "^2.7.0",
88
- "@opentelemetry/exporter-logs-otlp-grpc": "^0.216.0",
89
- "@opentelemetry/exporter-logs-otlp-http": "^0.216.0",
90
- "@opentelemetry/exporter-logs-otlp-proto": "^0.216.0",
91
- "@opentelemetry/exporter-metrics-otlp-grpc": "^0.216.0",
92
- "@opentelemetry/exporter-metrics-otlp-http": "^0.216.0",
93
- "@opentelemetry/exporter-metrics-otlp-proto": "^0.216.0",
94
- "@opentelemetry/exporter-trace-otlp-grpc": "^0.216.0",
95
- "@opentelemetry/exporter-trace-otlp-http": "^0.216.0",
96
- "@opentelemetry/exporter-trace-otlp-proto": "^0.216.0",
97
- "@opentelemetry/resources": "^2.7.0",
98
- "@opentelemetry/sdk-logs": "^0.215.0",
99
- "@opentelemetry/sdk-metrics": "^2.7.0",
100
- "@opentelemetry/sdk-trace-base": "^2.7.0",
85
+ "@opentelemetry/api-logs": "^0.219.0",
86
+ "@opentelemetry/core": "^2.8.0",
87
+ "@opentelemetry/exporter-logs-otlp-grpc": "^0.219.0",
88
+ "@opentelemetry/exporter-logs-otlp-http": "^0.219.0",
89
+ "@opentelemetry/exporter-logs-otlp-proto": "^0.219.0",
90
+ "@opentelemetry/exporter-metrics-otlp-grpc": "^0.219.0",
91
+ "@opentelemetry/exporter-metrics-otlp-http": "^0.219.0",
92
+ "@opentelemetry/exporter-metrics-otlp-proto": "^0.219.0",
93
+ "@opentelemetry/exporter-trace-otlp-grpc": "^0.219.0",
94
+ "@opentelemetry/exporter-trace-otlp-http": "^0.219.0",
95
+ "@opentelemetry/exporter-trace-otlp-proto": "^0.219.0",
96
+ "@opentelemetry/resources": "^2.8.0",
97
+ "@opentelemetry/sdk-logs": "^0.219.0",
98
+ "@opentelemetry/sdk-metrics": "^2.8.0",
99
+ "@opentelemetry/sdk-trace-base": "^2.8.0",
101
100
  "@opentelemetry/semantic-conventions": "^1.40.0",
102
101
  "@pdf-lib/fontkit": "^1.1.1",
103
102
  "@rhwp/core": "^0.7.13",
@@ -105,7 +104,7 @@
105
104
  "ajv": "^8.18.0",
106
105
  "asciichart": "^1.5.25",
107
106
  "auto-bind": "^5.0.1",
108
- "axios": "^1.15.2",
107
+ "axios": "^1.18.0",
109
108
  "bidi-js": "^1.0.3",
110
109
  "bundle": "file:./tui/src/runtime/bundle-package",
111
110
  "chalk": "^5.3.0",
@@ -135,14 +134,28 @@
135
134
  "react": "^19.2.0",
136
135
  "react-reconciler": "0.33.0",
137
136
  "semver": "^7.7.4",
138
- "shell-quote": "^1.8.3",
137
+ "shell-quote": "^1.8.4",
139
138
  "supports-hyperlinks": "^4.4.0",
140
139
  "tree-kill": "^1.2.2",
141
- "undici": "^8.1.0",
140
+ "undici": "^8.5.0",
142
141
  "usehooks-ts": "^3.1.1",
143
142
  "vscode-languageserver-protocol": "^3.17.5",
144
143
  "xss": "^1.0.15",
145
144
  "yaml": "^2.8.3",
146
145
  "zod": "^3.23.0"
146
+ },
147
+ "overrides": {
148
+ "fast-uri": "^3.1.2",
149
+ "fast-xml-builder": "^1.2.0",
150
+ "form-data": "^4.0.6",
151
+ "hono": "^4.12.26",
152
+ "ip-address": "^10.2.0",
153
+ "js-yaml": "^4.2.0",
154
+ "protobufjs": "^7.6.3",
155
+ "qs": "^6.15.2",
156
+ "shell-quote": "^1.8.4",
157
+ "tar": "^7.5.16",
158
+ "tmp": "^0.2.7",
159
+ "ws": "^8.21.0"
147
160
  }
148
161
  }
package/pyproject.toml CHANGED
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "ummaya"
3
- version = "0.2.5"
3
+ version = "0.2.7"
4
4
  description = "Conversational multi-agent platform for Korean public APIs"
5
5
  readme = "README.md"
6
6
  license = "Apache-2.0"
@@ -154,6 +154,7 @@ packages = ["src/ummaya"]
154
154
  # Bundle the document production hardening tool contract so installed wheels
155
155
  # can register model-visible document tools without depending on the source tree.
156
156
  "specs/2803-document-production-hardening/contracts/document-tools.schema.json" = "ummaya/_canonical/document-tools.schema.json"
157
+ "src/ummaya/_canonical/baselines.yaml" = "ummaya/_canonical/baselines.yaml"
157
158
  # Bundle the 50-item validation checklist YAML so ummaya-plugin-validate
158
159
  # CLI can find it without depending on the source-tree layout.
159
160
  "tests/fixtures/plugin_validation/checklist_manifest.yaml" = "ummaya/_canonical/checklist_manifest.yaml"
@@ -332,7 +333,7 @@ min_confidence = 80
332
333
 
333
334
  [tool.commitizen]
334
335
  name = "cz_conventional_commits"
335
- version = "0.2.5"
336
+ version = "0.2.7"
336
337
  tag_format = "v$version"
337
338
 
338
339
  # PyTorch CPU-only wheel for Docker image size discipline (SC-1: ≤ 2 GB).
@@ -0,0 +1,113 @@
1
+ version: 1
2
+ catalog_id: public-form-conformance-baselines-v1
3
+ source_policy: offline_fixtures_only
4
+ live_network_allowed: false
5
+ baselines:
6
+ - template_id: birth-benefit-application-hwpx
7
+ schema_id: birth-benefit-application-v1
8
+ format: hwpx
9
+ authoritative_standard: KS X 6101 OWPML/HWPX
10
+ authority_refs:
11
+ - specs/2803-document-production-hardening/spec.md#FR-002
12
+ - specs/2803-document-production-hardening/spec.md#FR-012
13
+ supports_conformance: true
14
+ expected_page_count: 2
15
+ required_fields:
16
+ - field_id: applicant_name
17
+ label: Applicant name
18
+ path: /body/section[1]/field[applicant_name]
19
+ - field_id: child_birth_date
20
+ label: Child birth date
21
+ path: /body/section[1]/field[child_birth_date]
22
+ protected_text:
23
+ - text: Birth benefit application
24
+ anchor: /body/section[1]/p[1]
25
+ - text: Required attachments
26
+ anchor: /body/section[2]/p[1]
27
+ required_labels:
28
+ - text: Applicant
29
+ anchor: /body/section[1]/table[1]/cell[1,1]
30
+ - text: Name
31
+ anchor: /body/section[1]/table[1]/cell[1,2]
32
+ - text: Child
33
+ anchor: /body/section[1]/table[1]/cell[2,1]
34
+ - text: Date of birth
35
+ anchor: /body/section[1]/table[1]/cell[2,2]
36
+ table_geometries:
37
+ - table_id: applicant-table
38
+ anchor: /body/section[1]/table[1]
39
+ rows: 2
40
+ columns: 2
41
+ signature_regions:
42
+ - text: Applicant signature or seal
43
+ anchor: /body/section[1]/p[2]
44
+ metadata_exact_matches:
45
+ page_count: 2
46
+ margin_top_mm: 20
47
+ margin_bottom_mm: 15
48
+ - template_id: civil-form-docx
49
+ schema_id: civil-form-ooxml-v1
50
+ format: docx
51
+ authoritative_standard: ECMA-376 Office Open XML
52
+ authority_refs:
53
+ - specs/2803-document-production-hardening/spec.md#FR-012
54
+ supports_conformance: true
55
+ required_fields: []
56
+ protected_text: []
57
+ required_labels: []
58
+ table_geometries: []
59
+ signature_regions: []
60
+ metadata_exact_matches: {}
61
+ - template_id: civil-ledger-xlsx
62
+ schema_id: civil-ledger-ooxml-v1
63
+ format: xlsx
64
+ authoritative_standard: ECMA-376 Office Open XML
65
+ authority_refs:
66
+ - specs/2803-document-production-hardening/spec.md#FR-012
67
+ supports_conformance: true
68
+ required_fields: []
69
+ protected_text: []
70
+ required_labels: []
71
+ table_geometries: []
72
+ signature_regions: []
73
+ metadata_exact_matches: {}
74
+ - template_id: civil-briefing-pptx
75
+ schema_id: civil-briefing-ooxml-v1
76
+ format: pptx
77
+ authoritative_standard: ECMA-376 Office Open XML
78
+ authority_refs:
79
+ - specs/2803-document-production-hardening/spec.md#FR-012
80
+ supports_conformance: true
81
+ required_fields: []
82
+ protected_text: []
83
+ required_labels: []
84
+ table_geometries: []
85
+ signature_regions: []
86
+ metadata_exact_matches: {}
87
+ - template_id: fillable-permit-pdf
88
+ schema_id: fillable-permit-pdf-v1
89
+ format: pdf
90
+ authoritative_standard: PDF AcroForm and rendered appearance
91
+ authority_refs:
92
+ - specs/2803-document-production-hardening/spec.md#FR-014
93
+ supports_conformance: true
94
+ required_fields: []
95
+ protected_text: []
96
+ required_labels: []
97
+ table_geometries: []
98
+ signature_regions: []
99
+ metadata_exact_matches: {}
100
+ - template_id: legacy-hwp-readonly
101
+ schema_id: legacy-hwp-readonly-v1
102
+ format: hwp
103
+ authoritative_standard: HWP binary read-only boundary
104
+ authority_refs:
105
+ - specs/2803-document-production-hardening/spec.md#FR-017
106
+ supports_conformance: false
107
+ unsupported_reason: HWP binary write is blocked in this epic; conformance-ready output requires HWPX or another promoted editable derivative.
108
+ required_fields: []
109
+ protected_text: []
110
+ required_labels: []
111
+ table_geometries: []
112
+ signature_regions: []
113
+ metadata_exact_matches: {}
@@ -3,6 +3,7 @@
3
3
 
4
4
  from __future__ import annotations
5
5
 
6
+ from importlib import resources
6
7
  from pathlib import Path
7
8
  from typing import Literal, cast
8
9
 
@@ -108,7 +109,24 @@ def load_conformance_baselines(
108
109
  path: Path = CONFORMANCE_BASELINE_FIXTURE_PATH,
109
110
  ) -> ConformanceBaselineCatalog:
110
111
  """Load checked-in public-form conformance baselines from YAML."""
111
- raw = yaml.safe_load(path.read_text(encoding="utf-8"))
112
+ raw = yaml.safe_load(_read_conformance_baseline_text(path))
112
113
  if not isinstance(raw, dict):
113
114
  raise ValueError(f"Conformance baseline manifest must be a YAML object: {path}")
114
115
  return ConformanceBaselineCatalog.model_validate(cast(dict[str, object], raw))
116
+
117
+
118
+ def _read_conformance_baseline_text(path: Path) -> str:
119
+ if path.is_file():
120
+ return path.read_text(encoding="utf-8")
121
+
122
+ try:
123
+ bundled = resources.files("ummaya._canonical").joinpath("baselines.yaml")
124
+ with resources.as_file(bundled) as resource_path:
125
+ if Path(resource_path).is_file():
126
+ return Path(resource_path).read_text(encoding="utf-8")
127
+ except (FileNotFoundError, ModuleNotFoundError, AttributeError):
128
+ pass
129
+
130
+ raise FileNotFoundError(
131
+ f"Conformance baseline manifest not found in source tree or bundled wheel resource: {path}"
132
+ )