diff --git a/.github/workflows/security-release-gate.yml b/.github/workflows/security-release-gate.yml
index d7431042f9..3595f61a4d 100644
--- a/.github/workflows/security-release-gate.yml
+++ b/.github/workflows/security-release-gate.yml
@@ -252,6 +252,20 @@ jobs:
'approvedTcpSurvivesJsonReloadHumanReviewNativeDispatchAndOneReceipt',
'changedApprovedTcpBodyAndCurrentRoleCannotReachTheDurableClaim',
},
+ 'io.cattle.platform.iaas.api.auth.ai.view.AiVolumeUsageViewTest': {
+ 'activeAndStoppedSameNameReferencesUseFreshOwnersAndAuthorizedStackNames',
+ 'hiddenForeignRemovedOrUnreadableParentsNeverExposeIdentitiesOrCounts',
+ 'boundedSnapshotAndEmptyOrLegacyMetadataNeverClaimUnusedOrComplete',
+ 'realCustomKeyOwnerAuditsAllowAndDenyWithReadOnlyDispatchAndNoExtraGrant',
+ 'unattestedCustomKeyManagerReturnsUnknownWithoutTargetInspectionOrFallback',
+ 'laterTargetKeyRevisionRevocationAbortsTheWholeReadAndRestoresContext',
+ 'nativeCoreProjectionRetainsSchemaFieldVisibilityAndNeverInvokesDtoAugmentation',
+ 'volumeScalarsMatchOriginalNativeWrappingForJwtFullAndLegacyIncludingSchemaAliasesAndTransforms',
+ },
+ 'io.cattle.platform.core.dao.impl.VolumeUsageDaoTest': {
+ 'nativeSqlBoundsRelationshipCandidatesBeforeMaterializationIncludingStoppedContainers',
+ 'nativeSqlExcludesEveryForeignRemovedAndNonContainerRelationshipWithoutWrites',
+ },
}
suites = []
observed = {}
diff --git a/COMPATIBILITY.md b/COMPATIBILITY.md
index 4b99352203..f3c912e35f 100644
--- a/COMPATIBILITY.md
+++ b/COMPATIBILITY.md
@@ -1,5 +1,18 @@
# Compatibility Contract
+## Engine 0.183.369 candidate — not published
+
+The existing typed Volume detail gains at most 50 freshly authorized container
+references from a native SQL snapshot bounded to 51 rows. Completeness remains
+unknown; missing results cannot establish unused or safe-to-delete status.
+Current role-schema scalar values, Key scopes and canonical read audit remain;
+no output-filter, operation grant or deletion-oracle change is introduced.
+Native parent names require a readable persisted Stack relation and fresh read.
+Matching Web Console 1.6.208 / bridge 0.2.10, original artifact qualification
+and native workflow acceptance remain pending. Required test identities are
+132 preserved plus ten new methods (142); see the
+[candidate note](docs/releases/orchestration-engine-0.183.369.md).
+
## Engine 0.183.368 release
This release adds an optional TCP `healthCheck` to the existing typed External
diff --git a/README.md b/README.md
index 83add06307..b26be0f433 100644
--- a/README.md
+++ b/README.md
@@ -8,6 +8,12 @@ Rancher 1.6 ecosystem. It is not affiliated with Rancher Labs or SUSE.
This fork of [`rancher/cattle`](https://github.com/rancher/cattle) preserves
upstream history, authorship, licenses, and dependency notices.
+## Next candidate: Engine 0.183.369
+
+[Volume usage safe reads](docs/releases/orchestration-engine-0.183.369.md) are under
+source/CI preparation with matching Web Console 1.6.208 / bridge 0.2.10. This
+candidate is not published or runtime-qualified.
+
## Latest published release: Engine 0.183.368
[Engine 0.183.368](https://github.com/PastureStack/orchestration-engine/releases/tag/v0.183.368)
diff --git a/code/framework/api-pub-sub-jetty/pom.xml b/code/framework/api-pub-sub-jetty/pom.xml
index 13a060b2e0..ef32e38c60 100644
--- a/code/framework/api-pub-sub-jetty/pom.xml
+++ b/code/framework/api-pub-sub-jetty/pom.xml
@@ -4,7 +4,7 @@
io.cattle
cattle-parent
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/framework/api-pub-sub/pom.xml b/code/framework/api-pub-sub/pom.xml
index a35124cb9c..882100e841 100644
--- a/code/framework/api-pub-sub/pom.xml
+++ b/code/framework/api-pub-sub/pom.xml
@@ -4,7 +4,7 @@
io.cattle
cattle-parent
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/framework/api/pom.xml b/code/framework/api/pom.xml
index 16fbfe25fd..42bb78aff3 100644
--- a/code/framework/api/pom.xml
+++ b/code/framework/api/pom.xml
@@ -4,7 +4,7 @@
cattle-parent
io.cattle
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/framework/archaius/pom.xml b/code/framework/archaius/pom.xml
index a18d27308d..6292c7f365 100644
--- a/code/framework/archaius/pom.xml
+++ b/code/framework/archaius/pom.xml
@@ -4,7 +4,7 @@
io.cattle
cattle-meta-parent
- 0.183.368
+ 0.183.369
../../meta-parent/pom.xml
diff --git a/code/framework/async/pom.xml b/code/framework/async/pom.xml
index cb9cf23eb5..6154f76eb3 100644
--- a/code/framework/async/pom.xml
+++ b/code/framework/async/pom.xml
@@ -4,7 +4,7 @@
io.cattle
cattle-parent
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/framework/auditing/pom.xml b/code/framework/auditing/pom.xml
index 69745871e6..a35a6c3406 100644
--- a/code/framework/auditing/pom.xml
+++ b/code/framework/auditing/pom.xml
@@ -4,7 +4,7 @@
cattle-parent
io.cattle
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/framework/db-loader/pom.xml b/code/framework/db-loader/pom.xml
index ee36d81379..418945bb62 100644
--- a/code/framework/db-loader/pom.xml
+++ b/code/framework/db-loader/pom.xml
@@ -4,7 +4,7 @@
io.cattle
cattle-parent
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/framework/deferred/pom.xml b/code/framework/deferred/pom.xml
index 6530d804b0..f431676b79 100644
--- a/code/framework/deferred/pom.xml
+++ b/code/framework/deferred/pom.xml
@@ -4,7 +4,7 @@
io.cattle
cattle-parent
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/framework/encryption/pom.xml b/code/framework/encryption/pom.xml
index 84c15a83e6..1083826ad1 100644
--- a/code/framework/encryption/pom.xml
+++ b/code/framework/encryption/pom.xml
@@ -4,7 +4,7 @@
io.cattle
cattle-parent
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/framework/engine/pom.xml b/code/framework/engine/pom.xml
index ca2a6c4329..cd716e1534 100644
--- a/code/framework/engine/pom.xml
+++ b/code/framework/engine/pom.xml
@@ -4,7 +4,7 @@
io.cattle
cattle-parent
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/framework/eventing/pom.xml b/code/framework/eventing/pom.xml
index 803d3d79af..0ebbcf801c 100644
--- a/code/framework/eventing/pom.xml
+++ b/code/framework/eventing/pom.xml
@@ -4,7 +4,7 @@
io.cattle
cattle-parent
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/framework/events/pom.xml b/code/framework/events/pom.xml
index 5bd358613a..740483596a 100644
--- a/code/framework/events/pom.xml
+++ b/code/framework/events/pom.xml
@@ -4,7 +4,7 @@
io.cattle
cattle-parent
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/framework/extension-spring/pom.xml b/code/framework/extension-spring/pom.xml
index 94cabfa9d4..fc390c500a 100644
--- a/code/framework/extension-spring/pom.xml
+++ b/code/framework/extension-spring/pom.xml
@@ -4,7 +4,7 @@
cattle-parent
io.cattle
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/framework/extension/pom.xml b/code/framework/extension/pom.xml
index 1b3414caea..af2460c68e 100644
--- a/code/framework/extension/pom.xml
+++ b/code/framework/extension/pom.xml
@@ -4,7 +4,7 @@
cattle-parent
io.cattle
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/framework/java-server/pom.xml b/code/framework/java-server/pom.xml
index 0e92141852..34fdb69cbf 100644
--- a/code/framework/java-server/pom.xml
+++ b/code/framework/java-server/pom.xml
@@ -4,7 +4,7 @@
io.cattle
cattle-parent
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/framework/jmx/pom.xml b/code/framework/jmx/pom.xml
index ffd93c1c77..1845ba2261 100644
--- a/code/framework/jmx/pom.xml
+++ b/code/framework/jmx/pom.xml
@@ -4,7 +4,7 @@
io.cattle
cattle-parent
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/framework/jooq/pom.xml b/code/framework/jooq/pom.xml
index db0620f57c..eb18fb5776 100644
--- a/code/framework/jooq/pom.xml
+++ b/code/framework/jooq/pom.xml
@@ -4,7 +4,7 @@
io.cattle
cattle-parent
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/framework/json/pom.xml b/code/framework/json/pom.xml
index 20fdaabd37..0ceb07876b 100644
--- a/code/framework/json/pom.xml
+++ b/code/framework/json/pom.xml
@@ -4,7 +4,7 @@
io.cattle
cattle-parent
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/framework/launcher/pom.xml b/code/framework/launcher/pom.xml
index e4de6fcce0..55dc54b965 100644
--- a/code/framework/launcher/pom.xml
+++ b/code/framework/launcher/pom.xml
@@ -4,7 +4,7 @@
io.cattle
cattle-parent
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/framework/lock/pom.xml b/code/framework/lock/pom.xml
index 42bb731c62..db0e5f3ab7 100644
--- a/code/framework/lock/pom.xml
+++ b/code/framework/lock/pom.xml
@@ -4,7 +4,7 @@
io.cattle
cattle-parent
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/framework/logback/pom.xml b/code/framework/logback/pom.xml
index 650b6b07bb..7b43645b15 100644
--- a/code/framework/logback/pom.xml
+++ b/code/framework/logback/pom.xml
@@ -4,7 +4,7 @@
io.cattle
cattle-meta-parent
- 0.183.368
+ 0.183.369
../../meta-parent/pom.xml
diff --git a/code/framework/managed-context/pom.xml b/code/framework/managed-context/pom.xml
index d7a48ea2eb..0d71500f99 100644
--- a/code/framework/managed-context/pom.xml
+++ b/code/framework/managed-context/pom.xml
@@ -4,7 +4,7 @@
io.cattle
cattle-parent
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/framework/metrics/pom.xml b/code/framework/metrics/pom.xml
index e3a613850d..e12bccccb7 100644
--- a/code/framework/metrics/pom.xml
+++ b/code/framework/metrics/pom.xml
@@ -4,7 +4,7 @@
io.cattle
cattle-parent
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/framework/module/pom.xml b/code/framework/module/pom.xml
index ae0ae3eae1..fad83c50d0 100644
--- a/code/framework/module/pom.xml
+++ b/code/framework/module/pom.xml
@@ -4,7 +4,7 @@
io.cattle
cattle-parent
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/framework/object/pom.xml b/code/framework/object/pom.xml
index 5e9986d619..fe56c00d63 100644
--- a/code/framework/object/pom.xml
+++ b/code/framework/object/pom.xml
@@ -4,7 +4,7 @@
io.cattle
cattle-parent
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/framework/pool/pom.xml b/code/framework/pool/pom.xml
index 089e0d4b4e..4f444e77c1 100644
--- a/code/framework/pool/pom.xml
+++ b/code/framework/pool/pom.xml
@@ -4,7 +4,7 @@
io.cattle
cattle-parent
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/framework/resource-monitor/pom.xml b/code/framework/resource-monitor/pom.xml
index febd2ec750..15cd336924 100644
--- a/code/framework/resource-monitor/pom.xml
+++ b/code/framework/resource-monitor/pom.xml
@@ -4,7 +4,7 @@
cattle-parent
io.cattle
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/framework/schema/pom.xml b/code/framework/schema/pom.xml
index 2f431c8895..94044d2a1d 100644
--- a/code/framework/schema/pom.xml
+++ b/code/framework/schema/pom.xml
@@ -4,7 +4,7 @@
cattle-parent
io.cattle
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/framework/server/pom.xml b/code/framework/server/pom.xml
index 1a9d6ac54b..bf9b5a1de8 100644
--- a/code/framework/server/pom.xml
+++ b/code/framework/server/pom.xml
@@ -4,7 +4,7 @@
cattle-meta-parent
io.cattle
- 0.183.368
+ 0.183.369
../../meta-parent/pom.xml
diff --git a/code/framework/spring/pom.xml b/code/framework/spring/pom.xml
index 24bdf5290b..a55aac8a8e 100644
--- a/code/framework/spring/pom.xml
+++ b/code/framework/spring/pom.xml
@@ -4,7 +4,7 @@
io.cattle
cattle-parent
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/framework/system-task/pom.xml b/code/framework/system-task/pom.xml
index 39e6c473d7..478a735931 100644
--- a/code/framework/system-task/pom.xml
+++ b/code/framework/system-task/pom.xml
@@ -4,7 +4,7 @@
io.cattle
cattle-parent
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/framework/token/pom.xml b/code/framework/token/pom.xml
index ca4a99a212..18df61d5e3 100644
--- a/code/framework/token/pom.xml
+++ b/code/framework/token/pom.xml
@@ -4,7 +4,7 @@
io.cattle
cattle-parent
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/framework/utils/pom.xml b/code/framework/utils/pom.xml
index 417a6041d3..58ea1e8635 100644
--- a/code/framework/utils/pom.xml
+++ b/code/framework/utils/pom.xml
@@ -4,7 +4,7 @@
io.cattle
cattle-parent
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/iaas/agent-instance/pom.xml b/code/iaas/agent-instance/pom.xml
index aa0bc4b070..e2bc11401b 100644
--- a/code/iaas/agent-instance/pom.xml
+++ b/code/iaas/agent-instance/pom.xml
@@ -4,7 +4,7 @@
cattle-parent
io.cattle
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/iaas/agent-server/pom.xml b/code/iaas/agent-server/pom.xml
index 42b97d8ea0..bc333c81ab 100644
--- a/code/iaas/agent-server/pom.xml
+++ b/code/iaas/agent-server/pom.xml
@@ -4,7 +4,7 @@
io.cattle
cattle-parent
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/iaas/agent/pom.xml b/code/iaas/agent/pom.xml
index e7b69b3364..d68113ba2e 100644
--- a/code/iaas/agent/pom.xml
+++ b/code/iaas/agent/pom.xml
@@ -4,7 +4,7 @@
io.cattle
cattle-parent
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/iaas/allocator/pom.xml b/code/iaas/allocator/pom.xml
index 5daa77764d..e3e32d0e57 100644
--- a/code/iaas/allocator/pom.xml
+++ b/code/iaas/allocator/pom.xml
@@ -4,7 +4,7 @@
io.cattle
cattle-parent
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/iaas/api-logic/pom.xml b/code/iaas/api-logic/pom.xml
index c42bd09caf..9b7c54189c 100644
--- a/code/iaas/api-logic/pom.xml
+++ b/code/iaas/api-logic/pom.xml
@@ -4,7 +4,7 @@
cattle-parent
io.cattle
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/iaas/archaius-management/pom.xml b/code/iaas/archaius-management/pom.xml
index c7528fad76..996d640041 100644
--- a/code/iaas/archaius-management/pom.xml
+++ b/code/iaas/archaius-management/pom.xml
@@ -4,7 +4,7 @@
io.cattle
cattle-parent
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/iaas/auth-logic/pom.xml b/code/iaas/auth-logic/pom.xml
index 83f46870b4..189d0951ef 100644
--- a/code/iaas/auth-logic/pom.xml
+++ b/code/iaas/auth-logic/pom.xml
@@ -4,7 +4,7 @@
cattle-parent
io.cattle
- 0.183.368
+ 0.183.369
../../parent/pom.xml
diff --git a/code/iaas/auth-logic/src/main/java/io/cattle/platform/iaas/api/auth/ai/view/AiResourceViewService.java b/code/iaas/auth-logic/src/main/java/io/cattle/platform/iaas/api/auth/ai/view/AiResourceViewService.java
index efaf6d6939..2d3f85be53 100644
--- a/code/iaas/auth-logic/src/main/java/io/cattle/platform/iaas/api/auth/ai/view/AiResourceViewService.java
+++ b/code/iaas/auth-logic/src/main/java/io/cattle/platform/iaas/api/auth/ai/view/AiResourceViewService.java
@@ -7,7 +7,15 @@
import io.cattle.platform.iaas.api.auth.apikey.ApiKeyCredentialContext;
import io.cattle.platform.iaas.api.auth.apikey.ApiKeyAiBridgeGuard;
import io.cattle.platform.core.model.Account;
+import io.cattle.platform.core.dao.VolumeDao;
+import io.cattle.platform.core.model.Mount;
+import io.cattle.platform.core.model.Volume;
+import io.cattle.platform.core.model.Instance;
+import io.cattle.platform.core.model.Stack;
+import io.github.ibuildthecloud.gdapi.model.impl.SchemaImpl;
+import io.github.ibuildthecloud.gdapi.model.impl.WrappedResource;
import io.cattle.platform.object.ObjectManager;
+import io.cattle.platform.object.util.DataUtils;
import io.cattle.platform.iaas.api.auth.impl.ApiAuthenticator;
import io.cattle.platform.util.type.CollectionUtils;
import io.github.ibuildthecloud.gdapi.condition.Condition;
@@ -82,6 +90,7 @@ public class AiResourceViewService {
@Inject ResourceManagerLocator managers;
@Inject ObjectManager objects;
@Inject io.cattle.platform.iaas.api.auth.change.AiResourceChangeDomain resourceChanges;
+ @Inject VolumeDao volumes;
public Map read(ApiRequest request) {
Map input = input(request);
@@ -172,11 +181,18 @@ protected Map fetch(ApiRequest domain, Map input
}
List