Skip to content

Commit eb6b1f0

Browse files
committed
Revert DMS flags to single bits: false is not lost here
The dms_undeclared_* flags are always co-emitted with the one-hot DMSCompat verdict, so a 0 bit is unambiguously "measured false" rather than "not measured" — a True/False pair adds no information. A pair is only warranted for a lone boolean with no co-located signal that the measurement ran (e.g. run_as_set). Adds a comment recording why. Co-authored-by: Isaac
1 parent 125b797 commit eb6b1f0

8 files changed

Lines changed: 30 additions & 47 deletions

File tree

‎acceptance/bundle/bitmap/out.bitmap-text.txt‎

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3211,6 +3211,10 @@
32113211
1 telemetry.StatePathInDeployerHome
32123212
1 telemetry.StatePathInOtherUserHome
32133213
1 telemetry.StatePathOther
3214+
1 telemetry.DMSUndeclaredDeployingUser
3215+
1 telemetry.DMSUndeclaredOtherUser
3216+
1 telemetry.DMSUndeclaredServicePrincipal
3217+
1 telemetry.DMSUndeclaredGroup
32143218
1 telemetry.DMSCompatAuto
32153219
1 telemetry.DMSCompatOnlySelfUndeclared
32163220
1 telemetry.DMSCompatNot
@@ -3221,14 +3225,6 @@
32213225
1 telemetry.DirectMigratedViaEnv
32223226
1 telemetry.EngineTerraformConfig
32233227
1 telemetry.EngineTerraformEnv
3224-
1 telemetry.DMSUndeclaredDeployingUserTrue
3225-
1 telemetry.DMSUndeclaredDeployingUserFalse
3226-
1 telemetry.DMSUndeclaredOtherUserTrue
3227-
1 telemetry.DMSUndeclaredOtherUserFalse
3228-
1 telemetry.DMSUndeclaredServicePrincipalTrue
3229-
1 telemetry.DMSUndeclaredServicePrincipalFalse
3230-
1 telemetry.DMSUndeclaredGroupTrue
3231-
1 telemetry.DMSUndeclaredGroupFalse
32323228
1 telemetry.SkipArtifactCleanupTrue
32333229
1 telemetry.SkipArtifactCleanupFalse
32343230
1 telemetry.HasServerlessComputeTrue
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
cnEKcWJg4DnIwHCCQU6JgYWBnYGBoYH9AcMDbgUGBgUGNCDBzMDDMApoCizYwFT9fwhoAAQAAP//
1+
cnEKcWJg4NnLwHCCQU6JgYWBnYGBoYH9AcMDbgUGBgUGNCDBzMDDMApoCizYwFT9fzD4AQgAAP//

‎acceptance/bundle/bitmap/out.schema.txt‎

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3211,6 +3211,10 @@ telemetry.StatePathIsShared
32113211
telemetry.StatePathInDeployerHome
32123212
telemetry.StatePathInOtherUserHome
32133213
telemetry.StatePathOther
3214+
telemetry.DMSUndeclaredDeployingUser
3215+
telemetry.DMSUndeclaredOtherUser
3216+
telemetry.DMSUndeclaredServicePrincipal
3217+
telemetry.DMSUndeclaredGroup
32143218
telemetry.DMSCompatAuto
32153219
telemetry.DMSCompatOnlySelfUndeclared
32163220
telemetry.DMSCompatNot
@@ -3221,14 +3225,6 @@ telemetry.DirectMigratedViaConfig
32213225
telemetry.DirectMigratedViaEnv
32223226
telemetry.EngineTerraformConfig
32233227
telemetry.EngineTerraformEnv
3224-
telemetry.DMSUndeclaredDeployingUserTrue
3225-
telemetry.DMSUndeclaredDeployingUserFalse
3226-
telemetry.DMSUndeclaredOtherUserTrue
3227-
telemetry.DMSUndeclaredOtherUserFalse
3228-
telemetry.DMSUndeclaredServicePrincipalTrue
3229-
telemetry.DMSUndeclaredServicePrincipalFalse
3230-
telemetry.DMSUndeclaredGroupTrue
3231-
telemetry.DMSUndeclaredGroupFalse
32323228
telemetry.SkipArtifactCleanupTrue
32333229
telemetry.SkipArtifactCleanupFalse
32343230
telemetry.HasServerlessComputeTrue

