Before: Arbitrator EvaStöwe (A), Respondent: CAcert (R), Claimant: Marcus M (C), Case: a20131124.2

History Log

ASR1-6: assurer 1-6 ASE1-7: assuree 1-7

Following this there was some mail contact - mostly simple agreements. It would blow up this log without sense to report them singularly, they are collected in the table below. (Sometimes there were short responses from the side of A, too.) Communication that went deeper is reported in this log.

assurer

answer

AP granted

Comment

assuree

answer

ASR1

NDR 2014-04-02

-1

user stays over 100 AP

ASE1

ok 2014-04-12 (in person)

ASR1

NDR 2014-04-02

-1

user stays over 100 AP

ASE2

ASR2

ok 2014-04-02

-20

user stays over 100 AP

ASE1

ok 2014-04-12 (in person)

ASR3

ok 2014-04-14

-123

user stays over 100 AP

ASE3

ok 2014-04-03

ASR4

ok 2014-04-02

999

user stays over 100 AP

ASE4

ASR3

ok 2014-04-14

358

user will fall below 100 AP

ASE5

? 2014-04-02

ASR5

355

user stays over 100 AP

ASE6

ASR6

ok 2014-04-09

350

user stays over 100 AP

ASE7

ok 2014-04-02

The case was split at 2014-03-04.

Most of the case was merged with a20140126.1, while the handling of 8 assurances wich had awarded points outside every sensible range is handled in this case.

Original Dispute, Discovery (Private Part) (optional)

EOT Private Part

original Dispute

> Hi guys,
>
> a user informed me that he as a one assurance in his account which shows
>
> 100 Assurance Points and 250 Experience Points.
>
> By looking at the data more closely I come to the conclusion that the 
> assurer must have made a mistake and entered 350 instead of 35 points. 
> In the system these 350 points where split into 100 Assurance Points and
>
> 250 Experience Points.
>
> This assurance was made in 2007 when to my knowledge the super assurance
>
> programme was active.
>
> In the current software there is no chance to enter less than 0 and more
>
> than 35 Assurances points.
>
> My request is that arbitration and software should check how many 
> accounts have assurance with more than 35 or less then 0 points.
> in a second step the outcome should be analysed and to see if there is a
>
> need for a clean up and how this clean up should take place.
> My intention is not to remove the super assurances but to clean up cases
>
> as described above.
>
> Software should provide the needed SQL statements.

Discovery

Discussion

Which personal informations of the members will be disclosed to whom by this query?

Discovery II (after itermediate ruling I)

The results categorized per assurance method and points:

36

38

39

40

41

42

44

45

46

48

50

52

55

60

61

65

66

70

75

77

80

85

90

95

99

100

105

110

115

118

120

125

130

131

133

135

140

145

150

Sum

2

1

1

4

1

1

10

1

3

2

9

1

33

2

16

4

6

1

3

32

5

1

7

2

6

279

433

Administrative Increase

1

2

2

2

5

3

5

1

2

1

24

CT Magazine - Germany

1

1

Face to Face Meeting

2

3

1

80

3

3

5

9

2

16

369

1

32

594

1

121

1

108

49

1

73

93

162

50

1

305

30

20

197

1

888

13

178

3

1

13

30

1

1205

4665

Thawte Points Transfer

1

7

3

6

1

2

1

30

51

Trusted Third Parties

1

1

2

1

1

1

16

2

1

108

134

Unknown

29

9

4

4

61

11

5

2

311

436

Sum

2

6

1

84

3

6

11

9

9

21

421

1

33

611

1

127

1

117

50

1

110

95

246

54

1

325

32

25

253

1

895

15

185

3

1

15

38

1

1934

5744

considerations on consistency of results

research with the testserver

general ideas around assurances with negative values

