1pub use deny::apply_deny_adapter;
2mod deny;
3
4pub enum InheritConfiguration {
12 All,
14 None,
16 Some(Vec<String>),
19}
20
21const CAPABILITY_SETS: &[(&str, &[&str])] = &[
22 ("ai_models", AI_MODELS),
23 ("allowed_outbound_hosts", ALLOWED_OUTBOUND_HOSTS),
24 ("environment", ENVIRONMENT),
25 ("files", FILES),
26 ("key_value_stores", KEY_VALUE_STORES),
27 ("sqlite_databases", SQLITE_DATABASES),
28 ("variables", VARIABLES),
29];
30
31const AI_MODELS: &[&str] = &["fermyon:spin/llm", "fermyon:spin/llm@2.0.0"];
32
33const ALLOWED_OUTBOUND_HOSTS: &[&str] = &[
34 "fermyon:spin/http",
35 "fermyon:spin/mysql",
36 "fermyon:spin/postgres",
37 "fermyon:spin/redis",
38 "fermyon:spin/mqtt@2.0.0",
39 "fermyon:spin/mysql@2.0.0",
40 "fermyon:spin/postgres@2.0.0",
41 "fermyon:spin/redis@2.0.0",
42 "spin:mqtt/mqtt@3.0.0",
43 "spin:mysql/mysql@3.0.0",
44 "spin:postgres/postgres@3.0.0",
45 "spin:postgres/postgres@4.2.0",
46 "spin:redis/redis@3.0.0",
47 "wasi:http/client@0.3.0",
48 "wasi:http/client@0.3.0-rc-2026-03-15",
49 "wasi:http/outgoing-handler@0.2.6",
50 "wasi:sockets/ip-name-lookup@0.2.6",
51 "wasi:sockets/ip-name-lookup@0.3.0",
52 "wasi:sockets/ip-name-lookup@0.3.0-rc-2026-03-15",
53 "wasi:sockets/tcp-create-socket@0.2.6",
54 "wasi:sockets/tcp@0.2.6",
55 "wasi:sockets/udp-create-socket@0.2.6",
56 "wasi:sockets/udp@0.2.6",
57];
58
59const ENVIRONMENT: &[&str] = &[
60 "wasi:cli/environment@0.2.6",
61 "wasi:cli/environment@0.3.0",
62 "wasi:cli/environment@0.3.0-rc-2026-03-15",
63];
64
65const FILES: &[&str] = &[
66 "wasi:filesystem/preopens@0.2.6",
67 "wasi:filesystem/preopens@0.3.0",
68 "wasi:filesystem/preopens@0.3.0-rc-2026-03-15",
69];
70
71const KEY_VALUE_STORES: &[&str] = &[
72 "fermyon:spin/key-value",
73 "fermyon:spin/key-value@2.0.0",
74 "spin:key-value/key-value@3.0.0",
75 "wasi:keyvalue/store@0.2.0-draft2",
76];
77
78const SQLITE_DATABASES: &[&str] = &[
79 "fermyon:spin/sqlite",
80 "fermyon:spin/sqlite@2.0.0",
81 "spin:sqlite/sqlite@3.1.0",
82];
83
84const VARIABLES: &[&str] = &[
85 "fermyon:spin/config",
86 "fermyon:spin/variables@2.0.0",
87 "spin:variables/variables@3.0.0",
88 "wasi:config/store@0.2.0-draft-2024-09-27",
89];