File size: 1,182 Bytes
1e09dca
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
"""EnvHub errors for assembly_bench (Isaac Lab Arena)."""


class IsaacLabArenaError(RuntimeError):
    """Base exception for IsaacLab Arena environment errors."""

    def __init__(self, message: str = "IsaacLab Arena error"):
        self.message = message
        super().__init__(self.message)


class IsaacLabArenaConfigError(IsaacLabArenaError):
    """Invalid observation / action configuration against the live env."""

    def __init__(self, invalid: list, available: list, key_type: str = "keys"):
        msg = f"Invalid {key_type}: {invalid}. Available: {sorted(available)}"
        super().__init__(msg)
        self.invalid = invalid
        self.available = available


class IsaacLabArenaCameraKeyError(IsaacLabArenaConfigError):
    """camera_keys do not match available camera observation terms."""

    def __init__(self, invalid: list, available: list):
        super().__init__(invalid, available, "camera_keys")


class IsaacLabArenaStateKeyError(IsaacLabArenaConfigError):
    """state_keys do not match available policy observation terms."""

    def __init__(self, invalid: list, available: list):
        super().__init__(invalid, available, "state_keys")