updated sql-query with awarded?

   1 SELECT `u`.`id`, `u`.`email`, `u`.`fname`, `u`.`lname`, COUNT(`n`.`awarded`) AS `assurances`, `n`.`awarded`, `n`.`method`
   2 FROM `users` AS `u`
   3 INNER JOIN `notary` AS `n` ON `n`.`from` = `u`.`id`
   4 WHERE (`n`.`awarded` > '35'
   5 OR `n`.`awarded` < '0')
   6 AND `n`.`deleted` = 0
   7 GROUP BY `u`.`id`, `u`.`email`, `u`.`fname`, `u`.`lname`, `n`.`awarded`, `n`.`method`
   8 ORDER BY `n`.`awarded` DESC

Discovery III (after itermediate ruling II)

The results categorized per assurance method and points:

-123

-20

-1

36

37

38

39

40

41

42

44

45

46

50

52

55

60

61

64

65

66

70

75

80

85

90

96

98

100

110

115

118

120

125

126

130

131

135

140

150

350

355

358

999

Sum

2

1

1

3

6

1

2

33

14

6

1

2

211

283

Administrative Increase

1

1

Face to Face Meeting

1

1

2

9

1

2

16

1

9

2

22

1

1

4

1

9

1

10

3

34

1

2

38

9

5

1

19

2

1

25

3

4

5

165

1

1

1

1

414

Temporary Increase

2

1

8

1

1

1

1

2

1

18

Trusted Third Parties

1

2

9

12

Sum

1

1

2

9

1

2

2

17

1

11

5

2

2

36

1

1

6

1

1

9

1

12

3

67

1

16

1

1

46

10

9

1

19

2

1

25

3

4

5

386

1

1

1

1

728