‎acceptance/bundle/templates/default-python/classic/out.bitmap.txt‎

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -130,6 +130,10 @@
130130
1 telemetry.StatePathInDeployerHome
131131
1 telemetry.StatePathInOtherUserHome
132132
1 telemetry.StatePathOther
133+
1 telemetry.DMSUndeclaredDeployingUser
134+
1 telemetry.DMSUndeclaredOtherUser
135+
1 telemetry.DMSUndeclaredServicePrincipal
136+
1 telemetry.DMSUndeclaredGroup
133137
1 telemetry.DMSCompatAuto
134138
1 telemetry.DMSCompatOnlySelfUndeclared
135139
1 telemetry.DMSCompatNot
@@ -140,14 +144,6 @@
140144
1 telemetry.DirectMigratedViaEnv
141145
1 telemetry.EngineTerraformConfig
142146
1 telemetry.EngineTerraformEnv
143-
1 telemetry.DMSUndeclaredDeployingUserTrue
144-
1 telemetry.DMSUndeclaredDeployingUserFalse
145-
1 telemetry.DMSUndeclaredOtherUserTrue
146-
1 telemetry.DMSUndeclaredOtherUserFalse
147-
1 telemetry.DMSUndeclaredServicePrincipalTrue
148-
1 telemetry.DMSUndeclaredServicePrincipalFalse
149-
1 telemetry.DMSUndeclaredGroupTrue
150-
1 telemetry.DMSUndeclaredGroupFalse
151147
1 telemetry.SkipArtifactCleanupTrue
152148
1 telemetry.SkipArtifactCleanupFalse
153149
1 telemetry.HasServerlessComputeTrue

‎acceptance/bundle/templates/default-python/classic/output.txt‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ Workspace:
3333
Validation OK!
3434

3535
>>> [CLI] bundle bitmap bitmap -t dev
36-
cnEKcWJg4DnIwHCCQU6p246BnYGBoYH9/dMH3AoMDAoMDN8ZGBgYOBjAJBODxGcGfgYIkGIgHRSATEQCnEwgk9NhXA4GRgY5uGSCAEIh63oGCgHPAQEGJQOGIQAs2O+AqPr/ENAACAAA//8=
36+
cnEKcWJg4NnLwHCCQU6p246BnYGBoYH9/dMH3AoMDAoMDN8ZGBgYOBjAJBODxGcGfgYIkGIgHRSATEQCnEwgk9NhXA4GRgY5uGSCAEIh63oGCgHPAQEGJQOGIQAs2O+AqPr/YPADEAAA//8=
3737

3838
>>> [CLI] bundle plan -t dev
3939
Building python_artifact...

‎bundle/bitmap/schema.txt‎

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3211,6 +3211,10 @@ telemetry.StatePathIsShared
32113211
telemetry.StatePathInDeployerHome
32123212
telemetry.StatePathInOtherUserHome
32133213
telemetry.StatePathOther
3214+
telemetry.DMSUndeclaredDeployingUser
3215+
telemetry.DMSUndeclaredOtherUser
3216+
telemetry.DMSUndeclaredServicePrincipal
3217+
telemetry.DMSUndeclaredGroup
32143218
telemetry.DMSCompatAuto
32153219
telemetry.DMSCompatOnlySelfUndeclared
32163220
telemetry.DMSCompatNot
@@ -3221,14 +3225,6 @@ telemetry.DirectMigratedViaConfig
32213225
telemetry.DirectMigratedViaEnv
32223226
telemetry.EngineTerraformConfig
32233227
telemetry.EngineTerraformEnv
3224-
telemetry.DMSUndeclaredDeployingUserTrue
3225-
telemetry.DMSUndeclaredDeployingUserFalse
3226-
telemetry.DMSUndeclaredOtherUserTrue
3227-
telemetry.DMSUndeclaredOtherUserFalse
3228-
telemetry.DMSUndeclaredServicePrincipalTrue
3229-
telemetry.DMSUndeclaredServicePrincipalFalse
3230-
telemetry.DMSUndeclaredGroupTrue
3231-
telemetry.DMSUndeclaredGroupFalse
32323228
telemetry.SkipArtifactCleanupTrue
32333229
telemetry.SkipArtifactCleanupFalse
32343230
telemetry.HasServerlessComputeTrue

