TODO

Version 12 (Etienne Pallier, 08/10/2016 03:12 pm)

1 1 Paul Carensac
h1. TODO
2 1 Paul Carensac
3 1 Paul Carensac
List of tasks by application, and general tasks (organization, tools, ...)
4 1 Paul Carensac
5 1 Paul Carensac
{{>toc}}
6 1 Paul Carensac
7 1 Paul Carensac
---
8 1 Paul Carensac
9 1 Paul Carensac
h2. %{margin-left:0px; font-weight:bold; font-size:25px;  display:block; color:red;}General tasks%
10 1 Paul Carensac
11 3 Etienne Pallier
12 11 Etienne Pallier
* DJANGO : 
13 12 Etienne Pallier
14 11 Etienne Pallier
 * Upgrade to Django 1.10
15 11 Etienne Pallier
 * Remplacer le serveur web de "dev" (manage runserver) par un vrai serveur web pour la "prod" (Apache + serveur d'application Python, par exemple gunicorn)
16 11 Etienne Pallier
(cf https://projects.irap.omp.eu/projects/pyros/wiki/Project_Development#Serveur-Web)
17 4 Etienne Pallier
18 9 Etienne Pallier
* COMET installation : Include in the install_requirements.sh script (by using stable official version for Python 3 (when available) on Linux (and Mac) and Windows 10
19 3 Etienne Pallier
20 10 Etienne Pallier
* GIT : Create a "dev" branch (do not write anymore on the "master" branch)
21 7 Etienne Pallier
22 1 Paul Carensac
---
23 1 Paul Carensac
24 1 Paul Carensac
h2. %{margin-left:0px; font-weight:bold; font-size:25px;  display:block; color:red;}Applications tasks%
25 2 Paul Carensac
26 2 Paul Carensac
h3. Dashboard
27 2 Paul Carensac
28 2 Paul Carensac
 * Create the backoffice views as the modules are integrated in pyros
29 2 Paul Carensac
 * Think about a system of permissions
30 2 Paul Carensac
31 2 Paul Carensac
h3. Scheduler
32 2 Paul Carensac
33 2 Paul Carensac
 * views
34 2 Paul Carensac
35 2 Paul Carensac
  * Link the main page to the current schedule instead of the simulation page
36 2 Paul Carensac
  * Show user sequences in the schedules (with links)
37 2 Paul Carensac
  * Give accces to old schedules (day / days before / all end-night plannings / all plannings)
38 2 Paul Carensac
  * Give access to the refused sequences of a schedule, and the reasons of rejects
39 2 Paul Carensac
40 2 Paul Carensac
 * scheduler
41 2 Paul Carensac
42 2 Paul Carensac
  * Change the system to determine night start/end (they must be given in parameter, only if first_schedule is True)
43 2 Paul Carensac
  * Store the reasons of rejects (create a new attribute, in shs ?)
44 2 Paul Carensac
  * What is the 'flag' attribute ? (@AK)
45 2 Paul Carensac
  * Do not create the execute_sequence tasks if it's not the night (- 120 seconds)
46 2 Paul Carensac
  * Priority and quota computing
47 2 Paul Carensac
  * Quotas evolution
48 2 Paul Carensac
  * Blank space filling
49 2 Paul Carensac
  * At the end of a scheduling send, it to the IC ?
50 2 Paul Carensac
51 2 Paul Carensac
h3. Alert Manager
52 2 Paul Carensac
53 2 Paul Carensac
 * Web :
54 2 Paul Carensac
55 2 Paul Carensac
  * Print if there is an alert in progress in the main page
56 2 Paul Carensac
  * Link the alerts to their status and results
57 2 Paul Carensac
58 2 Paul Carensac
 * Connect to a real VOEvent broker
59 2 Paul Carensac
60 2 Paul Carensac
 * Determine the communication with FSC for strategy change
61 2 Paul Carensac
62 2 Paul Carensac
 * VOEvents :
63 2 Paul Carensac
64 2 Paul Carensac
  * Extract the good fields (see AK Q&A 07/01/2016)
65 2 Paul Carensac
  * Fill the request & alerts objects
66 2 Paul Carensac
  * Use strategies to build a request
67 2 Paul Carensac
  * Possibility to change the default strategy
68 2 Paul Carensac
  * Handle VOEvent updates
69 2 Paul Carensac
  * Be careful to not create 2 alerts for a same GRB, seen by 2 different satellites 
70 2 Paul Carensac
71 2 Paul Carensac
72 2 Paul Carensac
h3. Analyzer
73 2 Paul Carensac
74 2 Paul Carensac
 * Apply the calibrations in the right function
75 2 Paul Carensac
 * Apply the analyses only if it's a GRB
76 2 Paul Carensac
 * Implement the analyses
77 2 Paul Carensac
 * Send analyses to FSC
78 2 Paul Carensac
79 2 Paul Carensac
80 2 Paul Carensac
h3. Majordome
81 2 Paul Carensac
82 2 Paul Carensac
 * TaskManager
83 2 Paul Carensac
84 2 Paul Carensac
  * When a sequence is cancelled, give back the quota to the user
85 2 Paul Carensac
  * In case of alert, do not stop the ongoing plan, and make the instruments abort
86 2 Paul Carensac
87 2 Paul Carensac
 * execute_sequence
88 2 Paul Carensac
89 2 Paul Carensac
  * Add the PLC checks at start (to see if we do the slew)
90 2 Paul Carensac
  * Use the global telescope (instead of creating one here)
91 2 Paul Carensac
  * Give first_schedule as false when a scheduling is launched
92 2 Paul Carensac
  * Remove the default countdown (1, for tests)
93 2 Paul Carensac
94 2 Paul Carensac
 * system_pause
95 2 Paul Carensac
96 2 Paul Carensac
  * Abort the isntruments
97 2 Paul Carensac
  * Stop the execution tasks
98 2 Paul Carensac
99 2 Paul Carensac
 * system_restart
100 2 Paul Carensac
101 2 Paul Carensac
  * Start a scheduling
102 2 Paul Carensac
103 2 Paul Carensac
 * change_obs_conditions
104 2 Paul Carensac
105 2 Paul Carensac
  * Change sequences status (if  needed)
106 2 Paul Carensac
  * If some status changed, re-launch a scheduling
107 2 Paul Carensac
108 2 Paul Carensac
109 2 Paul Carensac
h3. Monitoring
110 2 Paul Carensac
111 2 Paul Carensac
 * views
112 2 Paul Carensac
113 2 Paul Carensac
  * Move the dashboard here
114 2 Paul Carensac
  * Print the instrument status
115 2 Paul Carensac
  * Print PLC informations (with the evolution)
116 2 Paul Carensac
  * In the dashboard screens, put scroll on each screen to see the old logs
117 2 Paul Carensac
118 2 Paul Carensac
 * Monitoring task
119 2 Paul Carensac
 
120 2 Paul Carensac
  * Uncomment the scheduling at the beginning
121 2 Paul Carensac
  * Implement night start/end computation
122 2 Paul Carensac
  * Initialize communication with the instruments
123 2 Paul Carensac
  * Configure intruments at start
124 2 Paul Carensac
  * Send software versions to the IC
125 2 Paul Carensac
  * Initialize connection with PLC
126 2 Paul Carensac
  * After the starting actions, loop to wait for the instruments configuration to be finished
127 2 Paul Carensac
  * Ask PLC for status
128 2 Paul Carensac
  * Ask filter wheel for status
129 2 Paul Carensac
  * Store the instruments & PLC status
130 2 Paul Carensac
  * Send all status to IC
131 2 Paul Carensac
  * Analyse PLC status (obs conditions, ...)
132 2 Paul Carensac
  * Create tasks of obs condition changes
133 2 Paul Carensac
134 2 Paul Carensac
135 2 Paul Carensac
h3. Observation Manager
136 2 Paul Carensac
137 2 Paul Carensac
 * execute_plan :
138 2 Paul Carensac
139 2 Paul Carensac
  * Use the cameras at a global level instead of creating them here (same for the filter wheels)
140 2 Paul Carensac
  * Uncomment the instruments_ready waiting function
141 2 Paul Carensac
  * Uncomment the observation_ending waiting function
142 2 Paul Carensac
  * Try to remove code duplication
143 2 Paul Carensac
  * Determine what needs to be done at the end of an observation
144 2 Paul Carensac
145 2 Paul Carensac
 * create_calibrations :
146 2 Paul Carensac
147 2 Paul Carensac
  * Make the calibration images
148 2 Paul Carensac
  * Generate super images
149 2 Paul Carensac
  * Send them to the IC
150 2 Paul Carensac
151 2 Paul Carensac
152 2 Paul Carensac
h3. Routine Manager
153 2 Paul Carensac
154 2 Paul Carensac
 * Web
155 2 Paul Carensac
156 2 Paul Carensac
  * Put the goods fields (for coordinates etc)
157 2 Paul Carensac
  * Only propose the objects that matches the conditions (ex: scientific programs of the user only)
158 2 Paul Carensac
  * Do all the needed checks
159 2 Paul Carensac
  * Add automatic computation of JD1/JD2
160 2 Paul Carensac
  * Add checkbox for JD / GD
161 2 Paul Carensac
  * Add options : copy my sequence on x days, and authorise report
162 2 Paul Carensac
  * Add ETC-IS simulation
163 2 Paul Carensac
  * Add help for new users (and for it the first time an account come on the page)
164 2 Paul Carensac
 
165 2 Paul Carensac
 * Do more checks at unserialization
166 2 Paul Carensac
167 2 Paul Carensac
 * views
168 2 Paul Carensac
169 2 Paul Carensac
  * When saving, do more checks on coordinates, jd1/2 etc
170 2 Paul Carensac
  * Uncomment filter for alerts removing
171 2 Paul Carensac
  * When submitting, use the monitoring to determine sequences status
172 2 Paul Carensac
  * When submitting, modify the first_schedule to False, when scheduling
173 2 Paul Carensac
  * When unsubmitting, uncomment the check for EXED and EXING removing
174 2 Paul Carensac
  * When unsubmitting, uncomment the scheduling and change the first_schedule to False
175 2 Paul Carensac
176 2 Paul Carensac
177 2 Paul Carensac
h3. User Manager
178 2 Paul Carensac
179 2 Paul Carensac
 * Password recovery
180 2 Paul Carensac
 * Profile page
181 2 Paul Carensac
 * User validation by administrator / commission
182 2 Paul Carensac
 * Handle permissions and access
183 2 Paul Carensac
184 2 Paul Carensac
185 2 Paul Carensac
h3. Common
186 2 Paul Carensac
187 2 Paul Carensac
 * Network communication for every instrument
188 2 Paul Carensac
 * Change the 'first_schedule' to False at the end of RequestBuilder.validate()