Compose permission UX matrix, batch roles and member config (permux U1-U6) #629

Merged
weichen merged 23 commits from feature/iam-role-permission-linked-capabilities-perm-ux into feature/iam-role-permission-linked-capabilities 2026-10-19 08:05:13 +00:00
23 Commits
Author SHA1 Message Date
weichen a9878b0ed3 Fold-close the task card before merge
ci / test-pg (pull_request) Skipped
ci / svc-realcombo (pull_request) Skipped
ci / test (pull_request) Successful in 8m10s
Why: close the task card inside its own PR so landing it needs no post-merge backfill or separate close PR.
Evidence: .task/feature-iam-role-permission-linked-capabilities-perm-ux.md -> .task/archive/feature-iam-role-permission-linked-capabilities-perm-ux.md; status 已完成(合入前闭合); PR #629 https://git-home.u1680832.nyat.app:30319/weichen/Agent-System-Dev/pulls/629.
Impact: task metadata only; the card is archived within PR #629 and lands with its merge commit.
Refs: task.sh close --self
2026-10-19 07:56:10 +00:00
weichen 7aa9822bf2 Record the pre-merge authoritative sync
Why: task-sync merged the latest L1 head (e1e0887) which only added child
task registrations (u2a/u2b/u7/u7a) — no code or component changes; the
composition pins and prior gate evidence remain valid for the tested
object.

Evidence: /tmp/permux-final-sync.json (changed=1, cards only).

Impact: task records only.

Refs: PR #629.
2026-10-19 07:56:10 +00:00
weichen c1cf9dd0ad Record the sync checkpoint
Why: bind the task validation checkpoint to the integration baseline.

Evidence: SELF recursive component checks; sync_base=e1e0887e12501158e04477659d4567262dc44a73; before_record=2f88c756faaa267daf99d311415e7253fb5b4f23.

Impact: task metadata only.

Refs: .task/feature-iam-role-permission-linked-capabilities-perm-ux.md
2026-10-19 07:55:31 +00:00
weichen 2f88c756fa Merge parent initiative feature/iam-role-permission-linked-capabilities into the task branch
Why: include the current parent initiative baseline before verification.

Evidence: resolved feature/iam-role-permission-linked-capabilities=e1e0887e12501158e04477659d4567262dc44a73.

Impact: integrate parent initiative changes without rewriting task history.

Refs: task-sync
2026-10-19 07:54:36 +00:00
weichen e4aa633750 Record independent review pass and non-blocking suggestions
ci / svc-realcombo (pull_request) Skipped
ci / test-pg (pull_request) Skipped
ci / test (pull_request) Successful in 8m41s
Why: a fresh-session reviewer (pi) audited the full permux range and
returned PASS with zero blocking findings and five non-blocking
suggestions, recorded verbatim with the review report in .task/reviews.

Evidence: review receipt /tmp/permux-review2-run.json; report file applied
as transport 347586d.