‎bundle/permissions/workspace_root.go‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -190,10 +190,10 @@ func recordPermissionMetrics(b *bundle.Bundle, stateFolderPerms *WorkspacePathPe
190190
b.Metrics.SetBoolValue(metrics.DMSUndeclaredOtherUser, otherUser)
191191
b.Metrics.SetBoolValue(metrics.DMSUndeclaredServicePrincipal, servicePrincipal)
192192
b.Metrics.SetBoolValue(metrics.DMSUndeclaredGroup, group)
193-
b.Telemetry.SetPaired(&b.Telemetry.DMSUndeclaredDeployingUserTrue, &b.Telemetry.DMSUndeclaredDeployingUserFalse, self)
194-
b.Telemetry.SetPaired(&b.Telemetry.DMSUndeclaredOtherUserTrue, &b.Telemetry.DMSUndeclaredOtherUserFalse, otherUser)
195-
b.Telemetry.SetPaired(&b.Telemetry.DMSUndeclaredServicePrincipalTrue, &b.Telemetry.DMSUndeclaredServicePrincipalFalse, servicePrincipal)
196-
b.Telemetry.SetPaired(&b.Telemetry.DMSUndeclaredGroupTrue, &b.Telemetry.DMSUndeclaredGroupFalse, group)
193+
b.Telemetry.DMSUndeclaredDeployingUser = self
194+
b.Telemetry.DMSUndeclaredOtherUser = otherUser
195+
b.Telemetry.DMSUndeclaredServicePrincipal = servicePrincipal
196+
b.Telemetry.DMSUndeclaredGroup = group
197197

198198
// Emit exactly one of the auto-migration verdict keys.
199199
verdict := autoMigrationVerdict(b, stateFolderPerms, undeclared)

‎bundle/telemetry.go‎

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,14 @@ type Telemetry struct {
3131
StatePathInOtherUserHome bool
3232
StatePathOther bool
3333

34+
// Independent booleans, but a false is not lost as a single bit: they are
35+
// always co-emitted with the one-hot DMSCompat verdict below, whose presence
36+
// signals the measurement ran, so a 0 here reads as "measured false".
37+
DMSUndeclaredDeployingUser bool
38+
DMSUndeclaredOtherUser bool
39+
DMSUndeclaredServicePrincipal bool
40+
DMSUndeclaredGroup bool
41+
3442
DMSCompatAuto bool
3543
DMSCompatOnlySelfUndeclared bool
3644
DMSCompatNot bool
@@ -46,15 +54,6 @@ type Telemetry struct {
4654

4755
// True/False pairs: exactly one is set when the flag is measured, neither
4856
// when it is not.
49-
DMSUndeclaredDeployingUserTrue bool
50-
DMSUndeclaredDeployingUserFalse bool
51-
DMSUndeclaredOtherUserTrue bool
52-
DMSUndeclaredOtherUserFalse bool
53-
DMSUndeclaredServicePrincipalTrue bool
54-
DMSUndeclaredServicePrincipalFalse bool
55-
DMSUndeclaredGroupTrue bool
56-
DMSUndeclaredGroupFalse bool
57-
5857
SkipArtifactCleanupTrue bool
5958
SkipArtifactCleanupFalse bool
6059

0 commit comments

Comments
 (0)