lablup / lablup/backend.ai

Exercise every wired v2 action against a live manager

Open
#13,977 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
670
Forks
183
Avg merge
17h 7m
Merged PRs (30d)
358

Description

Drive each wired v2 action through the entry point that really reaches it — REST v2, GraphQL, the CLI, or the bgtask that runs it — against a running manager, and record where the run disagrees with what the wiring declares.

### Why this is separate

The sweep in BA-7486 read the code only. It can say a wiring exists and that nothing constructs the action; it cannot say what happens when a request arrives. These are the questions only a run answers:

- Whether an action the catalog lists is reachable from any client at all, and by which route.
- Whether the gate the wiring declares is the gate the request actually meets — admin and non-admin both.
- Whether the audit row a run leaves carries the entity type, operation and action name the catalog predicts.
- Whether a lookup miss and a permission denial come back indistinguishable where the no-leakage rule requires it.
- Whether a partial bulk run answers one item per named entity, in order, with denials and misses told apart.

### How

Restart the local stack, sign in as an admin and as a non-admin, and exercise the actions through ./bai and the REST/GraphQL surface. Read the resulting logs, metrics and audit rows through the Grafana MCP rather than the console. Start from the operations the static sweep flagged as unreachable or wrongly declared, then widen.

### Deliverable

The findings are recorded as a comment on this issue and as the runtime document under docs/reports/. Each fix group is then filed as its own issue; this task covers the test run only, not the fixes.

JIRA Issue: BA-7489

Contributor guide

Open the contributing guide

Research direction

Restart the local stack, then start with the operations flagged by the static sweep as unreachable or wrongly declared. Exercise them through ./bai, REST v2, GraphQL, or the relevant bgtask as both admin and non-admin, and inspect logs, metrics, and audit rows through the Grafana MCP. Done means recording runtime discrepancies in a comment and docs/reports/ document, with each fix group filed separately.

Written by the indexing model from the issue text.

Assessment

Tech stack
grafana, graphql, python
Domain
backend-api-design, cli, observability, testing
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.