fix: complete mobile and session interactions

This commit is contained in:
OpenClaw Agent
2026-09-22 04:21:59 +08:00
parent 16bc14f61b
commit beeee8191b
4 changed files with 25 additions and 10 deletions
+1 -1
View File
@@ -68,7 +68,7 @@ func ParseRules(values []string) (*Manager, error) {
if len(fields) < 3 || len(fields)%2 == 0 {
continue
}
a := &Account{Username: fields[0], Password: fields[1], Mask: ParseMask(fields[2])}
a := &Account{Username: fields[0], Password: fields[1], Mask: ParseMask(fields[2]), Admin: strings.EqualFold(fields[0], "admin")}
for i := 3; i+1 < len(fields); i += 2 {
a.Rules = append(a.Rules, PathRule{Dir: strings.Trim(fields[i], "/"), Mask: ParseMask(fields[i+1])})
}
+10
View File
@@ -52,6 +52,16 @@ func TestParseRulesGuestDefaultAndOverride(t *testing.T) {
}
}
func TestParseRulesAdminAccount(t *testing.T) {
m, err := ParseRules([]string{"::r|admin:secret:rw"})
if err != nil {
t.Fatal(err)
}
if !m.Accounts["admin"].Admin {
t.Fatal("admin account should be marked admin")
}
}
func TestSectionRuleSemantics(t *testing.T) {
a := &Account{Mask: Delete, Rules: []PathRule{
{Dir: "private", Mask: None, Deny: true},