There is another arbitration case (a20140126.1 that touches comparable issues and questions about assurances. As they have a ddifferent focus, they require the same kind of researche.

It is sensible to merge those cases at least for a while.

Both claimants agree to the process.

However there are 8 assurances that are clearly out of the sensible or allowed range regarding awarded points. Those are the ones with more awarded points than 150 (as the one that triggered this case) and those below 0 (which triggerd the second sql-query).

As there currently is no policy how to bring such assurances "in line" and it could take some time since a general process may be defined, they should be handled seperatley and independently in this case.

To not mix the handling of the 8 assurances with the rest, a merge in the other case should be done. This also decides the question if the (original) claimant of a20140126.1 should gain access to the personal data collected in this case. Which is currently answered with "no".

Discovery IV (after partial ruling - split and merge)

As the last sql-queries did not provide information on single assurances, and the assurances can only be handled when we know which are the right ones, another sql-query has to be executed. Support would not have enough information to look them up with only knowing the assurer.

The following sql-query was created, tested and approved by software team:

   1 SELECT `id` FROM `notary` WHERE `awarded` < 0 OR `awarded` > 150;

It provides all assurancs with awarded points below 0 or over 150.

Discovery V (after intermediate ruling III)

The assurer and assurees of the assurances with below 0 or above 150 awarded points were identified. They were asked if they would mind if the awarded points were changed were changed up to 0 or down to 35 points. (See table in the history log.) Non of them protested. The answers were mostly agreement. The only member who would be really affected by the change only answered once with something that could not be interpreted one way or the other by A or CM: "In germany ?" The member did not response to further questions in German or English.

Summary:

It looks like setting the negative assurances to 0 and the assurances above 150 awarded points down to 35 would be in line with the intention and confidence level of the assurer.

As the dispute requests to clean up those assurances so that they match AP this should be done.

Software team was asked to produce according sql-queries and came up with the following two queries:

   1 UPDATE cacert.notary SET awarded=0 WHERE awarded < 0;
   2 UPDATE cacert.notary SET awarded=35 WHERE awarded > 150;

This queries were tested on the testserver and got the ok from 3 software assessors.

Ruling

Intermediate Ruling I

Critical team should execute the following sql-query an send the results encrypted to C as a support member, A and CM.

   1 SELECT `u`.`id`, `u`.`email`, `u`.`fname`, `u`.`lname`, COUNT(`n`.`points`) AS `assurances`, `n`.`points`, `n`.`method`
   2 FROM `users` AS `u`
   3 INNER JOIN `notary` AS `n` ON `n`.`from` = `u`.`id`
   4 WHERE (`n`.`points` > '35'
   5 OR `n`.`points` < '0')
   6 AND `n`.`deleted` = 0
   7 GROUP BY `u`.`id`, `u`.`email`, `u`.`fname`, `u`.`lname`, `n`.`points`, `n`.`method`
   8 ORDER BY `u`.`id`, `n`.`points` DESC

Kiel, 2013-12-14

Intermediate Ruling II

Critical team should execute the following sql-query an send the results encrypted to C as a support member, A and CM.

   1 SELECT `u`.`id`, `u`.`email`, `u`.`fname`, `u`.`lname`, COUNT(`n`.`points`) AS `assurances`, `n`.`points`, `n`.`method`
   2 FROM `users` AS `u`
   3 INNER JOIN `notary` AS `n` ON `n`.`from` = `u`.`id`
   4 WHERE (`n`.`points` > '35'
   5 OR `n`.`points` < '0')
   6 AND `n`.`deleted` = 0
   7 GROUP BY `u`.`id`, `u`.`email`, `u`.`fname`, `u`.`lname`, `n`.`points`, `n`.`method`
   8 ORDER BY `u`.`id`, `n`.`points` DESC

Lübeck, 2013-12-21

Partial Ruling (Split and Merge)

The case should be split in two.

There were 8 assurances found in the database, with awareded points outside of all allowed or sensible bounds. They either have negative awarded points or more than 150 awarded points. Those assurances should be handled in this case.

The rest of this case should be merged with a20140126.1, since both cases are related at least in the nature of the queries and other investigations that are needed to handle them.

Cologne, 2014-03-04

Intermediate Ruling III (find assurer and assurees for 8 assurances)

I hereby come to the following intermediate ruling:

Critical team should execute the following sql-query:

   1 SELECT `id` FROM `notary` WHERE `awarded` < 0 OR `awarded` > 150;

Hamburg, 2014-03-05

Ruling

as the Arbitrator of a20131124.1 I hereby come to the following ruling:

Critical team should execute the following two SQL-Queries:

   1 UPDATE cacert.notary SET awarded=0 WHERE awarded < 0;
   2 UPDATE cacert.notary SET awarded=35 WHERE awarded > 150;

You probably have to tell "the DB frontend, that executing unsafe queries without keys or a LIMIT clause is intended". As this is what software team provided for execution in this case.

Critical team should afterwards check the result with the following query:

   1 SELECT `id` FROM `notary` WHERE `awarded` < 0 OR `awarded` > 150;

If this check gives results other than 0, they should be reported encrypted to A and CM of this case.

After all queries are executed the affected members should be informed by A and CM of this case that their assurances were changed.

The assurer of the assurances should be asked to note the change on their CAP forms, if still available.

The ordered change does not affect the right to ask for a revoke of those assurances for either side and should not be understood as a change in confidence level from either the assurer or CAcert. It is solely an organisational change to match the AP.

Cologne, 2014-06-09

Execution

Similiar Cases

a20140126.1

Request for Analysis of Data Consistency

a20131207.1

Request for Analysis of Data Consistency

a20100822.1

SQL Query

a20130521.1

Adhoc SQL query: Dispute to get some statisical data (U18)

a20090424.1

Ad hoc SQL query requested

a20090427.2

Ad hoc SQL query requested

a20090518.2

SQL: mail addresses of former assurers without the CATS passed

a20090525.1

Event officer request recurrent notification to assurers near the location of the following ATEs

a20090810.3

User requests a list of people who have more than 150 points

a20090902.1

request list of OA

a20091221.1

U18 query

a20101114.1

Addtl. adhoc interactive sql-query

a20110413.1

How many users using sample pwd

a20110221.1

PII and problematical sys settings on 1057 of 1074 deleted accounts cases still remains in database