Bug #10640

Move relevant part of the assistant blueprints to the design documentation

Added by sajolida 2015-11-24 02:23:28 . Updated 2017-12-23 08:07:36 .

Status:
Resolved
Priority:
Normal
Assignee:
Category:
Installation
Target version:
Start date:
2015-11-24
Due date:
% Done:

100%

Feature Branch:
web/10640-assistant-design-doc
Type of work:
Contributors documentation
Blueprint:

Starter:
Affected tool:
Installation Assistant
Deliverable for:

Description

  • Archive relevant parts of our UX process

Subtasks


Related issues

Related to Tails - Bug #12328: Tails Verification: Migrate DAVE to Web Extensions and support Chrome Resolved 2016-05-27
Blocked by Tails - Feature #14815: Update design doc to DAVE 2 Resolved 2017-10-09

History

#1 Updated by sajolida 2015-11-24 02:24:07

  • Description updated

#2 Updated by sajolida 2015-11-27 04:39:42

  • Target version changed from 246 to Tails_2.0

#3 Updated by sajolida 2016-01-16 16:27:14

  • Target version changed from Tails_2.0 to Tails_2.2

#4 Updated by sajolida 2016-01-29 18:28:14

  • Target version changed from Tails_2.2 to Tails_2.3

#5 Updated by sajolida 2016-03-07 15:23:20

  • Target version deleted (Tails_2.3)

#6 Updated by sajolida 2016-04-01 10:30:03

  • blocks #8538 added

#7 Updated by sajolida 2016-05-10 09:06:36

  • Assignee changed from sajolida to tchou
  • QA Check set to Ready for QA
  • Feature Branch set to web/10640-assistant-design-doc

Here it is! Adding intrigeri as a watcher as I know he loves design documents. Both of you should tell me especially if:

  • You think I should create a proper design document about the assistant. I was not sure whether we had enough material outside of our working documents to be worth writing something. Maybe it would help if you could tell me which bits of our reasoning are worth archiving.
  • You think I should move more working documents (find blueprint/bootstrapping) to Redmine. We pretty much stopped adding stuff in blueprint but there are still some documens in there. I’m not sure that cleaning the working tree of /blueprint/bootstrapping is worth the effort.

#8 Updated by intrigeri 2016-05-12 04:03:40

  • Assignee changed from tchou to sajolida
  • QA Check changed from Ready for QA to Dev Needed

Great job!

> * You think I should create a proper design document about the assistant. I was not sure whether we had enough material outside of our working documents to be worth writing something. Maybe it would help if you could tell me which bits of our reasoning are worth archiving.

One key goal of maintaining design doc is to ease onboarding of new contributors, by providing both a high-level and low-level overview of how our stuff works. So for the IA, in my opinion it’s your call: write as much as you want, that will help others understand how this big and complex set of ikiwiki tricks works; that’s an investment that might save you some time (and the pressure of being the sole responsible person) in the future, but we can’t know if how it’ll turn out, so it’s kind of a bet :)

> * You think I should move more working documents (find blueprint/bootstrapping) to Redmine. We pretty much stopped adding stuff in blueprint but there are still some documens in there. I’m not sure that cleaning the working tree of /blueprint/bootstrapping is worth the effort.

I say don’t bother.

Also:

  • I’ve pushed a typo fix.
  • Maybe the intro of contribute/design/dave should make it clear that we’re going to solve the problem with a web browser extension? It’s only clarified much later.
  • Please point to the DAVE Git repo on its design doc, otherwise it’s hard to dive into the technical details and audit stuff.
  • “Tor Browser is supposed to block dangerous JavaScript”: well, no. It only blocks JS that may harm anonymity, which doesn’t include all JS that can exploit the browser (hence the higher security levels of the security slider).
  • “An important part of our audience want” → “wants”?

#9 Updated by sajolida 2016-11-04 11:18:02

  • Assignee changed from sajolida to tchou
  • QA Check changed from Dev Needed to Ready for QA

So I wrote a page about the assistant itself in /contribute/design/ia.

> * Maybe the intro of contribute/design/dave should make it clear that we’re going to solve the problem with a web browser extension? It’s only clarified much later.

Done in faa1a03.

> * Please point to the DAVE Git repo on its design doc, otherwise it’s hard to dive into the technical details and audit stuff.

Done in 3b09279.

