poetry-agent 0.1.2 → 0.1.4
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +11 -0
- data/lib/poetry/agent/a2ui/catalogs/native.rb +8 -0
- data/lib/poetry/agent/mcp/server.rb +6 -1
- data/lib/poetry/agent/version.rb +1 -1
- metadata +4 -4
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 8d7eb0f1fbee93f5cf0c279eb317983f2c176def9634d18b3fe6ef6e878a97e8
|
|
4
|
+
data.tar.gz: cb816fb06c42d2ec1b22ad94faf1f299b1a160dfd83fa277c7ea19006a2390b8
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 84ac84d9e901bd9c24a4ad97af40488ca9642a219c3fbc88e89247e3c506f0bcf5e4d9e7ff5ebfd166e413216dbf03bc593a8c9cdf33ce173cbd2ce6b16ebb3a
|
|
7
|
+
data.tar.gz: 5ed523f61aa9a7572185e51564e009481718659e304b9522de2d3ab9a6e2927ecdb3fe2d31ac0e1f2b2aecd54249f480c7485486d6b2da72c36ad15d15c54b54
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,16 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.1.4] - 2026-09-15
|
|
4
|
+
|
|
5
|
+
Lockstep release with the family; no changes in this gem.
|
|
6
|
+
|
|
7
|
+
## [0.1.3] - 2026-09-13
|
|
8
|
+
|
|
9
|
+
### Fixed
|
|
10
|
+
|
|
11
|
+
- A2UI's native catalog supplies the render-stable key as `id:` to a component that requires one (Field, MessageScroller), since an agent never sets ids. On 0.1.2 the values tier refused the missing option and the renderer swallowed the error as a warning, so a Field rendered nothing.
|
|
12
|
+
- The MCP `check` tool knows the app's own `poetry_*` helper methods (`app/helpers`, read boot-free), committed registry or not: the adapter `poetry:pagination` copies in no longer reads as an unknown component.
|
|
13
|
+
|
|
3
14
|
## [0.1.2] - 2026-09-13
|
|
4
15
|
|
|
5
16
|
### Changed
|
|
@@ -97,6 +97,10 @@ module Poetry
|
|
|
97
97
|
by_name[component["component"].to_s] || [nil, nil]
|
|
98
98
|
end
|
|
99
99
|
|
|
100
|
+
def option_required?(entry, name)
|
|
101
|
+
Array(entry["options"]).any? { |option| option["name"] == name && option["required"] }
|
|
102
|
+
end
|
|
103
|
+
|
|
100
104
|
def attributes(component, entry, scope, renderer)
|
|
101
105
|
attributes = {}
|
|
102
106
|
Array(entry["styles"]).each do |axis|
|
|
@@ -109,6 +113,10 @@ module Poetry
|
|
|
109
113
|
|
|
110
114
|
attributes[name.to_sym] = renderer.resolve(component[name], scope)
|
|
111
115
|
end
|
|
116
|
+
# An id the component requires (Field: the control its label
|
|
117
|
+
# names) is not the agent's to set, so the render-stable key
|
|
118
|
+
# stands in and the component builds instead of vanishing.
|
|
119
|
+
attributes[:id] = renderer.stable_key if option_required?(entry, "id") && !attributes.key?(:id)
|
|
112
120
|
bound = BOUND_OPTIONS.find { |name| renderer.surface.binding?(component[name]) }
|
|
113
121
|
if bound && option_names.include?("name") && !component.key?("name")
|
|
114
122
|
attributes[:name] = renderer.input_name(component[bound]["path"], scope)
|
|
@@ -223,10 +223,15 @@ module Poetry
|
|
|
223
223
|
Poetry::Core::HostComponents.declared_helpers(root: app_root).each { |name| helper_entries[name] ||= {} }
|
|
224
224
|
end
|
|
225
225
|
helpers = (helpers + mapped_helpers(committed.entries)).uniq if helpers
|
|
226
|
+
# The app's own poetry_* helper methods (app/helpers, boot-free):
|
|
227
|
+
# valid names with contracts of their own, whether or not the
|
|
228
|
+
# registry is committed - no registry lists a helper method.
|
|
229
|
+
host_helpers = app_root ? Poetry::Core::HostComponents.helper_methods(root: app_root) : nil
|
|
226
230
|
catalog = Poetry::Core::Check::Catalog.new(committed.entries, helpers: helpers,
|
|
227
231
|
helper_entries: helper_entries,
|
|
228
232
|
icon_names: icon_names,
|
|
229
|
-
helper_args: committed.helper_args
|
|
233
|
+
helper_args: committed.helper_args,
|
|
234
|
+
host_helpers: host_helpers)
|
|
230
235
|
new(entries: committed.entries, catalog: catalog, blocks: committed.blocks || {},
|
|
231
236
|
root: committed.source_root.to_s, skills: skills, app_root: app_root, recipes: recipes)
|
|
232
237
|
end
|
data/lib/poetry/agent/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: poetry-agent
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.
|
|
4
|
+
version: 0.1.4
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Matt Solt
|
|
@@ -15,14 +15,14 @@ dependencies:
|
|
|
15
15
|
requirements:
|
|
16
16
|
- - '='
|
|
17
17
|
- !ruby/object:Gem::Version
|
|
18
|
-
version: 0.1.
|
|
18
|
+
version: 0.1.4
|
|
19
19
|
type: :runtime
|
|
20
20
|
prerelease: false
|
|
21
21
|
version_requirements: !ruby/object:Gem::Requirement
|
|
22
22
|
requirements:
|
|
23
23
|
- - '='
|
|
24
24
|
- !ruby/object:Gem::Version
|
|
25
|
-
version: 0.1.
|
|
25
|
+
version: 0.1.4
|
|
26
26
|
description: 'The agent-interop gem of Poetry, the AI-native UI component library.
|
|
27
27
|
Five surfaces: the boot-free poetry-agent MCP server (the component contract over
|
|
28
28
|
Model Context Protocol, with runtime skill delivery); the WebMCP runtime that registers
|
|
@@ -111,7 +111,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
111
111
|
- !ruby/object:Gem::Version
|
|
112
112
|
version: '0'
|
|
113
113
|
requirements: []
|
|
114
|
-
rubygems_version: 4.0.
|
|
114
|
+
rubygems_version: 4.0.20
|
|
115
115
|
specification_version: 4
|
|
116
116
|
summary: 'Poetry''s agent surfaces: MCP server, WebMCP runtime, AG-UI relay, and A2UI
|
|
117
117
|
catalog and renderer.'
|