Impact: task records only (.task/** host-exempt).

Refs: PR #629.
2026-10-19 07:54:20 +00:00
agent-exec-transport 347586d8ae agent-exec transport 21f0a81bb97fca3b71c1fef024190705/7e9c0e06238a 2026-10-19 07:53:37 +00:00
weichen 234ce3016a Record CI success evidence for the child PR head
ci / test-pg (pull_request) Skipped
ci / svc-realcombo (pull_request) Skipped
ci / test (pull_request) Successful in 8m24s
Why: the rerun of the lightweight child CI passed on 374ce2d (the first run
failed on a load-timing project-events replay test that passes locally and
was not touched by this diff); evidence recorded before independent review.

Evidence: /tmp/permux-ci-success.json (CI_SUCCESS).

Impact: task card only.

Refs: PR #629.
2026-10-19 07:32:31 +00:00
weichen 374ce2d382 Record PR 629 and pr-check pass
ci / test-pg (pull_request) Skipped
ci / svc-realcombo (pull_request) Skipped
ci / test (pull_request) Successful in 8m7s
Why: the child PR against the L1 branch is open and passes task-pr-check
(base/head/kind verified); PR link recorded on the card.

Evidence: /tmp/permux-prcheck.json.

Impact: task card only.

Refs: PR #629.
2026-10-19 07:12:03 +00:00
weichen e7bcc61ba6 Record platform outage blocking PR creation and merge
ci / test-pg (pull_request) Skipped
ci / svc-realcombo (pull_request) Skipped
ci / test (pull_request) Failing after 8m51s
Why: the Gitea endpoint stopped serving TLS (WRONG_VERSION_NUMBER) and its
plain-HTTP listener returns a 501 proxy error page for the API, so the PR,
pr-check, CI wait and merge steps are blocked; git/SSH pushes succeeded and
all branches are on the remotes.

Evidence: endpoint probes recorded in this note; remote branches verified
via git ls-remote over SSH.

Impact: task card only; delivery pauses per governance until the platform
recovers.

Refs: L1 PR #628.
2026-10-19 05:40:58 +00:00
weichen f97790bcce Record U6 verification results and dispatch receipts
Why: final composition bdd058f (backend 4130ad7 + frontend 46a63f02) passed
the affected gate and the full live-browser suite 8/8 on the real combo;
receipts for all composition and repair transports are recorded, with
honest NOT_RUN notes for scenarios owned by L1 U2/U7 and undeployed C16.

Evidence: /tmp/permux-final-affected.json, /tmp/permux-final-live.json.

Impact: task card only.

Refs: L1 PR #628; plan U6.
2026-10-19 05:37:15 +00:00
agent-exec-transport bdd058f974 agent-exec transport 3ede955b6c1c568f4de726d1e24e51f3/975bb824ac1a 2026-10-19 05:35:11 +00:00
agent-exec-transport 650944ae68 agent-exec transport 29bdb2f1c1d2063b8ad3c9b6119bfc41/d65bc975a3b9 2026-10-19 04:38:45 +00:00
weichen 018f07bf9e Record U6 composition notes and known environment failures
Why: composition transport 7b25169 pins the permux component branches; the
first affected-run capture was defective (a tail pipe swallowed the nonzero
exit of the knip ratchet) and is explicitly disqualified; the umask-induced
identity test failure is recorded as environmental.

Evidence: knip repair receipt /tmp/permux-knip-run.json (50 <= 51 after fix).

Impact: task card only.

Refs: L1 PR #628; plan U6.
2026-10-19 04:37:01 +00:00
agent-exec-transport 7b25169fad agent-exec transport 01334de262df1574a23914134a7246a5/4d8212712393 2026-10-19 04:25:50 +00:00
weichen 6298df1bfe Record permux-U5 dispatch receipt and host verification
Why: permux-U5 delivered the truthful subset of project effective-permission
explanations: consume the L1-U1 linkedCapabilities field from /api/me,
document-duty condition notes, creator/role source label mappings, and an
explanation card in the RDM self-check view. Creator-source display and
member shared-read semantics remain NOT_RUN pending L1 U2/U7 and are
recorded as such, not mocked.

Evidence: host verification receipt /tmp/permux-u5-verify.json (vitest
permission-explanations/role-members/design-guard, tsc -b); run receipt
/tmp/permux-u5-run.json.

Impact: task card only.

Refs: L1 PR #628; plan U5.
2026-10-19 04:23:14 +00:00
weichen 9a9c969970 Record permux-U4 dispatch receipt and host verification
Why: permux-U4 (user table role column, explicit cross-page multi-select,
previewed batch assignment, copy-role-and-assign dialog, role member
sub-view wired from the matrix) was implemented by a fresh external cursor
session and applied as transport d965732.

Evidence: host verification receipt /tmp/permux-u4-verify.json (vitest
account-users/role-members/role-permissions suites + design guard, tsc -b);
run receipt /tmp/permux-u4-run.json.

Impact: task card only.

Refs: L1 PR #628; plan U4.
2026-10-19 04:18:18 +00:00
weichen b1a1ffbda5 Record permux-U3 dispatch receipt and host verification
Why: permux-U3 (category matrix default view, three-state controls,
multi-role draft with unified preview and atomic batch save, narrow-screen
focus) was implemented by a fresh external cursor session and applied as
transport 4be7362 on the frontend working branch.

Evidence: host verification receipt /tmp/permux-u3-verify-b.json (vitest
role-permissions suites + design guard, tsc -b); run receipt
/tmp/permux-u3-run.json. Note: first capture attempt aborted on a missing
modules/ui node_modules (environment, fixed by npm ci in the ui submodule).

Impact: task card only.

Refs: L1 PR #628; plan U3.
2026-10-19 04:06:55 +00:00
weichen fa8b5fb1c1 Record permux-U2 dispatch receipt and host verification
Why: permux-U2 (atomic batch patch, batch role assignment, copy-and-assign,
role member directory, user directory role projection) was implemented by a
fresh external cursor session and applied as transport 6851ee6; host review
confirmed patch-preserves-unmentioned-rows, single epoch step per batch and
read-only previews.

Evidence: host verification receipt /tmp/permux-u2-verify.json (build,
filtered tests incl. Batch/CopyAssign/Members, vet, deps untouched);
run receipt /tmp/permux-u2-run.json.

Impact: task card only.

Refs: L1 PR #628; plan U2.
2026-10-19 03:53:53 +00:00
weichen cfe90a8742 Record permux-U1 dispatch receipts and host verification
Why: permux-U1 (catalog categories + read-only multi-role preview) was
implemented by an external cursor session and applied as transport
bc09721 on the backend working branch; the first successful run was not
transportable because the host invoked run with a relative --repo, which
is recorded verbatim.

Evidence: host verification receipt /tmp/permux-u1-verify.json (build,
filtered go tests, vet, deps untouched); run receipts /tmp/permux-u1-run.json
and /tmp/permux-u1-run2.json.

Impact: task card only.

Refs: L1 PR #628; plan U1.
2026-10-19 03:40:42 +00:00
weichen c17b0ae76c Record the perm-ux child task scope and unit plan
Why: the child task implements the approved permission UX plan U1-U6 on
top of the L1 association contract (afb65c5); governance requires the
scope, component branch strategy and coordination notes on the card
before the first project write.

Evidence: precheck READY receipt /tmp/iam-perm-ux-precheck.json; L1
state verified via task-sync (sync_base a99dbfc, L1 U1 completed).

Impact: task card only (.task/** host-exempt path).

Refs: plan /tmp/iam-permission-ux-plan-20261019-1dehpj7l/plan.md; L1 PR #628
2026-10-19 03:23:38 +00:00
weichen f35a9dd1d2 Record the sync checkpoint
Why: bind the task validation checkpoint to the integration baseline.

Evidence: SELF recursive component checks; sync_base=a99dbfcd9ac48d09038c76e09dc59e074c11ab7d; before_record=04af865e227858bbe9f0bd38ebaed2b874da4f27.

Impact: task metadata only.

Refs: .task/feature-iam-role-permission-linked-capabilities-perm-ux.md
2026-10-19 03:18:24 +00:00
weichen 04af865e22 Merge parent initiative feature/iam-role-permission-linked-capabilities into the task branch
Why: include the current parent initiative baseline before verification.

Evidence: resolved feature/iam-role-permission-linked-capabilities=a99dbfcd9ac48d09038c76e09dc59e074c11ab7d.

Impact: integrate parent initiative changes without rewriting task history.

Refs: task-sync
2026-10-19 03:17:43 +00:00
weichen 1069a75faa Record the task card for feature-iam-role-permission-linked-capabilities-perm-ux
Why: establish the authorized task workspace and its initial baseline.

Evidence: preserved precheck receipt in .task/feature-iam-role-permission-linked-capabilities-perm-ux.md; R0=7716b28cfff5200e7cfe9ec75aff5bcd71b234ed.

Impact: task metadata only; the feature workspace starts at 90317d02a7.

Refs: .task/feature-iam-role-permission-linked-capabilities-perm-ux.md
2026-10-19 03:13:11 +00:00