feat: redesign Ask as global pill with agent-driven UI actions (#304) #1174
build.yml
on: push
detect-changes
6s
run-code-quality
/
code-quality
2m 30s
Matrix: run-e2e-tests / e2e-test
run-security
/
Python Security
42s
run-security
/
Semgrep CE Scan
59s
run-security
/
Rust Security
19s
run-security
/
Secret Scanning
13s
run-security
/
Container Scanning
25s
run-docker-compose-validate
/
validate-compose
11s
run-tests
/
test-api
48s
run-tests
/
test-common
46s
run-tests
/
test-dashboard
1m 3s
run-tests
/
test-explore
32s
run-tests
/
test-insights
27s
run-tests
/
test-mcp-server
25s
run-tests
/
test-brainzgraphinator
22s
run-tests
/
test-graphinator
46s
run-tests
/
test-schema-init
22s
run-tests
/
test-tableinator
42s
run-tests
/
test-brainztableinator
26s
run-tests
/
test-js
33s
run-tests
/
test-extractor
3m 8s
Matrix: run-docker-validate / validate-dockerfiles
Matrix: build-discogsography
Annotations
44 warnings and 20 notices
|
run-code-quality / code-quality
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/setup-python@v5, alexellis/arkade-get@1eef818e467c387d3f50cfe0d2c565d1cbe82b03, astral-sh/setup-uv@e92bafb6253dcd438e0484186d7669ea7a8ca1cc. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
run-docker-compose-validate / validate-compose
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: alexellis/arkade-get@1eef818e467c387d3f50cfe0d2c565d1cbe82b03. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
run-tests / test-brainzgraphinator
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/setup-python@v5, astral-sh/setup-uv@e92bafb6253dcd438e0484186d7669ea7a8ca1cc. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
run-tests / test-mcp-server
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/setup-python@v5, astral-sh/setup-uv@e92bafb6253dcd438e0484186d7669ea7a8ca1cc. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
run-tests / test-brainztableinator
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/setup-python@v5, astral-sh/setup-uv@e92bafb6253dcd438e0484186d7669ea7a8ca1cc. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
run-tests / test-insights
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/setup-python@v5, astral-sh/setup-uv@e92bafb6253dcd438e0484186d7669ea7a8ca1cc. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
run-security / Python Security
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/setup-python@v5, astral-sh/setup-uv@e92bafb6253dcd438e0484186d7669ea7a8ca1cc. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
run-tests / test-tableinator
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/setup-python@v5, astral-sh/setup-uv@e92bafb6253dcd438e0484186d7669ea7a8ca1cc. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
run-tests / test-common
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/setup-python@v5, astral-sh/setup-uv@e92bafb6253dcd438e0484186d7669ea7a8ca1cc. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
run-tests / test-graphinator
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/setup-python@v5, astral-sh/setup-uv@e92bafb6253dcd438e0484186d7669ea7a8ca1cc. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
run-tests / test-schema-init
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/setup-python@v5, astral-sh/setup-uv@e92bafb6253dcd438e0484186d7669ea7a8ca1cc. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
run-security / Container Scanning
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
run-tests / test-api
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/setup-python@v5, astral-sh/setup-uv@e92bafb6253dcd438e0484186d7669ea7a8ca1cc. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
run-tests / test-explore
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/setup-python@v5, astral-sh/setup-uv@e92bafb6253dcd438e0484186d7669ea7a8ca1cc. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
run-tests / test-dashboard
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/setup-python@v5, astral-sh/setup-uv@e92bafb6253dcd438e0484186d7669ea7a8ca1cc. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
run-e2e-tests / Test chromium
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/setup-python@v5, astral-sh/setup-uv@e92bafb6253dcd438e0484186d7669ea7a8ca1cc. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
run-e2e-tests / Test firefox
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/setup-python@v5, astral-sh/setup-uv@e92bafb6253dcd438e0484186d7669ea7a8ca1cc. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
run-e2e-tests / Test webkit
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/setup-python@v5, astral-sh/setup-uv@e92bafb6253dcd438e0484186d7669ea7a8ca1cc. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
run-e2e-tests / Test webkit - iPad Pro 11
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/setup-python@v5, astral-sh/setup-uv@e92bafb6253dcd438e0484186d7669ea7a8ca1cc. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
run-e2e-tests / Test webkit - iPhone 15
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/setup-python@v5, astral-sh/setup-uv@e92bafb6253dcd438e0484186d7669ea7a8ca1cc. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
build-discogsography (api, true)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/setup-python@v5, astral-sh/setup-uv@e92bafb6253dcd438e0484186d7669ea7a8ca1cc. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
build-discogsography (api, true)
embed field value must be shorter than 1024, got 7073
[`f26e431`](https://github.com/SimplicityGuy/discogsography/commit/f26e431324a04a92b169561ce995427a9a2eec9a) feat: redesign Ask as global pill with agent-driven UI actions (#304)
* docs: add ask-mode integration design spec
Designs the Explore Ask feature redesign as a global floating pill with
agent-driven UI actions, dynamic suggestions, and a shared
common/agent_tools registry for the NLQ engine and MCP server.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* docs: add ask-mode integration implementation plan
31 TDD tasks across 10 phases implementing the approved spec: shared
agent_tools registry, NLQ engine action contract, suggestions endpoint,
MCP server refactor, floating pill component with suggestions and action
applier, DOMPurify markdown renderer, summary strip, and E2E coverage.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* feat(common): scaffold agent_tools package
* feat(common): add agent_tools.graph.find_path
* test(common): add find_path target-missing and no-path error cases
* feat(common): add entity detail tools to agent_tools
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(common): add discovery and stats tools to agent_tools
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* refactor(api/nlq): delegate _handle_find_path to common.agent_tools
Replace the inline name-resolution + find_shortest_path logic in
NLQToolRunner._handle_find_path with a call to the shared
common.agent_tools.find_path, injecting a resolve_name closure that
wraps EXPLORE_DISPATCH (handles numeric pass-through, missing type
pass-through, and named lookups).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* refactor(api/nlq): delegate remaining _handle_* methods to common.agent_tools
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/nlq): add Action discriminated-union schema
Defines 10 Pydantic action types with a `type` literal discriminator for strict
JSON parsing. parse_action_list drops malformed entries with a warning log.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/nlq): NLQResult carries agent-emitted UI actions
Add actions: list[Action] field to NLQResult, an _extract_actions()
helper that strips the <!--actions:[...]--> marker from agent text,
and extend the system prompt so Claude knows to emit the marker.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/routers/nlq): emit actions SSE event before result
Add an `actions` SSE event between status events and the final `result`
event in `_stream_response`, and include `actions` in the non-SSE JSON
response branch for consistency.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/nlq): template-based suggestion engine
* feat(api/routers/nlq): add /api/nlq/suggestions endpoint
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* refactor(mcp-server): route find_path through common.agent_tools
Delegates mcp_server.find_path to common.agent_tools.find_path via
API-backed resolver closures (_api_get for name resolution, /api/path
for path traversal), so future shared tool additions automatically
benefit MCP clients without changes to server.py.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): scaffold NlqPill component with collapsed state
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqPill expand/collapse with keyboard shortcuts
Add click-to-expand, ⌘K/Ctrl+K, ? (when no input focused), Esc-to-collapse,
and expanded-state render with focused input to NlqPill. Install
@testing-library/dom for fireEvent in tests.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqSuggestions chip renderer and history store
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqPill wires suggestions into expanded card
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqActionApplier with ord
|
|
Sensitive data should not be used in the ARG or ENV commands:
api/Dockerfile#L113
SecretsUsedInArgOrEnv: Do not use ARG or ENV instructions for sensitive data (ENV "JWT_SECRET_KEY")
More info: https://docs.docker.com/go/dockerfile/rule/secrets-used-in-arg-or-env/
|
|
Sensitive data should not be used in the ARG or ENV commands:
api/Dockerfile#L113
SecretsUsedInArgOrEnv: Do not use ARG or ENV instructions for sensitive data (ENV "POSTGRES_PASSWORD")
More info: https://docs.docker.com/go/dockerfile/rule/secrets-used-in-arg-or-env/
|
|
build-discogsography (brainztableinator, true)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/setup-python@v5, astral-sh/setup-uv@e92bafb6253dcd438e0484186d7669ea7a8ca1cc. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
build-discogsography (brainztableinator, true)
embed field value must be shorter than 1024, got 7073
[`f26e431`](https://github.com/SimplicityGuy/discogsography/commit/f26e431324a04a92b169561ce995427a9a2eec9a) feat: redesign Ask as global pill with agent-driven UI actions (#304)
* docs: add ask-mode integration design spec
Designs the Explore Ask feature redesign as a global floating pill with
agent-driven UI actions, dynamic suggestions, and a shared
common/agent_tools registry for the NLQ engine and MCP server.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* docs: add ask-mode integration implementation plan
31 TDD tasks across 10 phases implementing the approved spec: shared
agent_tools registry, NLQ engine action contract, suggestions endpoint,
MCP server refactor, floating pill component with suggestions and action
applier, DOMPurify markdown renderer, summary strip, and E2E coverage.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* feat(common): scaffold agent_tools package
* feat(common): add agent_tools.graph.find_path
* test(common): add find_path target-missing and no-path error cases
* feat(common): add entity detail tools to agent_tools
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(common): add discovery and stats tools to agent_tools
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* refactor(api/nlq): delegate _handle_find_path to common.agent_tools
Replace the inline name-resolution + find_shortest_path logic in
NLQToolRunner._handle_find_path with a call to the shared
common.agent_tools.find_path, injecting a resolve_name closure that
wraps EXPLORE_DISPATCH (handles numeric pass-through, missing type
pass-through, and named lookups).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* refactor(api/nlq): delegate remaining _handle_* methods to common.agent_tools
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/nlq): add Action discriminated-union schema
Defines 10 Pydantic action types with a `type` literal discriminator for strict
JSON parsing. parse_action_list drops malformed entries with a warning log.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/nlq): NLQResult carries agent-emitted UI actions
Add actions: list[Action] field to NLQResult, an _extract_actions()
helper that strips the <!--actions:[...]--> marker from agent text,
and extend the system prompt so Claude knows to emit the marker.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/routers/nlq): emit actions SSE event before result
Add an `actions` SSE event between status events and the final `result`
event in `_stream_response`, and include `actions` in the non-SSE JSON
response branch for consistency.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/nlq): template-based suggestion engine
* feat(api/routers/nlq): add /api/nlq/suggestions endpoint
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* refactor(mcp-server): route find_path through common.agent_tools
Delegates mcp_server.find_path to common.agent_tools.find_path via
API-backed resolver closures (_api_get for name resolution, /api/path
for path traversal), so future shared tool additions automatically
benefit MCP clients without changes to server.py.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): scaffold NlqPill component with collapsed state
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqPill expand/collapse with keyboard shortcuts
Add click-to-expand, ⌘K/Ctrl+K, ? (when no input focused), Esc-to-collapse,
and expanded-state render with focused input to NlqPill. Install
@testing-library/dom for fireEvent in tests.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqSuggestions chip renderer and history store
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqPill wires suggestions into expanded card
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqActionApplier with ord
|
|
build-discogsography (insights, true)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/setup-python@v5, astral-sh/setup-uv@e92bafb6253dcd438e0484186d7669ea7a8ca1cc. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
build-discogsography (insights, true)
embed field value must be shorter than 1024, got 7073
[`f26e431`](https://github.com/SimplicityGuy/discogsography/commit/f26e431324a04a92b169561ce995427a9a2eec9a) feat: redesign Ask as global pill with agent-driven UI actions (#304)
* docs: add ask-mode integration design spec
Designs the Explore Ask feature redesign as a global floating pill with
agent-driven UI actions, dynamic suggestions, and a shared
common/agent_tools registry for the NLQ engine and MCP server.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* docs: add ask-mode integration implementation plan
31 TDD tasks across 10 phases implementing the approved spec: shared
agent_tools registry, NLQ engine action contract, suggestions endpoint,
MCP server refactor, floating pill component with suggestions and action
applier, DOMPurify markdown renderer, summary strip, and E2E coverage.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* feat(common): scaffold agent_tools package
* feat(common): add agent_tools.graph.find_path
* test(common): add find_path target-missing and no-path error cases
* feat(common): add entity detail tools to agent_tools
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(common): add discovery and stats tools to agent_tools
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* refactor(api/nlq): delegate _handle_find_path to common.agent_tools
Replace the inline name-resolution + find_shortest_path logic in
NLQToolRunner._handle_find_path with a call to the shared
common.agent_tools.find_path, injecting a resolve_name closure that
wraps EXPLORE_DISPATCH (handles numeric pass-through, missing type
pass-through, and named lookups).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* refactor(api/nlq): delegate remaining _handle_* methods to common.agent_tools
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/nlq): add Action discriminated-union schema
Defines 10 Pydantic action types with a `type` literal discriminator for strict
JSON parsing. parse_action_list drops malformed entries with a warning log.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/nlq): NLQResult carries agent-emitted UI actions
Add actions: list[Action] field to NLQResult, an _extract_actions()
helper that strips the <!--actions:[...]--> marker from agent text,
and extend the system prompt so Claude knows to emit the marker.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/routers/nlq): emit actions SSE event before result
Add an `actions` SSE event between status events and the final `result`
event in `_stream_response`, and include `actions` in the non-SSE JSON
response branch for consistency.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/nlq): template-based suggestion engine
* feat(api/routers/nlq): add /api/nlq/suggestions endpoint
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* refactor(mcp-server): route find_path through common.agent_tools
Delegates mcp_server.find_path to common.agent_tools.find_path via
API-backed resolver closures (_api_get for name resolution, /api/path
for path traversal), so future shared tool additions automatically
benefit MCP clients without changes to server.py.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): scaffold NlqPill component with collapsed state
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqPill expand/collapse with keyboard shortcuts
Add click-to-expand, ⌘K/Ctrl+K, ? (when no input focused), Esc-to-collapse,
and expanded-state render with focused input to NlqPill. Install
@testing-library/dom for fireEvent in tests.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqSuggestions chip renderer and history store
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqPill wires suggestions into expanded card
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqActionApplier with ord
|
|
build-discogsography (brainzgraphinator, true)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/setup-python@v5, astral-sh/setup-uv@e92bafb6253dcd438e0484186d7669ea7a8ca1cc. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
build-discogsography (brainzgraphinator, true)
embed field value must be shorter than 1024, got 7073
[`f26e431`](https://github.com/SimplicityGuy/discogsography/commit/f26e431324a04a92b169561ce995427a9a2eec9a) feat: redesign Ask as global pill with agent-driven UI actions (#304)
* docs: add ask-mode integration design spec
Designs the Explore Ask feature redesign as a global floating pill with
agent-driven UI actions, dynamic suggestions, and a shared
common/agent_tools registry for the NLQ engine and MCP server.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* docs: add ask-mode integration implementation plan
31 TDD tasks across 10 phases implementing the approved spec: shared
agent_tools registry, NLQ engine action contract, suggestions endpoint,
MCP server refactor, floating pill component with suggestions and action
applier, DOMPurify markdown renderer, summary strip, and E2E coverage.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* feat(common): scaffold agent_tools package
* feat(common): add agent_tools.graph.find_path
* test(common): add find_path target-missing and no-path error cases
* feat(common): add entity detail tools to agent_tools
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(common): add discovery and stats tools to agent_tools
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* refactor(api/nlq): delegate _handle_find_path to common.agent_tools
Replace the inline name-resolution + find_shortest_path logic in
NLQToolRunner._handle_find_path with a call to the shared
common.agent_tools.find_path, injecting a resolve_name closure that
wraps EXPLORE_DISPATCH (handles numeric pass-through, missing type
pass-through, and named lookups).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* refactor(api/nlq): delegate remaining _handle_* methods to common.agent_tools
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/nlq): add Action discriminated-union schema
Defines 10 Pydantic action types with a `type` literal discriminator for strict
JSON parsing. parse_action_list drops malformed entries with a warning log.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/nlq): NLQResult carries agent-emitted UI actions
Add actions: list[Action] field to NLQResult, an _extract_actions()
helper that strips the <!--actions:[...]--> marker from agent text,
and extend the system prompt so Claude knows to emit the marker.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/routers/nlq): emit actions SSE event before result
Add an `actions` SSE event between status events and the final `result`
event in `_stream_response`, and include `actions` in the non-SSE JSON
response branch for consistency.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/nlq): template-based suggestion engine
* feat(api/routers/nlq): add /api/nlq/suggestions endpoint
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* refactor(mcp-server): route find_path through common.agent_tools
Delegates mcp_server.find_path to common.agent_tools.find_path via
API-backed resolver closures (_api_get for name resolution, /api/path
for path traversal), so future shared tool additions automatically
benefit MCP clients without changes to server.py.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): scaffold NlqPill component with collapsed state
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqPill expand/collapse with keyboard shortcuts
Add click-to-expand, ⌘K/Ctrl+K, ? (when no input focused), Esc-to-collapse,
and expanded-state render with focused input to NlqPill. Install
@testing-library/dom for fireEvent in tests.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqSuggestions chip renderer and history store
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqPill wires suggestions into expanded card
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqActionApplier with ord
|
|
build-discogsography (tableinator, true)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/setup-python@v5, astral-sh/setup-uv@e92bafb6253dcd438e0484186d7669ea7a8ca1cc. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
build-discogsography (tableinator, true)
embed field value must be shorter than 1024, got 7073
[`f26e431`](https://github.com/SimplicityGuy/discogsography/commit/f26e431324a04a92b169561ce995427a9a2eec9a) feat: redesign Ask as global pill with agent-driven UI actions (#304)
* docs: add ask-mode integration design spec
Designs the Explore Ask feature redesign as a global floating pill with
agent-driven UI actions, dynamic suggestions, and a shared
common/agent_tools registry for the NLQ engine and MCP server.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* docs: add ask-mode integration implementation plan
31 TDD tasks across 10 phases implementing the approved spec: shared
agent_tools registry, NLQ engine action contract, suggestions endpoint,
MCP server refactor, floating pill component with suggestions and action
applier, DOMPurify markdown renderer, summary strip, and E2E coverage.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* feat(common): scaffold agent_tools package
* feat(common): add agent_tools.graph.find_path
* test(common): add find_path target-missing and no-path error cases
* feat(common): add entity detail tools to agent_tools
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(common): add discovery and stats tools to agent_tools
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* refactor(api/nlq): delegate _handle_find_path to common.agent_tools
Replace the inline name-resolution + find_shortest_path logic in
NLQToolRunner._handle_find_path with a call to the shared
common.agent_tools.find_path, injecting a resolve_name closure that
wraps EXPLORE_DISPATCH (handles numeric pass-through, missing type
pass-through, and named lookups).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* refactor(api/nlq): delegate remaining _handle_* methods to common.agent_tools
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/nlq): add Action discriminated-union schema
Defines 10 Pydantic action types with a `type` literal discriminator for strict
JSON parsing. parse_action_list drops malformed entries with a warning log.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/nlq): NLQResult carries agent-emitted UI actions
Add actions: list[Action] field to NLQResult, an _extract_actions()
helper that strips the <!--actions:[...]--> marker from agent text,
and extend the system prompt so Claude knows to emit the marker.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/routers/nlq): emit actions SSE event before result
Add an `actions` SSE event between status events and the final `result`
event in `_stream_response`, and include `actions` in the non-SSE JSON
response branch for consistency.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/nlq): template-based suggestion engine
* feat(api/routers/nlq): add /api/nlq/suggestions endpoint
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* refactor(mcp-server): route find_path through common.agent_tools
Delegates mcp_server.find_path to common.agent_tools.find_path via
API-backed resolver closures (_api_get for name resolution, /api/path
for path traversal), so future shared tool additions automatically
benefit MCP clients without changes to server.py.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): scaffold NlqPill component with collapsed state
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqPill expand/collapse with keyboard shortcuts
Add click-to-expand, ⌘K/Ctrl+K, ? (when no input focused), Esc-to-collapse,
and expanded-state render with focused input to NlqPill. Install
@testing-library/dom for fireEvent in tests.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqSuggestions chip renderer and history store
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqPill wires suggestions into expanded card
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqActionApplier with ord
|
|
build-discogsography (extractor, true)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/setup-python@v5, astral-sh/setup-uv@e92bafb6253dcd438e0484186d7669ea7a8ca1cc. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
build-discogsography (extractor, true)
embed field value must be shorter than 1024, got 7073
[`f26e431`](https://github.com/SimplicityGuy/discogsography/commit/f26e431324a04a92b169561ce995427a9a2eec9a) feat: redesign Ask as global pill with agent-driven UI actions (#304)
* docs: add ask-mode integration design spec
Designs the Explore Ask feature redesign as a global floating pill with
agent-driven UI actions, dynamic suggestions, and a shared
common/agent_tools registry for the NLQ engine and MCP server.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* docs: add ask-mode integration implementation plan
31 TDD tasks across 10 phases implementing the approved spec: shared
agent_tools registry, NLQ engine action contract, suggestions endpoint,
MCP server refactor, floating pill component with suggestions and action
applier, DOMPurify markdown renderer, summary strip, and E2E coverage.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* feat(common): scaffold agent_tools package
* feat(common): add agent_tools.graph.find_path
* test(common): add find_path target-missing and no-path error cases
* feat(common): add entity detail tools to agent_tools
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(common): add discovery and stats tools to agent_tools
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* refactor(api/nlq): delegate _handle_find_path to common.agent_tools
Replace the inline name-resolution + find_shortest_path logic in
NLQToolRunner._handle_find_path with a call to the shared
common.agent_tools.find_path, injecting a resolve_name closure that
wraps EXPLORE_DISPATCH (handles numeric pass-through, missing type
pass-through, and named lookups).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* refactor(api/nlq): delegate remaining _handle_* methods to common.agent_tools
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/nlq): add Action discriminated-union schema
Defines 10 Pydantic action types with a `type` literal discriminator for strict
JSON parsing. parse_action_list drops malformed entries with a warning log.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/nlq): NLQResult carries agent-emitted UI actions
Add actions: list[Action] field to NLQResult, an _extract_actions()
helper that strips the <!--actions:[...]--> marker from agent text,
and extend the system prompt so Claude knows to emit the marker.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/routers/nlq): emit actions SSE event before result
Add an `actions` SSE event between status events and the final `result`
event in `_stream_response`, and include `actions` in the non-SSE JSON
response branch for consistency.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/nlq): template-based suggestion engine
* feat(api/routers/nlq): add /api/nlq/suggestions endpoint
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* refactor(mcp-server): route find_path through common.agent_tools
Delegates mcp_server.find_path to common.agent_tools.find_path via
API-backed resolver closures (_api_get for name resolution, /api/path
for path traversal), so future shared tool additions automatically
benefit MCP clients without changes to server.py.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): scaffold NlqPill component with collapsed state
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqPill expand/collapse with keyboard shortcuts
Add click-to-expand, ⌘K/Ctrl+K, ? (when no input focused), Esc-to-collapse,
and expanded-state render with focused input to NlqPill. Install
@testing-library/dom for fireEvent in tests.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqSuggestions chip renderer and history store
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqPill wires suggestions into expanded card
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqActionApplier with ord
|
|
build-discogsography (dashboard, true)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/setup-python@v5, astral-sh/setup-uv@e92bafb6253dcd438e0484186d7669ea7a8ca1cc. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
build-discogsography (dashboard, true)
embed field value must be shorter than 1024, got 7073
[`f26e431`](https://github.com/SimplicityGuy/discogsography/commit/f26e431324a04a92b169561ce995427a9a2eec9a) feat: redesign Ask as global pill with agent-driven UI actions (#304)
* docs: add ask-mode integration design spec
Designs the Explore Ask feature redesign as a global floating pill with
agent-driven UI actions, dynamic suggestions, and a shared
common/agent_tools registry for the NLQ engine and MCP server.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* docs: add ask-mode integration implementation plan
31 TDD tasks across 10 phases implementing the approved spec: shared
agent_tools registry, NLQ engine action contract, suggestions endpoint,
MCP server refactor, floating pill component with suggestions and action
applier, DOMPurify markdown renderer, summary strip, and E2E coverage.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* feat(common): scaffold agent_tools package
* feat(common): add agent_tools.graph.find_path
* test(common): add find_path target-missing and no-path error cases
* feat(common): add entity detail tools to agent_tools
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(common): add discovery and stats tools to agent_tools
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* refactor(api/nlq): delegate _handle_find_path to common.agent_tools
Replace the inline name-resolution + find_shortest_path logic in
NLQToolRunner._handle_find_path with a call to the shared
common.agent_tools.find_path, injecting a resolve_name closure that
wraps EXPLORE_DISPATCH (handles numeric pass-through, missing type
pass-through, and named lookups).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* refactor(api/nlq): delegate remaining _handle_* methods to common.agent_tools
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/nlq): add Action discriminated-union schema
Defines 10 Pydantic action types with a `type` literal discriminator for strict
JSON parsing. parse_action_list drops malformed entries with a warning log.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/nlq): NLQResult carries agent-emitted UI actions
Add actions: list[Action] field to NLQResult, an _extract_actions()
helper that strips the <!--actions:[...]--> marker from agent text,
and extend the system prompt so Claude knows to emit the marker.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/routers/nlq): emit actions SSE event before result
Add an `actions` SSE event between status events and the final `result`
event in `_stream_response`, and include `actions` in the non-SSE JSON
response branch for consistency.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/nlq): template-based suggestion engine
* feat(api/routers/nlq): add /api/nlq/suggestions endpoint
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* refactor(mcp-server): route find_path through common.agent_tools
Delegates mcp_server.find_path to common.agent_tools.find_path via
API-backed resolver closures (_api_get for name resolution, /api/path
for path traversal), so future shared tool additions automatically
benefit MCP clients without changes to server.py.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): scaffold NlqPill component with collapsed state
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqPill expand/collapse with keyboard shortcuts
Add click-to-expand, ⌘K/Ctrl+K, ? (when no input focused), Esc-to-collapse,
and expanded-state render with focused input to NlqPill. Install
@testing-library/dom for fireEvent in tests.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqSuggestions chip renderer and history store
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqPill wires suggestions into expanded card
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqActionApplier with ord
|
|
build-discogsography (explore, true)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/setup-python@v5, astral-sh/setup-uv@e92bafb6253dcd438e0484186d7669ea7a8ca1cc. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
build-discogsography (explore, true)
embed field value must be shorter than 1024, got 7073
[`f26e431`](https://github.com/SimplicityGuy/discogsography/commit/f26e431324a04a92b169561ce995427a9a2eec9a) feat: redesign Ask as global pill with agent-driven UI actions (#304)
* docs: add ask-mode integration design spec
Designs the Explore Ask feature redesign as a global floating pill with
agent-driven UI actions, dynamic suggestions, and a shared
common/agent_tools registry for the NLQ engine and MCP server.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* docs: add ask-mode integration implementation plan
31 TDD tasks across 10 phases implementing the approved spec: shared
agent_tools registry, NLQ engine action contract, suggestions endpoint,
MCP server refactor, floating pill component with suggestions and action
applier, DOMPurify markdown renderer, summary strip, and E2E coverage.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* feat(common): scaffold agent_tools package
* feat(common): add agent_tools.graph.find_path
* test(common): add find_path target-missing and no-path error cases
* feat(common): add entity detail tools to agent_tools
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(common): add discovery and stats tools to agent_tools
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* refactor(api/nlq): delegate _handle_find_path to common.agent_tools
Replace the inline name-resolution + find_shortest_path logic in
NLQToolRunner._handle_find_path with a call to the shared
common.agent_tools.find_path, injecting a resolve_name closure that
wraps EXPLORE_DISPATCH (handles numeric pass-through, missing type
pass-through, and named lookups).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* refactor(api/nlq): delegate remaining _handle_* methods to common.agent_tools
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/nlq): add Action discriminated-union schema
Defines 10 Pydantic action types with a `type` literal discriminator for strict
JSON parsing. parse_action_list drops malformed entries with a warning log.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/nlq): NLQResult carries agent-emitted UI actions
Add actions: list[Action] field to NLQResult, an _extract_actions()
helper that strips the <!--actions:[...]--> marker from agent text,
and extend the system prompt so Claude knows to emit the marker.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/routers/nlq): emit actions SSE event before result
Add an `actions` SSE event between status events and the final `result`
event in `_stream_response`, and include `actions` in the non-SSE JSON
response branch for consistency.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/nlq): template-based suggestion engine
* feat(api/routers/nlq): add /api/nlq/suggestions endpoint
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* refactor(mcp-server): route find_path through common.agent_tools
Delegates mcp_server.find_path to common.agent_tools.find_path via
API-backed resolver closures (_api_get for name resolution, /api/path
for path traversal), so future shared tool additions automatically
benefit MCP clients without changes to server.py.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): scaffold NlqPill component with collapsed state
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqPill expand/collapse with keyboard shortcuts
Add click-to-expand, ⌘K/Ctrl+K, ? (when no input focused), Esc-to-collapse,
and expanded-state render with focused input to NlqPill. Install
@testing-library/dom for fireEvent in tests.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqSuggestions chip renderer and history store
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqPill wires suggestions into expanded card
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqActionApplier with ord
|
|
build-discogsography (schema-init, true)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/setup-python@v5, astral-sh/setup-uv@e92bafb6253dcd438e0484186d7669ea7a8ca1cc. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
build-discogsography (schema-init, true)
embed field value must be shorter than 1024, got 7073
[`f26e431`](https://github.com/SimplicityGuy/discogsography/commit/f26e431324a04a92b169561ce995427a9a2eec9a) feat: redesign Ask as global pill with agent-driven UI actions (#304)
* docs: add ask-mode integration design spec
Designs the Explore Ask feature redesign as a global floating pill with
agent-driven UI actions, dynamic suggestions, and a shared
common/agent_tools registry for the NLQ engine and MCP server.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* docs: add ask-mode integration implementation plan
31 TDD tasks across 10 phases implementing the approved spec: shared
agent_tools registry, NLQ engine action contract, suggestions endpoint,
MCP server refactor, floating pill component with suggestions and action
applier, DOMPurify markdown renderer, summary strip, and E2E coverage.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* feat(common): scaffold agent_tools package
* feat(common): add agent_tools.graph.find_path
* test(common): add find_path target-missing and no-path error cases
* feat(common): add entity detail tools to agent_tools
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(common): add discovery and stats tools to agent_tools
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* refactor(api/nlq): delegate _handle_find_path to common.agent_tools
Replace the inline name-resolution + find_shortest_path logic in
NLQToolRunner._handle_find_path with a call to the shared
common.agent_tools.find_path, injecting a resolve_name closure that
wraps EXPLORE_DISPATCH (handles numeric pass-through, missing type
pass-through, and named lookups).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* refactor(api/nlq): delegate remaining _handle_* methods to common.agent_tools
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/nlq): add Action discriminated-union schema
Defines 10 Pydantic action types with a `type` literal discriminator for strict
JSON parsing. parse_action_list drops malformed entries with a warning log.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/nlq): NLQResult carries agent-emitted UI actions
Add actions: list[Action] field to NLQResult, an _extract_actions()
helper that strips the <!--actions:[...]--> marker from agent text,
and extend the system prompt so Claude knows to emit the marker.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/routers/nlq): emit actions SSE event before result
Add an `actions` SSE event between status events and the final `result`
event in `_stream_response`, and include `actions` in the non-SSE JSON
response branch for consistency.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/nlq): template-based suggestion engine
* feat(api/routers/nlq): add /api/nlq/suggestions endpoint
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* refactor(mcp-server): route find_path through common.agent_tools
Delegates mcp_server.find_path to common.agent_tools.find_path via
API-backed resolver closures (_api_get for name resolution, /api/path
for path traversal), so future shared tool additions automatically
benefit MCP clients without changes to server.py.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): scaffold NlqPill component with collapsed state
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqPill expand/collapse with keyboard shortcuts
Add click-to-expand, ⌘K/Ctrl+K, ? (when no input focused), Esc-to-collapse,
and expanded-state render with focused input to NlqPill. Install
@testing-library/dom for fireEvent in tests.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqSuggestions chip renderer and history store
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqPill wires suggestions into expanded card
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqActionApplier with ord
|
|
Sensitive data should not be used in the ARG or ENV commands:
schema-init/Dockerfile#L92
SecretsUsedInArgOrEnv: Do not use ARG or ENV instructions for sensitive data (ENV "POSTGRES_PASSWORD")
More info: https://docs.docker.com/go/dockerfile/rule/secrets-used-in-arg-or-env/
|
|
Sensitive data should not be used in the ARG or ENV commands:
schema-init/Dockerfile#L92
SecretsUsedInArgOrEnv: Do not use ARG or ENV instructions for sensitive data (ENV "NEO4J_PASSWORD")
More info: https://docs.docker.com/go/dockerfile/rule/secrets-used-in-arg-or-env/
|
|
build-discogsography (graphinator, true)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/setup-python@v5, astral-sh/setup-uv@e92bafb6253dcd438e0484186d7669ea7a8ca1cc. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
build-discogsography (graphinator, true)
embed field value must be shorter than 1024, got 7073
[`f26e431`](https://github.com/SimplicityGuy/discogsography/commit/f26e431324a04a92b169561ce995427a9a2eec9a) feat: redesign Ask as global pill with agent-driven UI actions (#304)
* docs: add ask-mode integration design spec
Designs the Explore Ask feature redesign as a global floating pill with
agent-driven UI actions, dynamic suggestions, and a shared
common/agent_tools registry for the NLQ engine and MCP server.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* docs: add ask-mode integration implementation plan
31 TDD tasks across 10 phases implementing the approved spec: shared
agent_tools registry, NLQ engine action contract, suggestions endpoint,
MCP server refactor, floating pill component with suggestions and action
applier, DOMPurify markdown renderer, summary strip, and E2E coverage.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* feat(common): scaffold agent_tools package
* feat(common): add agent_tools.graph.find_path
* test(common): add find_path target-missing and no-path error cases
* feat(common): add entity detail tools to agent_tools
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(common): add discovery and stats tools to agent_tools
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* refactor(api/nlq): delegate _handle_find_path to common.agent_tools
Replace the inline name-resolution + find_shortest_path logic in
NLQToolRunner._handle_find_path with a call to the shared
common.agent_tools.find_path, injecting a resolve_name closure that
wraps EXPLORE_DISPATCH (handles numeric pass-through, missing type
pass-through, and named lookups).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* refactor(api/nlq): delegate remaining _handle_* methods to common.agent_tools
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/nlq): add Action discriminated-union schema
Defines 10 Pydantic action types with a `type` literal discriminator for strict
JSON parsing. parse_action_list drops malformed entries with a warning log.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/nlq): NLQResult carries agent-emitted UI actions
Add actions: list[Action] field to NLQResult, an _extract_actions()
helper that strips the <!--actions:[...]--> marker from agent text,
and extend the system prompt so Claude knows to emit the marker.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/routers/nlq): emit actions SSE event before result
Add an `actions` SSE event between status events and the final `result`
event in `_stream_response`, and include `actions` in the non-SSE JSON
response branch for consistency.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(api/nlq): template-based suggestion engine
* feat(api/routers/nlq): add /api/nlq/suggestions endpoint
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* refactor(mcp-server): route find_path through common.agent_tools
Delegates mcp_server.find_path to common.agent_tools.find_path via
API-backed resolver closures (_api_get for name resolution, /api/path
for path traversal), so future shared tool additions automatically
benefit MCP clients without changes to server.py.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): scaffold NlqPill component with collapsed state
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqPill expand/collapse with keyboard shortcuts
Add click-to-expand, ⌘K/Ctrl+K, ? (when no input focused), Esc-to-collapse,
and expanded-state render with focused input to NlqPill. Install
@testing-library/dom for fireEvent in tests.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqSuggestions chip renderer and history store
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqPill wires suggestions into expanded card
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* feat(explore): NlqActionApplier with ord
|
|
Cache Performance
Docker cache hit for api
|
|
Build Metrics
Service: api, Duration: 124s, Cache Used: true
|
|
Cache Performance
Docker cache hit for brainztableinator
|
|
Build Metrics
Service: brainztableinator, Duration: 138s, Cache Used: true
|
|
Cache Performance
Docker cache hit for insights
|
|
Build Metrics
Service: insights, Duration: 132s, Cache Used: true
|
|
Cache Performance
Docker cache hit for brainzgraphinator
|
|
Build Metrics
Service: brainzgraphinator, Duration: 135s, Cache Used: true
|
|
Cache Performance
Docker cache hit for tableinator
|
|
Build Metrics
Service: tableinator, Duration: 140s, Cache Used: true
|
|
Cache Performance
Docker cache hit for extractor
|
|
Build Metrics
Service: extractor, Duration: 142s, Cache Used: true
|
|
Cache Performance
Docker cache hit for dashboard
|
|
Build Metrics
Service: dashboard, Duration: 144s, Cache Used: true
|
|
Cache Performance
Docker cache hit for explore
|
|
Build Metrics
Service: explore, Duration: 143s, Cache Used: true
|
|
Cache Performance
Docker cache hit for schema-init
|
|
Build Metrics
Service: schema-init, Duration: 183s, Cache Used: true
|
|
Cache Performance
Docker cache hit for graphinator
|
|
Build Metrics
Service: graphinator, Duration: 217s, Cache Used: true
|
Artifacts
Produced during runtime
| Name | Size | Digest | |
|---|---|---|---|
|
SimplicityGuy~discogsography~93BXGO.dockerbuild
|
84.7 KB |
sha256:413c4dc72f3717462dd311649a325609045aa1739d111c0f8d66452594683f1d
|
|
|
SimplicityGuy~discogsography~9XKTOC.dockerbuild
|
88.8 KB |
sha256:7f9d495275e71d74a9fb685dd824cc8f09e6f5738c44491aea2ebfb1ccd4e4df
|
|
|
SimplicityGuy~discogsography~A7QQWV.dockerbuild
|
116 KB |
sha256:0a5fc383194ff87fe7af828125b171ec1a9a765c7919bf1f37a613e629db2679
|
|
|
SimplicityGuy~discogsography~DJLN5L.dockerbuild
|
109 KB |
sha256:bf5f19b3c18158978b1845478a794c6b204ed6a73a3651da80471aa4add93b26
|
|
|
SimplicityGuy~discogsography~HZM0N0.dockerbuild
|
84.7 KB |
sha256:0f7e4fa4fbb5035df381691b30efe16c976b0be4e59240f342d3ce9f26c2f6d6
|
|
|
SimplicityGuy~discogsography~I9S71W.dockerbuild
|
84.9 KB |
sha256:3a8c2e669321446a9e869ccd0ade1494feea0014bee79a2fa16049250c48e1db
|
|
|
SimplicityGuy~discogsography~RPM60Q.dockerbuild
|
76.9 KB |
sha256:2c467723e363324238b6e33aaaf7f859da964821545f7af73fe8de2468d06c75
|
|
|
SimplicityGuy~discogsography~RQGNXX.dockerbuild
|
85.1 KB |
sha256:aa67e7d74085fba653ac05944da1f0c998e78adb7c71d4e8d2b9fcca638315b0
|
|
|
SimplicityGuy~discogsography~T59LWS.dockerbuild
|
85.3 KB |
sha256:ecfdbcd439b17abc67ac25eea7207580f48e62685735c6a9db70d2745c8ed115
|
|
|
SimplicityGuy~discogsography~V93YEO.dockerbuild
|
107 KB |
sha256:423527867ea9114fd5c1ab54655be17b1907116e6a21a1e742f851201df3af63
|
|