Describe the bug
When a subcommand is blocked by ACL, the error and ACL LOG entry are missing the parental context.
To reproduce
127.0.0.1:6379> ACL SETUSER demo on nopass
OK
127.0.0.1:6379> AUTH demo ""
OK
127.0.0.1:6379> SCRIPT HELP
(error) NOPERM this user has no permissions to run the 'help' command or its subcommand
127.0.0.1:6379> AUTH default ""
OK
127.0.0.1:6379> ACL LOG
1) 1) "count"
2) (integer) 1
3) "reason"
4) "command"
5) "context"
6) "toplevel"
7) "object"
8) "help"
9) "username"
10) "demo"
11) "age-seconds"
12) "33.404000000000003"
13) "client-info"
14) "id=4 addr=127.0.0.1:53533 laddr=127.0.0.1:6379 fd=9 name= age=10 idle=0 flags=N db=0 sub=0 psub=0 multi=-1 qbuf=26 qbuf-free=16864 argv-mem=10 multi-mem=0 obl=0 oll=0 omem=0 tot-mem=34330 events=r cmd=script|help user=demo redir=-1 resp=2"
Expected behavior
The error should be:
(error) NOPERM this user has no permissions to run the 'script help' command
And log entry:
...
7) "object"
8) "script help"
...
Comment From: enjoy-binbin
show the full cmd name, like 'script|help', how does it look like
127.0.0.1:6379> ACL SETUSER demo on nopass
OK
127.0.0.1:6379> AUTH demo ""
OK
127.0.0.1:6379> SCRIPT HELP
(error) NOPERM this user has no permissions to run the 'script|help' command
127.0.0.1:6379> AUTH default ""
OK
127.0.0.1:6379> ACL LOG
1) 1) "count"
2) (integer) 1
3) "reason"
4) "command"
5) "context"
6) "toplevel"
7) "object"
8) "script|help"
9) "username"
10) "demo"
11) "age-seconds"
12) "8.4239999999999995"
13) "client-info"
14) "id=4 addr=127.0.0.1:48220 laddr=127.0.0.1:6379 fd=8 name= age=38 idle=0 flags=N db=0 sub=0 psub=0 multi=-1 qbuf=26 qbuf-free=20448 argv-mem=10 multi-mem=0 obl=0 oll=0 omem=0 tot-mem=40986 events=r cmd=script|help user=demo redir=-1 resp=2"