> * “Tor Browser is supposed to block dangerous JavaScript”: well, no. It only blocks JS that may harm anonymity, which doesn’t include all JS that can exploit the browser (hence the higher security levels of the security slider).

Fixed in bf6eebd.

> * “An important part of our audience want” → “wants”?

Fixed in 2ce23bf.

#10 Updated by intrigeri 2016-11-04 12:17:51

> So I wrote a page about the assistant itself in /contribute/design/ia.

Maybe spell it out instead of using an acronym?

#11 Updated by sajolida 2016-11-05 19:29:49

Done in 7855525.

#12 Updated by Anonymous 2017-06-30 11:26:01

  • Assignee changed from tchou to sajolida

Maybe somebody else can review this?

#13 Updated by sajolida 2017-06-30 11:49:38

  • Assignee changed from sajolida to tchou

This is still part of a paid contrat that was on tchou’s plate. So I’m reassigning. I’ll get in touch again with him in July to check his plans regarding finishing that.

#14 Updated by sajolida 2017-10-09 11:16:44

#15 Updated by sajolida 2017-10-09 11:19:25

  • Assignee changed from tchou to intrigeri

Reassigning to intrigeri: this has been on tchou’s plate for almost one year without any progress.

Now that we’re so close to having a new download page (Bug #12328) maybe it’s worth waiting until I update the design documentation to it as well.

#16 Updated by sajolida 2017-10-09 11:19:44

  • related to Bug #12328: Tails Verification: Migrate DAVE to Web Extensions and support Chrome added

#17 Updated by intrigeri 2017-10-09 16:58:15

  • Assignee changed from intrigeri to sajolida
  • QA Check changed from Ready for QA to Info Needed

Right. sajolida, would you mind reassigning this to me once it’s actually ready to be reviewed? Thanks!

#18 Updated by sajolida 2017-10-16 15:09:15

Plus, “give [you] an upper bound so you can tune [your] nitpicking engine”.

#19 Updated by sajolida 2017-12-14 22:18:49

  • Assignee changed from sajolida to intrigeri
  • QA Check changed from Info Needed to Ready for QA

Regarding the upper bound, I really don’t know. The money will be taken on tchou’s budget so I guess it will help you tune your nitpicking engine to low.

#20 Updated by intrigeri 2017-12-15 08:23:52

  • Status changed from Confirmed to In Progress
  • Assignee changed from intrigeri to sajolida
  • % Done changed from 0 to 70
  • QA Check changed from Ready for QA to Dev Needed

This seems to be excellent work to me, congrats! I’ve pushed some small fixes on top.

There’s a small pile of remaining issues but all of them should be very easy & quick to fix for you:

  • the link to Feature #8838 seems wrong, that ticket seems unrelated to what the text is about
  • I think one of the future plans sections should point to Feature #11679
  • please use stable & reliable links instead of the auto-generated contribute/design/verification_extension#index4h2 and contribute/meetings/201404#index3h1
  • contribute/design/installation
  • It feels weird that contribute/design/installation and contribute/design/installation_assistant fully ignore each other; maybe they should link each other?
  • It would be good to give a link to the assistant source code. Generally any reference to a source code file (e.g. debian/usb-overview.html) would be a link using the tails_gitweb shortcut, but if you want to save time it’s OK to only mention where the namespace lives in Git and then you can keep writing things relative to this namespace, such as debian/usb-overview.html.
  • As you may know, visiting https://git-tails.immerda.ch/verification-extension in a web browser is broken and there’s little chances it gets fixed, so please instead give the git clone command that will work.
  • “our certificate could also probably be integrated in the Firefox preload list shipped with the browser (Feature #9027)” is confusing: in this context, “preload list” is generally used for the HSTS preload list (and we’re in there already i.e. Feature #8191) but Feature #9027 is about something else; I’ve fixed the title of Feature #9027 to avoid ambiguities and I suggest you do the same in the design doc… unless you prefer dropping these somewhat outdated plans, given at least HPKP is going away in Chrome. While you’re at it, you could add a note about the fact we are in the HSTS preload list for major browsers :)
  • I cannot parse the sentence that starts with “Only tabs from the same origin”.
  • “the proposed wireframe for the extension” makes it unclear what has actually been implemented.
  • “Bugs in the browser itself that could temper with the verification mechanism would need to be of the ”remote code execution vulnerability“”: probably missing a word, and it’s not obvious so perhaps justify a bit why we think so?
  • “sent to a JavaScript” ← missing word?
  • It’s not obvious where download.js lives, I suggest linking to it with [[!tails_gitweb]].

It feels wrong to link twice to the same place when we’re saying there are 4 sections:

  - The [[*overview*|installation_assistant#overview]] which summarizes graphically the scenario.
  - The [[*download*|installation_assistant#overview]] page for downloading and verifying the ISO image.

Copy’n’paste mistake?

#21 Updated by sajolida 2017-12-22 20:17:50

> This seems to be excellent work to me, congrats!

/me blushes :)

> I’ve pushed some small fixes on top.

All fine, thanks!

> * the link to Feature #8838 seems wrong, that ticket seems unrelated to what the text is about

Fixed in a295e409e6.

> * I think one of the future plans sections should point to Feature #11679

Fixed in 0077f9b1c2.

> * please use stable & reliable links instead of the auto-generated contribute/design/verification_extension#index4h2 and contribute/meetings/201404#index3h1

Fixed in 2d54a1b760.

> * It feels weird that contribute/design/installation and contribute/design/installation_assistant fully ignore each other; maybe they should link each other?

Fixed in c622f0d479.

> * It would be good to give a link to the assistant source code. Generally any reference to a source code file (e.g. debian/usb-overview.html) would be a link using the tails_gitweb shortcut, but if you want to save time it’s OK to only mention where the namespace lives in Git and then you can keep writing things relative to this namespace, such as debian/usb-overview.html.

Fixed in 4394d20829. I forgot this shortcut existed.

> * As you may know, visiting https://git-tails.immerda.ch/verification-extension in a web browser is broken and there’s little chances it gets fixed, so please instead give the git clone command that will work.

Fixed in fa0c784606.

> * “our certificate could also probably be integrated in the Firefox preload list shipped with the browser (Feature #9027)” is confusing: in this context, “preload list” is generally used for the HSTS preload list (and we’re in there already i.e. Feature #8191) but Feature #9027 is about something else; I’ve fixed the title of Feature #9027 to avoid ambiguities and I suggest you do the same in the design doc… unless you prefer dropping these somewhat outdated plans, given at least HPKP is going away in Chrome. While you’re at it, you could add a note about the fact we are in the HSTS preload list for major browsers :)

What about ccacc946c3?

> * I cannot parse the sentence that starts with “Only tabs from the same origin”.

Yeah… This section is a mess. I did 6db808709d but we should do more
work in Bug #15061.

> * “the proposed wireframe for the extension” makes it unclear what has actually been implemented.

6db808709d as well.

> * “Bugs in the browser itself that could temper with the verification mechanism would need to be of the ”remote code execution vulnerability“”: probably missing a word, and it’s not obvious so perhaps justify a bit why we think so?

6db808709d as well. The idea is that our security is fine against the
expected functioning of browsers but could be broken if the browser
itself is broken. But maybe that’s not worth mentioning…

> * “sent to a JavaScript” ← missing word?

cace8b5519

> * It’s not obvious where download.js lives, I suggest linking to it with [[!tails_gitweb]].

4394d20829 as well.

> It feels wrong to link twice to the same place when we’re saying there are 4 sections:
>
>

>   - The [[*overview*|installation_assistant#overview]] which summarizes graphically the scenario.
>   - The [[*download*|installation_assistant#overview]] page for downloading and verifying the ISO image.
> 


>
> Copy’n’paste mistake?

Yep. Fixed in 6a0b629023.

#22 Updated by sajolida 2017-12-22 20:18:22

  • Assignee changed from sajolida to intrigeri
  • QA Check changed from Dev Needed to Ready for QA

#23 Updated by intrigeri 2017-12-23 07:59:50

>> * I cannot parse the sentence that starts with “Only tabs from the same origin”.

> Yeah… This section is a mess. I did 6db808709d but we should do more
> work in Bug #15061.

ACK. Then I’ve added a note about the fact it’s outdated.

Merging! \o/

#24 Updated by intrigeri 2017-12-23 08:05:59

  • Status changed from In Progress to Resolved
  • % Done changed from 70 to 100

Applied in changeset commit:1c46e767d9b23857293c9b9b0a8fc1400865b687.

#25 Updated by intrigeri 2017-12-23 08:07:36

  • Assignee deleted (intrigeri)
  • QA Check changed from Ready for QA to Pass