Compare commits
63
Commits
193105482b
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e3f51ca46f | ||
|
|
90bc26f14f | ||
|
|
2d6440b141 | ||
|
|
ab4b4f8c7d | ||
|
|
44e4e827bb | ||
|
|
44b9efeb2a | ||
|
|
7345e3c47f | ||
|
|
e6c6860244 | ||
|
|
f9856ea92b | ||
|
|
91c9bd9730 | ||
|
|
03ed057733 | ||
|
|
7cdfcc07e2 | ||
|
|
94aab8f611 | ||
|
|
6468179654 | ||
|
|
c1e1cd8edd | ||
|
|
8a304759ef | ||
|
|
edfce9159a | ||
|
|
31c2fc64e7 | ||
|
|
210f6134d1 | ||
|
|
3e33070896 | ||
|
|
48f5f29182 | ||
|
|
55a9be9c4c | ||
|
|
648546b3ee | ||
|
|
9e1278a840 | ||
|
|
c58930aace | ||
|
|
1e87c0e572 | ||
|
|
1ea0f3eac2 | ||
|
|
207da48c92 | ||
|
|
9da8061869 | ||
|
|
a595c355eb | ||
|
|
70f79b7357 | ||
|
|
14236c3d3b | ||
|
|
f647808ee8 | ||
|
|
044c584ff3 | ||
|
|
cb36c70bdd | ||
|
|
8aa606806a | ||
|
|
79f051f695 | ||
|
|
18a9c3f70b | ||
|
|
5a253cdf57 | ||
|
|
13ee0820ea | ||
|
|
bef7475941 | ||
|
|
c4a01cddcb | ||
|
|
e579a4836e | ||
|
|
6ac1881947 | ||
|
|
e58ca17c07 | ||
|
|
6d511d9c17 | ||
|
|
fe4bfdd955 | ||
|
|
116f1772b0 | ||
|
|
aa038bb1ff | ||
|
|
ef4e063005 | ||
|
|
a6421f5cd1 | ||
|
|
e26f814e34 | ||
|
|
5e38bfb89a | ||
|
|
fb10813707 | ||
|
|
4ed0cb7e0d | ||
|
|
374e9e5919 | ||
|
|
142a778b84 | ||
|
|
1b2ec281db | ||
|
|
4577f285c6 | ||
|
|
28397c2602 | ||
|
|
2f39288102 | ||
|
|
6773adc470 | ||
|
|
cf6f8229e3 |
@@ -1,3 +1,10 @@
|
|||||||
**/.DS_Store
|
**/.DS_Store
|
||||||
/.obsidian/workspace.json
|
/.obsidian/workspace.json
|
||||||
/.DS_Store
|
/.DS_Store
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# Ignore Smart Environment folder
|
||||||
|
.smart-env.weekly-review-tmp/
|
||||||
|
.smart-env/
|
||||||
|
|||||||
Vendored
+3
-1
@@ -9,5 +9,7 @@
|
|||||||
"templater-obsidian",
|
"templater-obsidian",
|
||||||
"obsidian-git",
|
"obsidian-git",
|
||||||
"auto-gitkeep",
|
"auto-gitkeep",
|
||||||
"dataview"
|
"dataview",
|
||||||
|
"smart-connections",
|
||||||
|
"smart-lookup"
|
||||||
]
|
]
|
||||||
Vendored
+1
-1
@@ -17,6 +17,6 @@
|
|||||||
"repelStrength": 10,
|
"repelStrength": 10,
|
||||||
"linkStrength": 1,
|
"linkStrength": 1,
|
||||||
"linkDistance": 250,
|
"linkDistance": 250,
|
||||||
"scale": 0.4612742173312823,
|
"scale": 0.28728300058735007,
|
||||||
"close": true
|
"close": true
|
||||||
}
|
}
|
||||||
+4
-3
@@ -195,8 +195,7 @@
|
|||||||
"folderSortOrder": "alpha-asc",
|
"folderSortOrder": "alpha-asc",
|
||||||
"enableFolderNotes": true,
|
"enableFolderNotes": true,
|
||||||
"folderNoteType": "markdown",
|
"folderNoteType": "markdown",
|
||||||
"folderNoteName": "",
|
"folderNoteNamePattern": "{{folder}}",
|
||||||
"folderNoteNamePattern": "",
|
|
||||||
"folderNoteTemplate": null,
|
"folderNoteTemplate": null,
|
||||||
"enableFolderNoteLinks": true,
|
"enableFolderNoteLinks": true,
|
||||||
"hideFolderNoteInList": true,
|
"hideFolderNoteInList": true,
|
||||||
@@ -262,6 +261,7 @@
|
|||||||
"unfinishedTaskBackgroundColor": "#ef000050",
|
"unfinishedTaskBackgroundColor": "#ef000050",
|
||||||
"unfinishedTaskBackgroundColorDark": "#ef000050",
|
"unfinishedTaskBackgroundColorDark": "#ef000050",
|
||||||
"showFileIcons": true,
|
"showFileIcons": true,
|
||||||
|
"unfinishedTaskIcon": "compact",
|
||||||
"useFolderIconForFiles": false,
|
"useFolderIconForFiles": false,
|
||||||
"showFilenameMatchIcons": false,
|
"showFilenameMatchIcons": false,
|
||||||
"fileNameIconMap": {},
|
"fileNameIconMap": {},
|
||||||
@@ -323,6 +323,7 @@
|
|||||||
"calendarMonthHighlights": {},
|
"calendarMonthHighlights": {},
|
||||||
"calendarShowWeekNumber": false,
|
"calendarShowWeekNumber": false,
|
||||||
"calendarShowQuarter": false,
|
"calendarShowQuarter": false,
|
||||||
|
"calendarShowOutsideMonthDays": true,
|
||||||
"calendarShowYearCalendar": true,
|
"calendarShowYearCalendar": true,
|
||||||
"calendarLeftPlacement": "navigation",
|
"calendarLeftPlacement": "navigation",
|
||||||
"calendarWeeksToShow": 1,
|
"calendarWeeksToShow": 1,
|
||||||
@@ -560,7 +561,7 @@
|
|||||||
"#404040",
|
"#404040",
|
||||||
"#404040"
|
"#404040"
|
||||||
],
|
],
|
||||||
"lastShownVersion": "3.3.2",
|
"lastShownVersion": "3.3.4",
|
||||||
"rootFolderOrder": [],
|
"rootFolderOrder": [],
|
||||||
"rootTagOrder": [],
|
"rootTagOrder": [],
|
||||||
"rootPropertyOrder": []
|
"rootPropertyOrder": []
|
||||||
|
|||||||
+164
-160
File diff suppressed because one or more lines are too long
+1
-1
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"id": "notebook-navigator",
|
"id": "notebook-navigator",
|
||||||
"name": "Notebook Navigator",
|
"name": "Notebook Navigator",
|
||||||
"version": "3.3.2",
|
"version": "3.3.4",
|
||||||
"minAppVersion": "1.11.0",
|
"minAppVersion": "1.11.0",
|
||||||
"description": "Replace the default file explorer with a clean two-pane interface featuring folder tree, tag browsing, file previews, keyboard navigation, drag-and-drop, pinned notes, and customizable display options.",
|
"description": "Replace the default file explorer with a clean two-pane interface featuring folder tree, tag browsing, file previews, keyboard navigation, drag-and-drop, pinned notes, and customizable display options.",
|
||||||
"author": "Johan Sanneblad",
|
"author": "Johan Sanneblad",
|
||||||
|
|||||||
+130
-5
@@ -247,8 +247,8 @@ body {
|
|||||||
--nn-theme-file-preview-color: var(--nn-theme-foreground-muted);
|
--nn-theme-file-preview-color: var(--nn-theme-foreground-muted);
|
||||||
--nn-theme-file-preview-font-weight: 400;
|
--nn-theme-file-preview-font-weight: 400;
|
||||||
/* --nn-theme-file-task-color and --nn-theme-file-task-complete-color are
|
/* --nn-theme-file-task-color and --nn-theme-file-task-complete-color are
|
||||||
intentionally not declared here: task progress rules use var() fallbacks to detect whether
|
intentionally not declared here: task progress and replacement icon rules use var() fallbacks
|
||||||
a theme or Style Settings set them, so customized colors can persist on selected rows. */
|
to detect whether a theme or Style Settings set them, so customized colors can persist on selected rows. */
|
||||||
--nn-theme-file-task-font-weight: 400;
|
--nn-theme-file-task-font-weight: 400;
|
||||||
--nn-theme-file-task-complete-font-weight: 400;
|
--nn-theme-file-task-complete-font-weight: 400;
|
||||||
--nn-theme-file-date-color: var(--nn-theme-foreground-faded);
|
--nn-theme-file-date-color: var(--nn-theme-foreground-faded);
|
||||||
@@ -2975,6 +2975,8 @@ button.nn-navigation-calendar-year-month {
|
|||||||
z-index: 1;
|
z-index: 1;
|
||||||
display: block;
|
display: block;
|
||||||
max-width: 100%;
|
max-width: 100%;
|
||||||
|
/* Keeps Windows interface-font descenders inside the clipped label used for horizontal ellipsis. */
|
||||||
|
line-height: 1.2;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
text-overflow: ellipsis;
|
text-overflow: ellipsis;
|
||||||
}
|
}
|
||||||
@@ -4023,7 +4025,7 @@ button.nn-navigation-calendar-day {
|
|||||||
color: var(--nn-file-name-custom-color);
|
color: var(--nn-file-name-custom-color);
|
||||||
}
|
}
|
||||||
|
|
||||||
.nn-file-word-count-suffix {
|
.nn-file-name-suffix {
|
||||||
color: var(--nn-theme-file-word-count-color);
|
color: var(--nn-theme-file-word-count-color);
|
||||||
font-weight: var(--nn-theme-file-word-count-font-weight);
|
font-weight: var(--nn-theme-file-word-count-font-weight);
|
||||||
}
|
}
|
||||||
@@ -4112,6 +4114,16 @@ button.nn-navigation-calendar-day {
|
|||||||
color: var(--nn-theme-navitem-selected-icon-color);
|
color: var(--nn-theme-navitem-selected-icon-color);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* A configured task color remains stable across selection states. Without one, the replacement
|
||||||
|
follows the same normal and selected colors as the file icon it replaces. */
|
||||||
|
.nn-file-icon.nn-file-icon-unfinished-task[data-has-color='false'] {
|
||||||
|
color: var(--nn-theme-file-task-color, var(--nn-theme-navitem-icon-color));
|
||||||
|
}
|
||||||
|
|
||||||
|
.nn-file.nn-selected .nn-file-icon.nn-file-icon-unfinished-task[data-has-color='false'] {
|
||||||
|
color: var(--nn-theme-file-task-color, var(--nn-theme-navitem-selected-icon-color));
|
||||||
|
}
|
||||||
|
|
||||||
/* Quick actions panel - horizontal container for action icons */
|
/* Quick actions panel - horizontal container for action icons */
|
||||||
.nn-quick-actions-panel {
|
.nn-quick-actions-panel {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
@@ -4224,6 +4236,14 @@ button.nn-navigation-calendar-day {
|
|||||||
flex-shrink: 0;
|
flex-shrink: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Emoji and icon-font providers render the glyph on the container instead of adding an SVG,
|
||||||
|
so they need an explicit font size to match the task indicator box. */
|
||||||
|
.nn-file-task-progress-icon.nn-emoji-icon,
|
||||||
|
.nn-file-task-progress-icon.nn-iconfont {
|
||||||
|
font-size: calc(var(--icon-size) * 0.8);
|
||||||
|
line-height: calc(var(--icon-size) * 0.8);
|
||||||
|
}
|
||||||
|
|
||||||
/* The icon has no font weight, so its stroke width tracks the state weight variable instead:
|
/* The icon has no font weight, so its stroke width tracks the state weight variable instead:
|
||||||
weight 400 maps to the lucide default stroke of 2, weight 600 to 2.5, keeping the icon's
|
weight 400 maps to the lucide default stroke of 2, weight 600 to 2.5, keeping the icon's
|
||||||
visual boldness in sync with the count text. */
|
visual boldness in sync with the count text. */
|
||||||
@@ -4554,7 +4574,7 @@ button.nn-navigation-calendar-day {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
.nn-file.nn-selected .nn-file-word-count-suffix {
|
.nn-file.nn-selected .nn-file-name-suffix {
|
||||||
color: var(--nn-selected-file-word-count-color);
|
color: var(--nn-selected-file-word-count-color);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -5495,6 +5515,11 @@ body.nn-resizing {
|
|||||||
.nn-file.nn-compact.nn-context-menu-active:not(.nn-selected) .nn-file-content::after {
|
.nn-file.nn-compact.nn-context-menu-active:not(.nn-selected) .nn-file-content::after {
|
||||||
border-radius: min(14px, var(--nn-theme-navitem-border-radius));
|
border-radius: min(14px, var(--nn-theme-navitem-border-radius));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Appearance menu entries holding a per-selection custom value are marked in bold */
|
||||||
|
.nn-menu-title-custom {
|
||||||
|
font-weight: 600;
|
||||||
|
}
|
||||||
/* Source: src/styles/sections/state-hidden-items.css */
|
/* Source: src/styles/sections/state-hidden-items.css */
|
||||||
|
|
||||||
/* ========================================================================
|
/* ========================================================================
|
||||||
@@ -7428,6 +7453,99 @@ button.nn-youtube-button svg {
|
|||||||
text-align: right;
|
text-align: right;
|
||||||
font-variant-numeric: tabular-nums;
|
font-variant-numeric: tabular-nums;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Cards linking to the author's other plugins on the settings start page */
|
||||||
|
.setting-item.nn-plugin-cards {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* One column when the settings pane is narrow, because the description needs the width */
|
||||||
|
.nn-plugin-card-list {
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: repeat(auto-fit, minmax(16em, 1fr));
|
||||||
|
gap: var(--size-4-2);
|
||||||
|
margin-top: var(--size-4-2);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* A button so the whole card can be reached from the keyboard. The declarations before the
|
||||||
|
layout undo the button styling a theme applies. */
|
||||||
|
.nn-plugin-card {
|
||||||
|
height: auto;
|
||||||
|
padding: var(--size-4-3);
|
||||||
|
background-color: var(--background-secondary);
|
||||||
|
box-shadow: none;
|
||||||
|
text-align: start;
|
||||||
|
white-space: normal;
|
||||||
|
display: flex;
|
||||||
|
align-items: flex-start;
|
||||||
|
gap: var(--size-4-3);
|
||||||
|
width: 100%;
|
||||||
|
border: 1px solid var(--background-modifier-border);
|
||||||
|
border-radius: var(--radius-m);
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
.nn-plugin-card:hover {
|
||||||
|
border-color: var(--background-modifier-border-hover);
|
||||||
|
background-color: var(--background-modifier-hover);
|
||||||
|
}
|
||||||
|
|
||||||
|
.nn-plugin-card-icon {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
flex: 0 0 auto;
|
||||||
|
width: var(--size-4-8);
|
||||||
|
height: var(--size-4-8);
|
||||||
|
border-radius: var(--radius-m);
|
||||||
|
background-color: var(--background-primary);
|
||||||
|
color: var(--text-accent);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* min-width lets a long word wrap instead of stretching the card past its column */
|
||||||
|
.nn-plugin-card-details {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
gap: var(--size-2-1);
|
||||||
|
min-width: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.nn-plugin-card-name {
|
||||||
|
color: var(--text-normal);
|
||||||
|
font-size: var(--font-ui-small);
|
||||||
|
font-weight: var(--font-semibold);
|
||||||
|
line-height: 1.3;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* One line whatever the language, cut with an ellipsis, so every card is the same height */
|
||||||
|
.nn-plugin-card-description {
|
||||||
|
color: var(--text-muted);
|
||||||
|
font-size: var(--font-ui-smaller);
|
||||||
|
line-height: 1.4;
|
||||||
|
white-space: nowrap;
|
||||||
|
overflow: hidden;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Sits at the far edge, the way Obsidian marks a row that opens somewhere else. It keeps to
|
||||||
|
the middle of the card while the icon and the name line up at the top. */
|
||||||
|
.nn-plugin-card-arrow {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
align-self: center;
|
||||||
|
flex: 0 0 auto;
|
||||||
|
margin-inline-start: auto;
|
||||||
|
color: var(--text-faint);
|
||||||
|
}
|
||||||
|
|
||||||
|
.nn-plugin-card-arrow .svg-icon {
|
||||||
|
width: var(--icon-s);
|
||||||
|
height: var(--icon-s);
|
||||||
|
}
|
||||||
|
|
||||||
|
.nn-plugin-card:hover .nn-plugin-card-arrow {
|
||||||
|
color: var(--text-muted);
|
||||||
|
}
|
||||||
/* Source: src/styles/sections/settings-sponsor-button.css */
|
/* Source: src/styles/sections/settings-sponsor-button.css */
|
||||||
|
|
||||||
/* ========================================================================
|
/* ========================================================================
|
||||||
@@ -8906,6 +9024,13 @@ body.is-phone .notebook-navigator-android .nn-split-container {
|
|||||||
font-size: calc(var(--nn-file-icon-size-mobile, var(--nn-file-icon-size)) * var(--nn-android-font-scale-reciprocal, 1));
|
font-size: calc(var(--nn-file-icon-size-mobile, var(--nn-file-icon-size)) * var(--nn-android-font-scale-reciprocal, 1));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Task indicators are smaller than file icons, so preserve their 80% size while compensating
|
||||||
|
for Android textZoom. Without this override, the general icon rule above enlarges them. */
|
||||||
|
.notebook-navigator-android .nn-mobile .nn-file-task-progress-icon.nn-emoji-icon,
|
||||||
|
.notebook-navigator-android .nn-mobile .nn-file-task-progress-icon.nn-iconfont {
|
||||||
|
font-size: calc(var(--icon-size) * 0.8 * var(--nn-android-font-scale-reciprocal, 1));
|
||||||
|
}
|
||||||
|
|
||||||
/* Clamp height compensation - Android doesn't scale max-height, so match the compensated line-height after textZoom applies. */
|
/* Clamp height compensation - Android doesn't scale max-height, so match the compensated line-height after textZoom applies. */
|
||||||
.notebook-navigator-android .nn-file-name {
|
.notebook-navigator-android .nn-file-name {
|
||||||
max-height: calc(var(--nn-file-title-line-height) * var(--filename-rows, 1) * var(--nn-android-font-scale, 1));
|
max-height: calc(var(--nn-file-title-line-height) * var(--filename-rows, 1) * var(--nn-android-font-scale, 1));
|
||||||
@@ -9713,7 +9838,7 @@ settings:
|
|||||||
-
|
-
|
||||||
id: nn-theme-file-task-color
|
id: nn-theme-file-task-color
|
||||||
title: File task color
|
title: File task color
|
||||||
description: Icon, bar, and count color for notes with unfinished tasks.
|
description: Color for the task display and replacement file icon in notes with unfinished tasks.
|
||||||
type: variable-themed-color
|
type: variable-themed-color
|
||||||
format: hex
|
format: hex
|
||||||
default-light: '#'
|
default-light: '#'
|
||||||
|
|||||||
-512
@@ -1,512 +0,0 @@
|
|||||||
/*
|
|
||||||
THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
|
|
||||||
if you want to view the source, please visit the github repository of this plugin
|
|
||||||
*/
|
|
||||||
|
|
||||||
var __create = Object.create;
|
|
||||||
var __defProp = Object.defineProperty;
|
|
||||||
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
||||||
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
||||||
var __getProtoOf = Object.getPrototypeOf;
|
|
||||||
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
||||||
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
||||||
var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
|
|
||||||
var __export = (target, all) => {
|
|
||||||
__markAsModule(target);
|
|
||||||
for (var name in all)
|
|
||||||
__defProp(target, name, { get: all[name], enumerable: true });
|
|
||||||
};
|
|
||||||
var __reExport = (target, module2, desc) => {
|
|
||||||
if (module2 && typeof module2 === "object" || typeof module2 === "function") {
|
|
||||||
for (let key of __getOwnPropNames(module2))
|
|
||||||
if (!__hasOwnProp.call(target, key) && key !== "default")
|
|
||||||
__defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
|
|
||||||
}
|
|
||||||
return target;
|
|
||||||
};
|
|
||||||
var __toModule = (module2) => {
|
|
||||||
return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", module2 && module2.__esModule && "default" in module2 ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
|
|
||||||
};
|
|
||||||
var __publicField = (obj, key, value) => {
|
|
||||||
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
||||||
return value;
|
|
||||||
};
|
|
||||||
|
|
||||||
// src/main.ts
|
|
||||||
__export(exports, {
|
|
||||||
default: () => SettingsSearch
|
|
||||||
});
|
|
||||||
var import_obsidian = __toModule(require("obsidian"));
|
|
||||||
|
|
||||||
// node_modules/monkey-around/mjs/index.js
|
|
||||||
function around(obj, factories) {
|
|
||||||
const removers = Object.keys(factories).map((key) => around1(obj, key, factories[key]));
|
|
||||||
return removers.length === 1 ? removers[0] : function() {
|
|
||||||
removers.forEach((r) => r());
|
|
||||||
};
|
|
||||||
}
|
|
||||||
function around1(obj, method, createWrapper) {
|
|
||||||
const original = obj[method], hadOwn = obj.hasOwnProperty(method);
|
|
||||||
let current = createWrapper(original);
|
|
||||||
if (original)
|
|
||||||
Object.setPrototypeOf(current, original);
|
|
||||||
Object.setPrototypeOf(wrapper, current);
|
|
||||||
obj[method] = wrapper;
|
|
||||||
return remove;
|
|
||||||
function wrapper(...args) {
|
|
||||||
if (current === original && obj[method] === wrapper)
|
|
||||||
remove();
|
|
||||||
return current.apply(this, args);
|
|
||||||
}
|
|
||||||
function remove() {
|
|
||||||
if (obj[method] === wrapper) {
|
|
||||||
if (hadOwn)
|
|
||||||
obj[method] = original;
|
|
||||||
else
|
|
||||||
delete obj[method];
|
|
||||||
}
|
|
||||||
if (current === original)
|
|
||||||
return;
|
|
||||||
current = original;
|
|
||||||
Object.setPrototypeOf(wrapper, original || Function);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// src/main.ts
|
|
||||||
var SettingsSearch = class extends import_obsidian.Plugin {
|
|
||||||
constructor() {
|
|
||||||
super(...arguments);
|
|
||||||
__publicField(this, "settingsSearchEl", createDiv("settings-search-container vertical-tab-header-group"));
|
|
||||||
__publicField(this, "settingsResultsContainerEl", createDiv("settings-search-results-container vertical-tab-content"));
|
|
||||||
__publicField(this, "settingsNavItemContainer", this.settingsSearchEl.createDiv("vertical-tab-header-group-items").createDiv("vertical-tab-nav-item settings-search-input"));
|
|
||||||
__publicField(this, "settingsResultsEl");
|
|
||||||
__publicField(this, "search");
|
|
||||||
__publicField(this, "locale");
|
|
||||||
__publicField(this, "resources", []);
|
|
||||||
__publicField(this, "results", []);
|
|
||||||
__publicField(this, "loaded", false);
|
|
||||||
__publicField(this, "tabIndex", 0);
|
|
||||||
__publicField(this, "pluginTabIndex", 0);
|
|
||||||
__publicField(this, "seen", []);
|
|
||||||
__publicField(this, "settingCache", new Map());
|
|
||||||
__publicField(this, "searchAppended", false);
|
|
||||||
__publicField(this, "activeIndex", -1);
|
|
||||||
__publicField(this, "activeSetting");
|
|
||||||
__publicField(this, "scope", new import_obsidian.Scope(this.app.scope));
|
|
||||||
__publicField(this, "mobileContainers", []);
|
|
||||||
}
|
|
||||||
async onload() {
|
|
||||||
(window["SettingsSearch"] = {
|
|
||||||
addResources: this.addResources.bind(this),
|
|
||||||
removeResources: this.removeResources.bind(this),
|
|
||||||
removeTabResources: this.removeTabResources.bind(this)
|
|
||||||
}) && this.register(() => delete window["SettingsSearch"]);
|
|
||||||
this.app.workspace.onLayoutReady(async () => {
|
|
||||||
this.settingsResultsContainerEl.createEl("h3", {
|
|
||||||
text: "Settings Search Results"
|
|
||||||
});
|
|
||||||
this.settingsResultsEl = this.settingsResultsContainerEl.createDiv("settings-search-results");
|
|
||||||
this.buildScope();
|
|
||||||
this.buildSearch();
|
|
||||||
this.buildResources();
|
|
||||||
this.buildPluginResources();
|
|
||||||
this.patchSettings();
|
|
||||||
this.loaded = true;
|
|
||||||
this.app.workspace.trigger("settings-search-loaded");
|
|
||||||
});
|
|
||||||
}
|
|
||||||
buildResources() {
|
|
||||||
const tab = this.app.setting.settingTabs[this.tabIndex];
|
|
||||||
if (tab && tab.id !== void 0 && !this.seen.includes(tab.id)) {
|
|
||||||
this.getTabResources(tab);
|
|
||||||
this.tabIndex++;
|
|
||||||
setTimeout(() => this.buildResources());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
buildPluginResources() {
|
|
||||||
const tab = this.app.setting.pluginTabs[this.pluginTabIndex];
|
|
||||||
if (tab) {
|
|
||||||
this.getTabResources(tab);
|
|
||||||
this.pluginTabIndex++;
|
|
||||||
setTimeout(() => this.buildPluginResources());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
get manifests() {
|
|
||||||
return Object.values(this.app.plugins.manifests);
|
|
||||||
}
|
|
||||||
addResourceToCache(resource) {
|
|
||||||
if (!resource || !resource.text || !resource.name || !resource.tab) {
|
|
||||||
return new Error("A valid resource must be provided.");
|
|
||||||
}
|
|
||||||
let name;
|
|
||||||
if (resource.external) {
|
|
||||||
name = createFragment((el) => {
|
|
||||||
(0, import_obsidian.setIcon)(el.createSpan({
|
|
||||||
attr: {
|
|
||||||
"aria-label": "This setting was added by another plugin."
|
|
||||||
}
|
|
||||||
}), "info");
|
|
||||||
el.createSpan({ text: resource.text });
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
name = resource.text;
|
|
||||||
}
|
|
||||||
const setting = new import_obsidian.Setting(createDiv()).setName(name).setDesc(createFragment((e) => e.createDiv().innerHTML = resource.desc ?? ""));
|
|
||||||
if (resource.external) {
|
|
||||||
setting.settingEl.addClass("set-externally");
|
|
||||||
}
|
|
||||||
if (resource.tab == "community-plugins") {
|
|
||||||
let plugin = this.manifests.find((p) => p.name == resource.text);
|
|
||||||
if (plugin && this.app.plugins.getPlugin(plugin.id)?._loaded && this.app.setting.pluginTabs.find((t) => t.id == plugin.id)) {
|
|
||||||
setting.addExtraButton((b) => {
|
|
||||||
b.setTooltip(`Open ${resource.text} Settings`).onClick(() => {
|
|
||||||
this.app.setting.openTabById(plugin.id);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (resource.tab == "plugins") {
|
|
||||||
const plugins = Object.values(this.app.internalPlugins.plugins);
|
|
||||||
const plugin = plugins.find((p) => p._loaded && p.instance.name == resource.text);
|
|
||||||
if (plugin && this.app.setting.pluginTabs.find((t) => t.id == plugin.instance.id)) {
|
|
||||||
setting.addExtraButton((b) => {
|
|
||||||
b.setTooltip(`Open ${resource.text} Settings`).onClick(() => {
|
|
||||||
this.app.setting.openTabById(plugin.instance.id);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
setting.addExtraButton((b) => {
|
|
||||||
b.setIcon("forward-arrow").onClick(() => {
|
|
||||||
this.showResult(resource);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
this.settingCache.set(resource, setting);
|
|
||||||
}
|
|
||||||
getResourceFromCache(resource) {
|
|
||||||
if (!this.settingCache.has(resource)) {
|
|
||||||
this.addResourceToCache(resource);
|
|
||||||
}
|
|
||||||
return this.settingCache.get(resource);
|
|
||||||
}
|
|
||||||
removeResourcesFromCache(resources) {
|
|
||||||
for (const resource of resources) {
|
|
||||||
this.settingCache.delete(resource);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
addResources(...resources) {
|
|
||||||
for (const resource of resources) {
|
|
||||||
resource.external = true;
|
|
||||||
if (this.resources.find((k) => this.equivalent(resource, k)))
|
|
||||||
continue;
|
|
||||||
this.resources.push(resource);
|
|
||||||
this.addResourceToCache(resource);
|
|
||||||
}
|
|
||||||
return () => this.removeResources(...resources);
|
|
||||||
}
|
|
||||||
equivalent(resource1, resource2) {
|
|
||||||
return resource1.name == resource2.name && resource1.tab == resource2.tab && resource1.text == resource2.text && resource1.desc == resource2.desc && resource1.external == resource2.external;
|
|
||||||
}
|
|
||||||
removeResources(...resources) {
|
|
||||||
const removing = [];
|
|
||||||
const keys = [...this.settingCache.keys()];
|
|
||||||
for (const resource of resources) {
|
|
||||||
if (!resource || !resource.text || !resource.name || !resource.tab) {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
resource.external = true;
|
|
||||||
this.resources = this.resources.filter((r) => !this.equivalent(resource, r));
|
|
||||||
removing.push(...keys.filter((k) => k == resource || this.equivalent(resource, k)));
|
|
||||||
}
|
|
||||||
this.removeResourcesFromCache(removing);
|
|
||||||
}
|
|
||||||
removeTabResources(tab) {
|
|
||||||
const removing = this.resources.filter((t) => t.tab == tab);
|
|
||||||
this.resources = this.resources.filter((t) => t.tab != tab);
|
|
||||||
this.removeResourcesFromCache(removing);
|
|
||||||
}
|
|
||||||
async getTabResources(tab) {
|
|
||||||
await tab.display();
|
|
||||||
const settings = tab.containerEl.querySelectorAll(".setting-item:not(.setting-item-header)");
|
|
||||||
for (const el of Array.from(settings)) {
|
|
||||||
const text = el.querySelector(".setting-item-name")?.textContent;
|
|
||||||
if (!text)
|
|
||||||
continue;
|
|
||||||
const desc = el.querySelector(".setting-item-description")?.innerHTML ?? "";
|
|
||||||
const resource = {
|
|
||||||
tab: tab.id,
|
|
||||||
name: tab.name,
|
|
||||||
text,
|
|
||||||
desc
|
|
||||||
};
|
|
||||||
this.resources.push(resource);
|
|
||||||
this.addResourceToCache(resource);
|
|
||||||
}
|
|
||||||
if (this.app.setting.activeTab?.id == tab.id)
|
|
||||||
return;
|
|
||||||
this.seen.push(tab.id);
|
|
||||||
tab.containerEl.detach();
|
|
||||||
tab.hide();
|
|
||||||
}
|
|
||||||
patchSettings() {
|
|
||||||
const self = this;
|
|
||||||
this.register(around(this.app.setting, {
|
|
||||||
onOpen: function(next) {
|
|
||||||
return function() {
|
|
||||||
next.apply(this);
|
|
||||||
if (!import_obsidian.Platform.isMobile)
|
|
||||||
self.search.inputEl.focus();
|
|
||||||
return next;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
}));
|
|
||||||
this.register(around(this.app.setting, {
|
|
||||||
addSettingTab: function(next) {
|
|
||||||
return function(tab) {
|
|
||||||
if (tab && tab.id !== void 0 && !self.seen.includes(tab.id)) {
|
|
||||||
self.getTabResources(tab);
|
|
||||||
}
|
|
||||||
return next.call(this, tab);
|
|
||||||
};
|
|
||||||
}
|
|
||||||
}));
|
|
||||||
this.register(around(this.app.setting, {
|
|
||||||
removeSettingTab: function(next) {
|
|
||||||
return function(tab) {
|
|
||||||
if (this.isPluginSettingTab(tab)) {
|
|
||||||
self.removeTabResources(tab.id);
|
|
||||||
}
|
|
||||||
return next.call(this, tab);
|
|
||||||
};
|
|
||||||
}
|
|
||||||
}));
|
|
||||||
this.register(around(this.app.setting, {
|
|
||||||
openTab: function(next) {
|
|
||||||
return function(tab) {
|
|
||||||
self.searchAppended = false;
|
|
||||||
self.app.keymap.popScope(self.scope);
|
|
||||||
return next.call(this, tab);
|
|
||||||
};
|
|
||||||
},
|
|
||||||
openTabById: function(next) {
|
|
||||||
return function(tab) {
|
|
||||||
self.searchAppended = false;
|
|
||||||
self.app.keymap.popScope(self.scope);
|
|
||||||
return next.call(this, tab);
|
|
||||||
};
|
|
||||||
},
|
|
||||||
onClose: function(next) {
|
|
||||||
return function() {
|
|
||||||
if (import_obsidian.Platform.isMobile) {
|
|
||||||
self.detach();
|
|
||||||
}
|
|
||||||
return next.call(this);
|
|
||||||
};
|
|
||||||
}
|
|
||||||
}));
|
|
||||||
}
|
|
||||||
buildSearch() {
|
|
||||||
const tempSetting = new import_obsidian.Setting(createDiv()).addSearch((s) => {
|
|
||||||
this.search = s;
|
|
||||||
});
|
|
||||||
this.settingsNavItemContainer.append(tempSetting.controlEl);
|
|
||||||
tempSetting.settingEl.detach();
|
|
||||||
this.search.onChange((v) => {
|
|
||||||
this.onChange(v);
|
|
||||||
});
|
|
||||||
this.search.setPlaceholder("Search settings...");
|
|
||||||
this.app.setting.tabHeadersEl.prepend(this.settingsSearchEl);
|
|
||||||
}
|
|
||||||
buildScope() {
|
|
||||||
this.scope.register(["Ctrl"], "N", () => {
|
|
||||||
if (this.activeSetting) {
|
|
||||||
this.activeSetting.settingEl.removeClass("active");
|
|
||||||
}
|
|
||||||
this.activeIndex = ((this.activeIndex + 1) % this.results.length + this.results.length) % this.results.length;
|
|
||||||
this.centerActiveSetting();
|
|
||||||
});
|
|
||||||
this.scope.register([], "ArrowDown", () => {
|
|
||||||
if (this.activeSetting) {
|
|
||||||
this.activeSetting.settingEl.removeClass("active");
|
|
||||||
}
|
|
||||||
this.activeIndex = ((this.activeIndex + 1) % this.results.length + this.results.length) % this.results.length;
|
|
||||||
this.centerActiveSetting();
|
|
||||||
});
|
|
||||||
this.scope.register(["Ctrl"], "P", () => {
|
|
||||||
if (this.activeSetting) {
|
|
||||||
this.activeSetting.settingEl.removeClass("active");
|
|
||||||
}
|
|
||||||
this.activeIndex = ((this.activeIndex - 1) % this.results.length + this.results.length) % this.results.length;
|
|
||||||
this.centerActiveSetting();
|
|
||||||
});
|
|
||||||
this.scope.register([], "ArrowUp", () => {
|
|
||||||
if (this.activeSetting) {
|
|
||||||
this.activeSetting.settingEl.removeClass("active");
|
|
||||||
}
|
|
||||||
this.activeIndex = ((this.activeIndex - 1) % this.results.length + this.results.length) % this.results.length;
|
|
||||||
this.centerActiveSetting();
|
|
||||||
});
|
|
||||||
this.scope.register([], "Enter", () => {
|
|
||||||
if (this.activeSetting) {
|
|
||||||
this.showResult(this.results[this.activeIndex]);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
centerActiveSetting() {
|
|
||||||
const result = this.results[this.activeIndex];
|
|
||||||
this.activeSetting = this.getResourceFromCache(result);
|
|
||||||
this.activeSetting.settingEl.addClass("active");
|
|
||||||
this.activeSetting.settingEl.scrollIntoView({
|
|
||||||
behavior: "auto",
|
|
||||||
block: "nearest"
|
|
||||||
});
|
|
||||||
}
|
|
||||||
detachFromMobile() {
|
|
||||||
if (import_obsidian.Platform.isMobile) {
|
|
||||||
this.settingsResultsContainerEl.detach();
|
|
||||||
for (const header of this.mobileContainers) {
|
|
||||||
this.app.setting.tabHeadersEl.append(header);
|
|
||||||
}
|
|
||||||
this.search.setValue("");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
detachFromDesktop() {
|
|
||||||
if (import_obsidian.Platform.isDesktop) {
|
|
||||||
this.app.setting.openTabById(this.app.setting.lastTabId);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
detach() {
|
|
||||||
this.detachFromDesktop();
|
|
||||||
this.detachFromMobile();
|
|
||||||
this.searchAppended = false;
|
|
||||||
}
|
|
||||||
onChange(v) {
|
|
||||||
if (!v) {
|
|
||||||
this.detach();
|
|
||||||
this.app.keymap.popScope(this.scope);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (!this.searchAppended) {
|
|
||||||
this.activeIndex = -1;
|
|
||||||
this.app.keymap.popScope(this.scope);
|
|
||||||
this.app.keymap.pushScope(this.scope);
|
|
||||||
if (this.activeSetting) {
|
|
||||||
this.activeSetting.settingEl.removeClass("active");
|
|
||||||
this.activeSetting = null;
|
|
||||||
}
|
|
||||||
if (!import_obsidian.Platform.isMobile) {
|
|
||||||
this.app.setting.activeTab.navEl.removeClass("is-active");
|
|
||||||
this.app.setting.tabContentContainer.empty();
|
|
||||||
this.app.setting.tabContentContainer.append(this.settingsResultsContainerEl);
|
|
||||||
} else {
|
|
||||||
const headers = this.app.setting.tabHeadersEl.querySelectorAll(".vertical-tab-header-group:not(.settings-search-container)");
|
|
||||||
for (const header of Array.from(headers)) {
|
|
||||||
this.mobileContainers.push(header);
|
|
||||||
header.detach();
|
|
||||||
}
|
|
||||||
this.app.setting.tabHeadersEl.append(this.settingsResultsContainerEl);
|
|
||||||
}
|
|
||||||
this.searchAppended = true;
|
|
||||||
}
|
|
||||||
this.appendResults(this.performFuzzySearch(v));
|
|
||||||
}
|
|
||||||
getMatchText(text, result) {
|
|
||||||
const matchElements = {};
|
|
||||||
return createFragment((content) => {
|
|
||||||
for (let i = 0; i < text.length; i++) {
|
|
||||||
let match = result.matches.find((m) => m[0] === i);
|
|
||||||
if (match) {
|
|
||||||
const index = result.matches.indexOf(match);
|
|
||||||
if (!matchElements[index]) {
|
|
||||||
matchElements[index] = createSpan("suggestion-highlight");
|
|
||||||
}
|
|
||||||
let element = matchElements[index];
|
|
||||||
content.appendChild(element);
|
|
||||||
element.appendText(text.substring(match[0], match[1]));
|
|
||||||
i += match[1] - match[0] - 1;
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
content.appendText(text[i]);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
appendResults(results) {
|
|
||||||
this.settingsResultsEl.empty();
|
|
||||||
if (results.length) {
|
|
||||||
const headers = {};
|
|
||||||
for (const resource of results) {
|
|
||||||
if (!(resource.tab in headers)) {
|
|
||||||
headers[resource.tab] = this.settingsResultsEl.createDiv();
|
|
||||||
new import_obsidian.Setting(headers[resource.tab]).setHeading().setName(resource.name);
|
|
||||||
}
|
|
||||||
const setting = this.getResourceFromCache(resource);
|
|
||||||
headers[resource.tab].append(setting.settingEl);
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
this.settingsResultsEl.setText("No results found :(");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
showResult(result) {
|
|
||||||
this.search.setValue("");
|
|
||||||
const tab = this.app.setting.settingTabs.find((t) => t.id == result.tab) ?? this.app.setting.pluginTabs.find((t) => t.id == result.tab);
|
|
||||||
if (!tab) {
|
|
||||||
new import_obsidian.Notice("There was an issue opening the setting tab.");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
this.app.setting.openTabById(tab.id);
|
|
||||||
this.app.keymap.popScope(this.scope);
|
|
||||||
this.detach();
|
|
||||||
try {
|
|
||||||
const names = tab.containerEl.querySelectorAll(".setting-item-name");
|
|
||||||
const el = Array.from(names).find((n) => n.textContent == result.text);
|
|
||||||
if (!el)
|
|
||||||
return;
|
|
||||||
const setting = el.closest(".setting-item");
|
|
||||||
if (!setting)
|
|
||||||
return;
|
|
||||||
if (tab.id == "obsidian-style-settings") {
|
|
||||||
let collapsed = setting.closest(".style-settings-container");
|
|
||||||
let previous = collapsed?.previousElementSibling;
|
|
||||||
while (previous != null && previous.hasClass("is-collapsed") && previous.hasClass("style-settings-heading")) {
|
|
||||||
previous.removeClass("is-collapsed");
|
|
||||||
collapsed = collapsed.parentElement?.closest(".style-settings-container");
|
|
||||||
previous = collapsed?.previousElementSibling;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
let details = setting.closest("details");
|
|
||||||
while (details) {
|
|
||||||
details.setAttr("open", "open");
|
|
||||||
details = details.parentElement?.closest("details");
|
|
||||||
}
|
|
||||||
setting.scrollIntoView(true);
|
|
||||||
setting.addClass("is-flashing");
|
|
||||||
window.setTimeout(() => setting.removeClass("is-flashing"), 3e3);
|
|
||||||
} catch (e) {
|
|
||||||
console.error(e);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
performFuzzySearch(input) {
|
|
||||||
const results = [], hotkeys = [];
|
|
||||||
for (const resource of this.resources) {
|
|
||||||
let result = (0, import_obsidian.prepareSimpleSearch)(input)(resource.text) ?? (0, import_obsidian.prepareSimpleSearch)(input)(resource.desc);
|
|
||||||
if (result) {
|
|
||||||
if (resource.tab == "hotkeys") {
|
|
||||||
hotkeys.push(resource);
|
|
||||||
} else {
|
|
||||||
results.push(resource);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
this.results = [...results, ...hotkeys];
|
|
||||||
return this.results;
|
|
||||||
}
|
|
||||||
onunload() {
|
|
||||||
this.settingsSearchEl.detach();
|
|
||||||
this.settingsResultsEl.detach();
|
|
||||||
this.detach();
|
|
||||||
if (this.searchAppended && import_obsidian.Platform.isDesktop)
|
|
||||||
this.app.setting.openTabById(this.app.setting.lastTabId);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
/* nosourcemap */
|
|
||||||
-10
@@ -1,10 +0,0 @@
|
|||||||
{
|
|
||||||
"id": "settings-search",
|
|
||||||
"name": "Settings Search",
|
|
||||||
"version": "1.3.10",
|
|
||||||
"minAppVersion": "0.12.17",
|
|
||||||
"author": "Jeremy Valentine",
|
|
||||||
"description": "Globally search settings in Obsidian.md",
|
|
||||||
"authorUrl": "https://github.com/valentine195",
|
|
||||||
"isDesktopOnly": false
|
|
||||||
}
|
|
||||||
-25
@@ -1,25 +0,0 @@
|
|||||||
/* src/assets/main.css */
|
|
||||||
.settings-search-container.vertical-tab-header-group {
|
|
||||||
padding-bottom: 0;
|
|
||||||
}
|
|
||||||
.settings-search-input {
|
|
||||||
padding-left: 6px;
|
|
||||||
}
|
|
||||||
.vertical-tab-nav-item.settings-search-input {
|
|
||||||
background-color: inherit !important;
|
|
||||||
}
|
|
||||||
.settings-search-input .setting-item-control {
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
.settings-search-input .search-input-container {
|
|
||||||
margin: 0;
|
|
||||||
}
|
|
||||||
.settings-search-results .setting-item.active {
|
|
||||||
background-color: var(--background-secondary);
|
|
||||||
}
|
|
||||||
.settings-search-results .set-externally .setting-item-name {
|
|
||||||
display: flex;
|
|
||||||
gap: 0.5rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* src/styles.css */
|
|
||||||
@@ -0,0 +1,4 @@
|
|||||||
|
{
|
||||||
|
"installed_at": 1787518597375,
|
||||||
|
"last_version": "4.7.2"
|
||||||
|
}
|
||||||
+39625
File diff suppressed because one or more lines are too long
@@ -0,0 +1,10 @@
|
|||||||
|
{
|
||||||
|
"id": "smart-connections",
|
||||||
|
"name": "Smart Connections",
|
||||||
|
"author": "Brian Petro",
|
||||||
|
"description": "AI link discovery copilot. See related notes as you write. Lookup using semantic (vector) search across your vault. Zero-setup local model for embeddings, no API keys, private.",
|
||||||
|
"minAppVersion": "1.8.7",
|
||||||
|
"authorUrl": "https://smartconnections.app",
|
||||||
|
"isDesktopOnly": false,
|
||||||
|
"version": "4.7.2"
|
||||||
|
}
|
||||||
+4809
File diff suppressed because it is too large
Load Diff
+3
@@ -0,0 +1,3 @@
|
|||||||
|
{
|
||||||
|
"last_version": "0.3.4"
|
||||||
|
}
|
||||||
+34674
File diff suppressed because one or more lines are too long
+10
@@ -0,0 +1,10 @@
|
|||||||
|
{
|
||||||
|
"id": "smart-lookup",
|
||||||
|
"name": "Smart Lookup",
|
||||||
|
"author": "Brian Petro",
|
||||||
|
"description": "Semantic search for your vault. Ask in natural language, find notes by meaning when exact words fail, preview matching notes, and turn forgotten ideas into links, context, and next steps.",
|
||||||
|
"minAppVersion": "1.8.7",
|
||||||
|
"authorUrl": "https://smartconnections.app",
|
||||||
|
"isDesktopOnly": false,
|
||||||
|
"version": "0.3.4"
|
||||||
|
}
|
||||||
+4225
File diff suppressed because it is too large
Load Diff
Vendored
+39
-8
@@ -11,14 +11,10 @@
|
|||||||
"id": "b5344eceadba0fc2",
|
"id": "b5344eceadba0fc2",
|
||||||
"type": "leaf",
|
"type": "leaf",
|
||||||
"state": {
|
"state": {
|
||||||
"type": "markdown",
|
"type": "empty",
|
||||||
"state": {
|
"state": {},
|
||||||
"file": "quotes/Quotes.md",
|
|
||||||
"mode": "source",
|
|
||||||
"source": false
|
|
||||||
},
|
|
||||||
"icon": "lucide-file",
|
"icon": "lucide-file",
|
||||||
"title": "Quotes"
|
"title": "New tab"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
@@ -187,6 +183,41 @@
|
|||||||
},
|
},
|
||||||
"active": "b5344eceadba0fc2",
|
"active": "b5344eceadba0fc2",
|
||||||
"lastOpenFiles": [
|
"lastOpenFiles": [
|
||||||
"20 Work/Decisions/2026/08/2026-08-14 - Rencontrer Sonia et Philippe pour expliquer l'OTT.md"
|
"meetmic/treated/Toute une semaine - Le flux de publication.md",
|
||||||
|
"meetmic/treated/Recording 2026-08-21 at 08.37.39 AM.md",
|
||||||
|
"meetmic/treated/Recording 2026-08-17 at 09.48.40 AM.md",
|
||||||
|
"meetmic/treated/Hajar - Amadou.md",
|
||||||
|
"meetmic/treated/Flux - Live ONFR.md",
|
||||||
|
"meetmic/treated/Discussion CI-CD.md",
|
||||||
|
"meetmic/treated/Boukili PROD- Alignement infra et déploiement du replicat.md",
|
||||||
|
"meetmic/treated/Boukili - Choix de la direction visuelle pour la phase 2.md",
|
||||||
|
"meetmic/treated/Accès Important - Meta et gestion des médias sociaux.md",
|
||||||
|
"meetmic/treated/[PNUM] Daily Scrum.md",
|
||||||
|
"meetmic/Recording 2026-08-21 at 12.41.45 PM.md",
|
||||||
|
"meetmic/Recording 2026-08-21 at 12.40.35 PM.md",
|
||||||
|
"meetmic/Recording 2026-08-21 at 04.38.28 PM.md",
|
||||||
|
"meetmic/Recording 2026-08-21 at 03.49.49 PM.md",
|
||||||
|
"Bootstrap script for this vault.md",
|
||||||
|
"30 Personal Projects/AI/CareerOp/Setup.md",
|
||||||
|
"30 Personal Projects/AI/CareerOp",
|
||||||
|
"30 Personal Projects/AI",
|
||||||
|
"20 Work/Tracking/Website Sync/Website Sync - Complaint Tracking.md",
|
||||||
|
"20 Work/Tracking/Website Sync/2026/08/2026-08-19 - TECH-32615.md",
|
||||||
|
"20 Work/Tracking/Website Sync/2026/08/2026-08-19 - TECH-32612.md",
|
||||||
|
"20 Work/Tracking/Website Sync/2026/08/2026-08-11 - TECH-32582.md",
|
||||||
|
"20 Work/Tracking/Website Sync/2026/08/2026-08-05 - TECH-32552.md",
|
||||||
|
"20 Work/Tracking/Website Sync/2026/08",
|
||||||
|
"20 Work/Tracking/Website Sync/2026/07/2026-07-24 - TECH-32507.md",
|
||||||
|
"20 Work/Tracking/Website Sync/2026/07/2026-07-15 - TECH-32453.md",
|
||||||
|
"20 Work/Tracking/Website Sync/2026/07/2026-07-06 - TECH-32396.md",
|
||||||
|
"20 Work/Tracking/Website Sync/2026/07",
|
||||||
|
"20 Work/Tracking/Website Sync/2026",
|
||||||
|
"20 Work/Tracking/Website Sync",
|
||||||
|
"20 Work/Tracking",
|
||||||
|
"20 Work/Team/Hajar/Hajar 1-1/Recordings/2026-08-17 - Hajar - Amadou.md",
|
||||||
|
"20 Work/Team/Hajar/Hajar 1-1/Recordings",
|
||||||
|
"20 Work/Team/Hajar/Hajar 1-1/2026-08-17 - Hajar 1-1.md",
|
||||||
|
"20 Work/Projects/2026/ONFR",
|
||||||
|
"20 Work/Projects/2026/Mogador Sync"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -0,0 +1,79 @@
|
|||||||
|
---
|
||||||
|
type: contract
|
||||||
|
vendor: "Trings"
|
||||||
|
status: active
|
||||||
|
category: "Service Agreement"
|
||||||
|
contract_start: "2025-11-01"
|
||||||
|
contract_end: "2026-08-31"
|
||||||
|
annual_cost: 40760.0
|
||||||
|
currency: "USD"
|
||||||
|
contract_value: 40760.0
|
||||||
|
billing_frequency: "Upfront"
|
||||||
|
payment_terms: "Immediate"
|
||||||
|
payment_method: "Bank Transfer"
|
||||||
|
auto_renewal:
|
||||||
|
renewal_term_months:
|
||||||
|
customer_notice_days:
|
||||||
|
vendor_notice_days:
|
||||||
|
notice_deadline:
|
||||||
|
renewal_increase_percent:
|
||||||
|
renewal_pricing_rule:
|
||||||
|
renewal_status: "unknown"
|
||||||
|
purchase_order:
|
||||||
|
account_manager:
|
||||||
|
criticality: medium
|
||||||
|
---
|
||||||
|
|
||||||
|
# Trings
|
||||||
|
|
||||||
|
## Contract Summary
|
||||||
|
|
||||||
|
**Purpose:** Customization of Live Event Experience
|
||||||
|
|
||||||
|
**Service / Product:** Live Event Customization Services
|
||||||
|
|
||||||
|
## Commercial Terms
|
||||||
|
|
||||||
|
- Annual cost: 40760.0 USD
|
||||||
|
- Total contract value: 40760.0 USD
|
||||||
|
- Billing frequency: Upfront
|
||||||
|
- Payment terms: Immediate
|
||||||
|
- Payment method: Bank Transfer
|
||||||
|
|
||||||
|
## Renewal
|
||||||
|
|
||||||
|
- Contract start: 2025-11-01
|
||||||
|
- Contract end: 2026-08-31
|
||||||
|
- Auto-renewal: None
|
||||||
|
- Renewal term: months
|
||||||
|
- Customer notice: days
|
||||||
|
- Vendor notice: days
|
||||||
|
- Customer notice deadline:
|
||||||
|
- Fixed renewal increase: %
|
||||||
|
- Renewal pricing rule:
|
||||||
|
- Renewal status: unknown
|
||||||
|
|
||||||
|
## Watch Outs
|
||||||
|
|
||||||
|
- Contract is non-cancelable before its Contract End Date.
|
||||||
|
- Payment terms are immediate.
|
||||||
|
- Service customization is subject to client approval and may be rejected.
|
||||||
|
|
||||||
|
## Services / Entitlements
|
||||||
|
|
||||||
|
- Tag customization — live event overlay tags displayed in French: “Scheduled” and “Preview” → À venir; “LIVE” → En direct; event date rendered in French format per CLIENT screen captures.
|
||||||
|
- Scheduling and visibility — multiple Live Events may be scheduled weeks in advance while appearing in the livestream shelf individually, beginning three (3) days before the event date.
|
||||||
|
- Shelf display — the main livestream shelf displays only one (1) upcoming or live event at a time.
|
||||||
|
|
||||||
|
## Source Evidence
|
||||||
|
|
||||||
|
> Extracted from the local contract PDF. Review the original contract before making a contractual decision.
|
||||||
|
|
||||||
|
## Source Files
|
||||||
|
|
||||||
|
- `Trings/Tringapps_-_TFO_-_CR001.pdf`
|
||||||
|
- `Trings/[completed] CONTRACT .pdf`
|
||||||
|
|
||||||
|
## Notes
|
||||||
|
|
||||||
|
-
|
||||||
@@ -70,4 +70,4 @@ What would I do differently next time? N/A
|
|||||||
|
|
||||||
## Related
|
## Related
|
||||||
|
|
||||||
- [[]]
|
- [[Algolia - 2024-2026]]
|
||||||
+2
@@ -36,4 +36,6 @@ Expliquer aussi que nous allons faire un vrai test aussi
|
|||||||
## Related
|
## Related
|
||||||
|
|
||||||
- [[2026-08-14]]
|
- [[2026-08-14]]
|
||||||
|
- [[2026-08-14 - OTT - Faire un test live avant le 17 septembre]]
|
||||||
|
- [[2026-08-07 - Pay Trings for the french tabs]]
|
||||||
-
|
-
|
||||||
+5
-1
@@ -60,4 +60,8 @@ What are we accepting by making this decision?
|
|||||||
-
|
-
|
||||||
|
|
||||||
**Cons:**
|
**Cons:**
|
||||||
-
|
|
||||||
|
|
||||||
|
|
||||||
|
### Related
|
||||||
|
- [[2026-08-18 - Idello - Estimer le temps d'avoir des images docker propers avec aucune dépendances]]
|
||||||
|
|||||||
+5
-1
@@ -59,4 +59,8 @@ What are we accepting by making this decision?
|
|||||||
-
|
-
|
||||||
|
|
||||||
**Cons:**
|
**Cons:**
|
||||||
-
|
|
||||||
|
|
||||||
|
|
||||||
|
### Related
|
||||||
|
- [[2026-08-18 - Contracts - Ajouter les clauses sur les images doker et les dépendances]]
|
||||||
@@ -0,0 +1,67 @@
|
|||||||
|
---
|
||||||
|
date: 2026-08-21
|
||||||
|
status: proposed
|
||||||
|
owner: Slimane
|
||||||
|
project: sync-monitoring
|
||||||
|
---
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
> 🟡 **Proposed** · 🟢 **Decided** · 🔴 **Rejected** · ⚫ **Superseded**
|
||||||
|
|
||||||
|
## Context
|
||||||
|
|
||||||
|
Why is a decision needed?
|
||||||
|
|
||||||
|
Slimane me propose d'utiliser healthcheck.io, cela me semble pas mal si cela répond au besoins
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
## Decision
|
||||||
|
|
||||||
|
What was decided?
|
||||||
|
Je lui ai dit d'aller de l'avant avec et de voir avec Joel si c'est ok. Si ses tests sont pertinents (Joel doit lui demander de les voir), then oui prend l'abonnement business. Niveau SMS, de mettre nos cells afin que nous soyons aviser. Aussi j'ai demandé de voir si on peut avoir un intégration avec Slack
|
||||||
|
|
||||||
|
## Why
|
||||||
|
|
||||||
|
Why was this option chosen?
|
||||||
|
|
||||||
|
- La plus safe, j'ai besoin de cela avant le mois de Septembre qui aura beaucoup de nouveauté
|
||||||
|
|
||||||
|
## Consequences
|
||||||
|
|
||||||
|
What are we accepting by making this decision?
|
||||||
|
|
||||||
|
- On peut avancer le projet, assurer que le mois de Septembre que nous soyons pro-actif
|
||||||
|
|
||||||
|
## Related
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Options Considered _(optional)_
|
||||||
|
|
||||||
|
### Option 1
|
||||||
|
|
||||||
|
**Description:**
|
||||||
|
|
||||||
|
**Pros:**
|
||||||
|
-
|
||||||
|
|
||||||
|
**Cons:**
|
||||||
|
-
|
||||||
|
|
||||||
|
### Option 2
|
||||||
|
|
||||||
|
**Description:**
|
||||||
|
|
||||||
|
**Pros:**
|
||||||
|
-
|
||||||
|
|
||||||
|
**Cons:**
|
||||||
|
|
||||||
|
### Related
|
||||||
|
[[Mogador Sync Project]]
|
||||||
+75
@@ -0,0 +1,75 @@
|
|||||||
|
---
|
||||||
|
date: 2026-09-10
|
||||||
|
status: proposed
|
||||||
|
owner: Amadou
|
||||||
|
project: "[[Boukili]]"
|
||||||
|
---
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
> 🟡 **Proposed** · 🟢 **Decided** · 🔴 **Rejected** · ⚫ **Superseded**
|
||||||
|
|
||||||
|
## Context
|
||||||
|
|
||||||
|
Why is a decision needed?
|
||||||
|
|
||||||
|
The details of these items are in the emails we have exchanged.
|
||||||
|
|
||||||
|
1. user_last_activity_at fallback
|
||||||
|
|
||||||
|
2. Contentful blacklist -- for controlling notifications
|
||||||
|
|
||||||
|
3. Firebase auth lockout
|
||||||
|
|
||||||
|
4. Migration update messaging
|
||||||
|
|
||||||
|
Il y a un potentiel regression ou Salesforce n'est plus la source de vérité
|
||||||
|
Pas de plan de tests une fois la migration en place
|
||||||
|
Que faire si un utilisateur se connecte sur un appareil et migre. Puis change d'appareil qui n'a pas le auto-update, le compte sur cette appareil sera sous firebase et donc l'utilisateur n'aura pas de synchro entre le nouveau aws et le firebase.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
## Decision
|
||||||
|
|
||||||
|
What was decided?
|
||||||
|
|
||||||
|
## Why
|
||||||
|
|
||||||
|
Why was this option chosen?
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
## Consequences
|
||||||
|
|
||||||
|
What are we accepting by making this decision?
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
## Related
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Options Considered _(optional)_
|
||||||
|
|
||||||
|
### Option 1
|
||||||
|
|
||||||
|
**Description:**
|
||||||
|
|
||||||
|
**Pros:**
|
||||||
|
-
|
||||||
|
|
||||||
|
**Cons:**
|
||||||
|
-
|
||||||
|
|
||||||
|
### Option 2
|
||||||
|
|
||||||
|
**Description:**
|
||||||
|
|
||||||
|
**Pros:**
|
||||||
|
-
|
||||||
|
|
||||||
|
**Cons:**
|
||||||
|
-
|
||||||
+65
@@ -0,0 +1,65 @@
|
|||||||
|
---
|
||||||
|
date: 2026-09-10
|
||||||
|
status: proposed
|
||||||
|
owner: Amadou
|
||||||
|
project: maleo
|
||||||
|
---
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
> 🟡 **Proposed** · 🟢 **Decided** · 🔴 **Rejected** · ⚫ **Superseded**
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
## Context
|
||||||
|
|
||||||
|
Why is a decision needed?
|
||||||
|
Equipe Jason/Eric veulent les cours en ligne sur Idello. Sauf que le zip utilisé pour les cours en ligne n'est pas compatible avec Idello. Ce sont deux type de zip.
|
||||||
|
|
||||||
|
|
||||||
|
## Decision
|
||||||
|
|
||||||
|
What was decided?
|
||||||
|
Un ticket doit être fait par zip. Cela sera traité puis retourné à Hélène pour injecter dans Louise
|
||||||
|
Cela ne pourra commencer que le 12 octobre
|
||||||
|
|
||||||
|
## Why
|
||||||
|
|
||||||
|
Why was this option chosen?
|
||||||
|
|
||||||
|
- Easiest et avec le moins de problème et cela va leur permettre d'avoir les zip
|
||||||
|
|
||||||
|
## Consequences
|
||||||
|
|
||||||
|
What are we accepting by making this decision?
|
||||||
|
|
||||||
|
- A voir la fréquence si cela va nous impacter ou pas.
|
||||||
|
|
||||||
|
## Related
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Options Considered _(optional)_
|
||||||
|
|
||||||
|
### Option 1
|
||||||
|
|
||||||
|
**Description:**
|
||||||
|
|
||||||
|
**Pros:**
|
||||||
|
-
|
||||||
|
|
||||||
|
**Cons:**
|
||||||
|
-
|
||||||
|
|
||||||
|
### Option 2
|
||||||
|
|
||||||
|
**Description:**
|
||||||
|
|
||||||
|
**Pros:**
|
||||||
|
-
|
||||||
|
|
||||||
|
**Cons:**
|
||||||
|
-
|
||||||
@@ -0,0 +1,109 @@
|
|||||||
|
---
|
||||||
|
date: 2026-09-11
|
||||||
|
status: decided
|
||||||
|
owner: Amadou
|
||||||
|
project: ""
|
||||||
|
---
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
> 🟡 **Proposed** · 🟢 **Decided** · 🔴 **Rejected** · ⚫ **Superseded**
|
||||||
|
|
||||||
|
## Context
|
||||||
|
|
||||||
|
TFO possède plusieurs univers et propriétés jeunesse principalement exploités à travers des expériences sur écran.
|
||||||
|
|
||||||
|
Lunii propose une expérience audio jeunesse sans écran basée sur des histoires, notamment interactives. Il semble y avoir un alignement naturel entre les deux organisations : Lunii apporte le format et la plateforme audio, tandis que TFO peut apporter ses univers jeunesse, son expertise éducative et un positionnement distinctif autour de la francophonie canadienne.
|
||||||
|
|
||||||
|
Concept :
|
||||||
|
|
||||||
|
> **Les univers TFO prennent vie sans écran.**
|
||||||
|
|
||||||
|
L'objectif ne serait pas simplement d'adapter des épisodes TFO existants en audio, mais d'explorer la création de nouvelles expériences audio conçues spécifiquement pour Lunii.
|
||||||
|
|
||||||
|
Le CTO a approuvé que l'idée soit présentée au CEO afin d'évaluer l'intérêt de TFO à ouvrir une discussion avec Lunii.
|
||||||
|
|
||||||
|
## Decision
|
||||||
|
|
||||||
|
🟢 **Décision prise — procéder à une démarche exploratoire auprès de Lunii.**
|
||||||
|
|
||||||
|
L'objectif de cette première phase est de présenter TFO, ses univers, son expertise, sa portée et le potentiel d'une collaboration afin de déterminer si Lunii souhaite explorer un partenariat avec TFO.
|
||||||
|
|
||||||
|
Cette décision ne constitue pas encore l'approbation d'un projet de production ou d'un modèle commercial.
|
||||||
|
|
||||||
|
Le directeur du service éducatif sera impliqué dans la démarche, conformément à la demande du CEO.
|
||||||
|
|
||||||
|
## Why
|
||||||
|
|
||||||
|
- Étendre les univers TFO au-delà de l'écran.
|
||||||
|
- Faire vivre les propriétés intellectuelles de TFO sous une nouvelle forme plutôt que simplement redistribuer du contenu existant.
|
||||||
|
- Créer une expérience complémentaire à l'offre numérique actuelle de TFO.
|
||||||
|
- Mettre à profit l'expertise éducative et jeunesse de TFO.
|
||||||
|
- Offrir à Lunii un potentiel positionnement distinctif autour de contenus franco-canadiens.
|
||||||
|
- Valider l'intérêt mutuel avant d'engager des ressources importantes.
|
||||||
|
- Possibilité, à terme, d'imaginer une collection autour de la francophonie canadienne : Ontario français, Acadie, Manitoba, Nord canadien, etc.
|
||||||
|
|
||||||
|
## Consequences
|
||||||
|
|
||||||
|
- Constituer une petite équipe interne pour préparer l'approche.
|
||||||
|
- Impliquer le directeur du service éducatif dans la démarche.
|
||||||
|
- Construire une proposition de valeur claire pour Lunii.
|
||||||
|
- Identifier les propriétés et univers TFO les plus pertinents à présenter.
|
||||||
|
- Rassembler les données permettant de démontrer la portée et la valeur de TFO : audiences, usages numériques, portée éducative, présence géographique et autres indicateurs pertinents.
|
||||||
|
- Préparer une première présentation TFO × Lunii.
|
||||||
|
- Identifier et approcher les bons interlocuteurs chez Lunii.
|
||||||
|
- Si Lunii manifeste un intérêt, définir ensuite une deuxième phase portant sur le concept, le modèle de collaboration, les droits, les responsabilités et un éventuel pilote.
|
||||||
|
|
||||||
|
## Related
|
||||||
|
|
||||||
|
- CTO — approbation obtenue pour présenter l'idée au CEO.
|
||||||
|
- Concept : **« Les univers TFO prennent vie sans écran. »**
|
||||||
|
- Opportunité potentielle : **TFO × Lunii**
|
||||||
|
- Extension possible : **francophonie canadienne sans écran**
|
||||||
|
|
||||||
|
## Options Considered
|
||||||
|
|
||||||
|
### Option 1 — Explorer une collaboration avec Lunii
|
||||||
|
|
||||||
|
**Description:**
|
||||||
|
|
||||||
|
Présenter l'idée au CEO et demander l'autorisation d'ouvrir une première conversation exploratoire avec Lunii.
|
||||||
|
|
||||||
|
**Pros:**
|
||||||
|
|
||||||
|
- Faible engagement initial.
|
||||||
|
- Permet de valider rapidement l'intérêt de Lunii.
|
||||||
|
- Nouveau canal pour les propriétés jeunesse TFO.
|
||||||
|
- Fort alignement potentiel avec la mission éducative de TFO.
|
||||||
|
- Possibilité de créer une offre franco-canadienne distinctive.
|
||||||
|
|
||||||
|
**Cons:**
|
||||||
|
|
||||||
|
- Modèle économique encore inconnu.
|
||||||
|
- Droits et propriété intellectuelle à clarifier.
|
||||||
|
- Nécessiterait des ressources éditoriales et/ou de production si un pilote est lancé.
|
||||||
|
|
||||||
|
### Option 2 — Ne pas poursuivre pour le moment
|
||||||
|
|
||||||
|
**Description:**
|
||||||
|
|
||||||
|
Conserver l'idée comme opportunité future sans contacter Lunii.
|
||||||
|
|
||||||
|
**Pros:**
|
||||||
|
|
||||||
|
- Aucun nouvel engagement ou besoin de capacité.
|
||||||
|
- Évite d'ajouter une initiative au portefeuille actuel.
|
||||||
|
|
||||||
|
**Cons:**
|
||||||
|
|
||||||
|
- Opportunité non validée.
|
||||||
|
- Risque de laisser passer un partenariat potentiellement bien aligné avec TFO.
|
||||||
|
- Les hypothèses sur l'intérêt de Lunii resteraient sans réponse.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Si le CEO dit **« oui, contactez-les »**, je passerais alors la note en **🟢 Decided** et je reformulerais la Decision en *« TFO ouvrira une discussion exploratoire avec Lunii »*.
|
||||||
|
|
||||||
|
|
||||||
|
Update le 15 Septembre 2026
|
||||||
|
Xavier a donne son go pour les contacter.
|
||||||
+7
-1
@@ -258,4 +258,10 @@ Au final, l'objectif n'est pas de produire davantage de tableaux de bord.
|
|||||||
|
|
||||||
L'objectif est de permettre à la direction de répondre plus facilement à une question fondamentale :
|
L'objectif est de permettre à la direction de répondre plus facilement à une question fondamentale :
|
||||||
|
|
||||||
> **Comment savons-nous, de façon objective, que nous sommes en train d'atteindre nos objectifs stratégiques?**
|
> **Comment savons-nous, de façon objective, que nous sommes en train d'atteindre nos objectifs stratégiques?**
|
||||||
|
|
||||||
|
|
||||||
|
### Related
|
||||||
|
- [[Strategic KPI Framework]]
|
||||||
|
- [[KPI]]
|
||||||
|
-
|
||||||
@@ -632,4 +632,4 @@ The long-term strategy is:
|
|||||||
|
|
||||||
- [[Self-Service Analytics]]
|
- [[Self-Service Analytics]]
|
||||||
|
|
||||||
- [[CTO]]
|
- [[CTO - Aligner les objectifs stratégiques, les KPI et les données]]
|
||||||
@@ -550,7 +550,7 @@ HR → Finance → IT → other business domains.
|
|||||||
- [[Data Steward]]
|
- [[Data Steward]]
|
||||||
- [[Self-Service Analytics]]
|
- [[Self-Service Analytics]]
|
||||||
- [[Data Culture]]
|
- [[Data Culture]]
|
||||||
- [[CTO]]
|
- [[CTO - Aligner les objectifs stratégiques, les KPI et les données]]
|
||||||
|
|
||||||
## Update - 2026-07-27
|
## Update - 2026-07-27
|
||||||
|
|
||||||
|
|||||||
@@ -242,4 +242,9 @@ It's:
|
|||||||
|
|
||||||
**How does the organization measure its strategy?**
|
**How does the organization measure its strategy?**
|
||||||
|
|
||||||
And _that_ is the level where I think your CTO ambitions and what you're currently doing at work are starting to genuinely intersect.
|
And _that_ is the level where I think your CTO ambitions and what you're currently doing at work are starting to genuinely intersect.
|
||||||
|
|
||||||
|
|
||||||
|
### Related
|
||||||
|
- [[Strategic KPI Framework]]
|
||||||
|
- [[KPI]]
|
||||||
@@ -0,0 +1,98 @@
|
|||||||
|
|
||||||
|
# Tuesday, September 8th 2026
|
||||||
|
|
||||||
|
← [[2026-09-07]] | **Week 37** | [[2026-09-11]] →
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Meetings
|
||||||
|
|
||||||
|
- all 1-1
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Significant Events
|
||||||
|
|
||||||
|
- Boukili to almost go live
|
||||||
|
- OTT needs more test for a sign off
|
||||||
|
- lettre de CRTC
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Decisions Made
|
||||||
|
|
||||||
|
```dataview
|
||||||
|
LIST
|
||||||
|
FROM "20 Work/Decisions"
|
||||||
|
WHERE startswith(file.name, this.file.name + " - ")
|
||||||
|
SORT file.name ASC
|
||||||
|
```
|
||||||
|
- [[]]
|
||||||
|
|
||||||
|
## Ideas
|
||||||
|
```dataview
|
||||||
|
LIST
|
||||||
|
FROM "20 Work/Ideas"
|
||||||
|
WHERE startswith(file.name, this.file.name + " - ")
|
||||||
|
SORT file.name ASC
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## People / Management
|
||||||
|
|
||||||
|
Feedback given, coaching moments, observations.
|
||||||
|
|
||||||
|
- JC overwhelmed with projects mais c'est ok, c'est plus les décisions qu'il aime pas
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Projects
|
||||||
|
|
||||||
|
Important project changes only.
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Leadership Reflection
|
||||||
|
|
||||||
|
### What surprised me today?
|
||||||
|
|
||||||
|
- Too much when restarting
|
||||||
|
|
||||||
|
### What did I learn today?
|
||||||
|
|
||||||
|
- Hate coming back
|
||||||
|
|
||||||
|
### What would I do differently next time?
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Follow-ups
|
||||||
|
|
||||||
|
> Only actions that still belong to me.
|
||||||
|
> Everything else should already be in **Twos**, **Jira**, or **Monday**.
|
||||||
|
|
||||||
|
- [ ]
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Created Today
|
||||||
|
|
||||||
|
```dataview
|
||||||
|
TABLE WITHOUT ID
|
||||||
|
file.link AS "File",
|
||||||
|
file.folder AS "Location"
|
||||||
|
FROM "20 Work"
|
||||||
|
WHERE file.cday = date(this.file.name)
|
||||||
|
AND file.path != this.file.path
|
||||||
|
SORT file.ctime ASC
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
## Related
|
||||||
|
|
||||||
|
- [[]]
|
||||||
@@ -0,0 +1,97 @@
|
|||||||
|
|
||||||
|
# Thursday, September 10th 2026
|
||||||
|
|
||||||
|
← [[2026-09-09]] | **Week 37** | [[2026-09-11]] →
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Meetings
|
||||||
|
|
||||||
|
- Rencontre interne pour parler de Boukili
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Significant Events
|
||||||
|
|
||||||
|
- Email de Trings, on doit regarder la logique Algolia
|
||||||
|
-
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Decisions Made
|
||||||
|
|
||||||
|
```dataview
|
||||||
|
LIST
|
||||||
|
FROM "20 Work/Decisions"
|
||||||
|
WHERE startswith(file.name, this.file.name + " - ")
|
||||||
|
SORT file.name ASC
|
||||||
|
```
|
||||||
|
- [[]]
|
||||||
|
|
||||||
|
## Ideas
|
||||||
|
```dataview
|
||||||
|
LIST
|
||||||
|
FROM "20 Work/Ideas"
|
||||||
|
WHERE startswith(file.name, this.file.name + " - ")
|
||||||
|
SORT file.name ASC
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## People / Management
|
||||||
|
|
||||||
|
Feedback given, coaching moments, observations.
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Projects
|
||||||
|
|
||||||
|
Important project changes only.
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Leadership Reflection
|
||||||
|
|
||||||
|
### What surprised me today?
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
### What did I learn today?
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
### What would I do differently next time?
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Follow-ups
|
||||||
|
|
||||||
|
> Only actions that still belong to me.
|
||||||
|
> Everything else should already be in **Twos**, **Jira**, or **Monday**.
|
||||||
|
|
||||||
|
- [ ]
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Created Today
|
||||||
|
|
||||||
|
```dataview
|
||||||
|
TABLE WITHOUT ID
|
||||||
|
file.link AS "File",
|
||||||
|
file.folder AS "Location"
|
||||||
|
FROM "20 Work"
|
||||||
|
WHERE file.cday = date(this.file.name)
|
||||||
|
AND file.path != this.file.path
|
||||||
|
SORT file.ctime ASC
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
## Related
|
||||||
|
|
||||||
|
- [[]]
|
||||||
@@ -0,0 +1,98 @@
|
|||||||
|
|
||||||
|
# Friday, September 11th 2026
|
||||||
|
|
||||||
|
← [[2026-09-10]] | **Week 37** | [[2026-09-12]] →
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Meetings
|
||||||
|
|
||||||
|
- Rencontre interne pour parler de Boukili
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Significant Events
|
||||||
|
|
||||||
|
- Autre regression pour Trings, JC envoie un email
|
||||||
|
- En attente d'une livraison pour Trings
|
||||||
|
- Algolia n'a pas de relation entre lien et collection donc Trings ne peut pas faire cela sans passer par Directus.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Decisions Made
|
||||||
|
|
||||||
|
```dataview
|
||||||
|
LIST
|
||||||
|
FROM "20 Work/Decisions"
|
||||||
|
WHERE startswith(file.name, this.file.name + " - ")
|
||||||
|
SORT file.name ASC
|
||||||
|
```
|
||||||
|
- [[]]
|
||||||
|
|
||||||
|
## Ideas
|
||||||
|
```dataview
|
||||||
|
LIST
|
||||||
|
FROM "20 Work/Ideas"
|
||||||
|
WHERE startswith(file.name, this.file.name + " - ")
|
||||||
|
SORT file.name ASC
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## People / Management
|
||||||
|
|
||||||
|
Feedback given, coaching moments, observations.
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Projects
|
||||||
|
|
||||||
|
Important project changes only.
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Leadership Reflection
|
||||||
|
|
||||||
|
### What surprised me today?
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
### What did I learn today?
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
### What would I do differently next time?
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Follow-ups
|
||||||
|
|
||||||
|
> Only actions that still belong to me.
|
||||||
|
> Everything else should already be in **Twos**, **Jira**, or **Monday**.
|
||||||
|
|
||||||
|
- [ ]
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Created Today
|
||||||
|
|
||||||
|
```dataview
|
||||||
|
TABLE WITHOUT ID
|
||||||
|
file.link AS "File",
|
||||||
|
file.folder AS "Location"
|
||||||
|
FROM "20 Work"
|
||||||
|
WHERE file.cday = date(this.file.name)
|
||||||
|
AND file.path != this.file.path
|
||||||
|
SORT file.ctime ASC
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
## Related
|
||||||
|
|
||||||
|
- [[]]
|
||||||
@@ -0,0 +1,98 @@
|
|||||||
|
|
||||||
|
# Monday, September 14th 2026
|
||||||
|
|
||||||
|
← [[2026-09-13]] | **Week 38** | [[2026-09-15]] →
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Meetings
|
||||||
|
|
||||||
|
- None important, was a slow day, see personal vault as that what happened
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Significant Events
|
||||||
|
|
||||||
|
- Submission to stores for OTT.
|
||||||
|
- iOS was approved, Roku due tomorrow
|
||||||
|
-
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Decisions Made
|
||||||
|
|
||||||
|
```dataview
|
||||||
|
LIST
|
||||||
|
FROM "20 Work/Decisions"
|
||||||
|
WHERE startswith(file.name, this.file.name + " - ")
|
||||||
|
SORT file.name ASC
|
||||||
|
```
|
||||||
|
- [[]]
|
||||||
|
|
||||||
|
## Ideas
|
||||||
|
```dataview
|
||||||
|
LIST
|
||||||
|
FROM "20 Work/Ideas"
|
||||||
|
WHERE startswith(file.name, this.file.name + " - ")
|
||||||
|
SORT file.name ASC
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## People / Management
|
||||||
|
|
||||||
|
Feedback given, coaching moments, observations.
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Projects
|
||||||
|
|
||||||
|
Important project changes only.
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Leadership Reflection
|
||||||
|
|
||||||
|
### What surprised me today?
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
### What did I learn today?
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
### What would I do differently next time?
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Follow-ups
|
||||||
|
|
||||||
|
> Only actions that still belong to me.
|
||||||
|
> Everything else should already be in **Twos**, **Jira**, or **Monday**.
|
||||||
|
|
||||||
|
- [ ]
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Created Today
|
||||||
|
|
||||||
|
```dataview
|
||||||
|
TABLE WITHOUT ID
|
||||||
|
file.link AS "File",
|
||||||
|
file.folder AS "Location"
|
||||||
|
FROM "20 Work"
|
||||||
|
WHERE file.cday = date(this.file.name)
|
||||||
|
AND file.path != this.file.path
|
||||||
|
SORT file.ctime ASC
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
## Related
|
||||||
|
|
||||||
|
- [[]]
|
||||||
@@ -0,0 +1,98 @@
|
|||||||
|
|
||||||
|
# Tuesday, September 15th 2026
|
||||||
|
|
||||||
|
← [[2026-09-14]] | **Week 38** | [[2026-09-16]] →
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Meetings
|
||||||
|
|
||||||
|
- Avec Francis sur l'équipe - went well
|
||||||
|
- Sur la visibilité des tickets jira et anomalies.
|
||||||
|
- Xavier
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Significant Events
|
||||||
|
|
||||||
|
- Approbation de Xavier pour une collaboration avec Lunii
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Decisions Made
|
||||||
|
|
||||||
|
```dataview
|
||||||
|
LIST
|
||||||
|
FROM "20 Work/Decisions"
|
||||||
|
WHERE startswith(file.name, this.file.name + " - ")
|
||||||
|
SORT file.name ASC
|
||||||
|
```
|
||||||
|
- [[]]
|
||||||
|
|
||||||
|
## Ideas
|
||||||
|
```dataview
|
||||||
|
LIST
|
||||||
|
FROM "20 Work/Ideas"
|
||||||
|
WHERE startswith(file.name, this.file.name + " - ")
|
||||||
|
SORT file.name ASC
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## People / Management
|
||||||
|
|
||||||
|
Feedback given, coaching moments, observations.
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Projects
|
||||||
|
|
||||||
|
Important project changes only.
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Leadership Reflection
|
||||||
|
|
||||||
|
### What surprised me today?
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
### What did I learn today?
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
### What would I do differently next time?
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Follow-ups
|
||||||
|
|
||||||
|
> Only actions that still belong to me.
|
||||||
|
> Everything else should already be in **Twos**, **Jira**, or **Monday**.
|
||||||
|
|
||||||
|
- [ ]
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Created Today
|
||||||
|
|
||||||
|
```dataview
|
||||||
|
TABLE WITHOUT ID
|
||||||
|
file.link AS "File",
|
||||||
|
file.folder AS "Location"
|
||||||
|
FROM "20 Work"
|
||||||
|
WHERE file.cday = date(this.file.name)
|
||||||
|
AND file.path != this.file.path
|
||||||
|
SORT file.ctime ASC
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
## Related
|
||||||
|
|
||||||
|
- [[]]
|
||||||
@@ -0,0 +1,39 @@
|
|||||||
|
---
|
||||||
|
type: meeting
|
||||||
|
date: 2026-08-21
|
||||||
|
source: MeetMic
|
||||||
|
status: inbox
|
||||||
|
duration: 14m
|
||||||
|
meetmic_id: 8B9B38E7-5C7B-4D6B-B317-1ABFE19FDDB4
|
||||||
|
---
|
||||||
|
|
||||||
|
# [PNUM] Daily Scrum
|
||||||
|
|
||||||
|
## Résumé
|
||||||
|
- Un problème de synchronisation persiste le matin, mais les changements sont présents sur staging. La mise en production de la version 1.4 pourrait résoudre les problèmes observés sur staging.
|
||||||
|
- Marketing souhaite rendre des bandes-annonces disponibles avant la création des fiches de collection ou de produits afin de promouvoir une série à venir.
|
||||||
|
- Une bande-annonce non liée à une collection peut être consultée via son URL, mais cette approche présente des limites fonctionnelles et ne répond pas correctement au besoin de navigation sur le site.
|
||||||
|
- Les solutions envisagées — ajout manuel dans un héros, lien direct ou redirection vers YouTube — sont jugées trop risquées ou inadaptées, notamment pour l’OTT.
|
||||||
|
- Le besoin de promouvoir des contenus futurs n’était pas inclus dans le périmètre initial des bandes-annonces et semble être devenu une priorité d’entreprise sans alignement suffisant entre les équipes.
|
||||||
|
|
||||||
|
## Décisions
|
||||||
|
- Ne pas mettre en place maintenant de solution alternative pour les bandes-annonces futures ; ce besoin doit faire l’objet d’un projet distinct.
|
||||||
|
- Ne pas utiliser de redirection vers YouTube pour répondre au besoin de promotion.
|
||||||
|
- Maintenir la position selon laquelle la fonctionnalité actuelle de bandes-annonces ne doit pas être détournée pour gérer les promotions futures.
|
||||||
|
|
||||||
|
## Actions
|
||||||
|
- [ ] Expliquer clairement à Julie les risques, les limites techniques et le décalage avec le périmètre initial — Responsable : non identifié
|
||||||
|
- [ ] Remonter à Mohamed et aux autres parties prenantes le problème de communication et de priorisation entre les équipes — Responsable : non identifié
|
||||||
|
|
||||||
|
## Blocages / Risques
|
||||||
|
- Une bande-annonce non liée à une collection ne s’intègre pas correctement au parcours utilisateur et peut ouvrir un lecteur sans navigation de retour.
|
||||||
|
- La création anticipée d’une collection pourrait empêcher son affichage dans le slider de nouveautés au moment de la sortie réelle.
|
||||||
|
- L’OTT ne dispose pas du bouton custom nécessaire pour afficher ou rediriger vers ces bandes-annonces.
|
||||||
|
- Une solution ponctuelle risque d’entraîner des demandes récurrentes de Marketing et de créer une fonctionnalité difficile à maintenir.
|
||||||
|
- Le besoin semble avoir été priorisé au niveau de l’entreprise sans avoir été communiqué comme une priorité lors de la conception du projet initial.
|
||||||
|
|
||||||
|
## À suivre
|
||||||
|
- Définir les besoins réels de Marketing concernant les promotions futures, ainsi que la solution faisable et son mode d’implémentation.
|
||||||
|
- Déterminer comment conserver l’affichage « nouveauté » lorsqu’une collection est créée avant la sortie du contenu.
|
||||||
|
- Clarifier l’alignement des priorités et des attentes entre Marketing, les équipes produit et les équipes techniques.
|
||||||
|
- Vérifier l’évolution du problème de synchronisation après la mise en production de la version 1.4.
|
||||||
+44
@@ -0,0 +1,44 @@
|
|||||||
|
---
|
||||||
|
type: meeting
|
||||||
|
date: 2026-09-11
|
||||||
|
source: MeetMic
|
||||||
|
status: inbox
|
||||||
|
duration: 21m
|
||||||
|
meetmic_id: 90081927-2438-4E69-ACC6-544E679F739F
|
||||||
|
---
|
||||||
|
|
||||||
|
# Recording
|
||||||
|
|
||||||
|
## Résumé
|
||||||
|
- La soumission ne peut pas être sécurisée dans le délai initial, car plusieurs problèmes doivent encore être corrigés et testés correctement.
|
||||||
|
- Les principaux sujets abordés sont la migration des utilisateurs sur UAT, la fiabilité du champ de dernière activité, la migration forcée des utilisateurs multi-appareils et les tests Salesforce.
|
||||||
|
- L’équipe de développement prévoit de terminer les corrections restantes, d’effectuer une régression complète, puis de fournir une version stable. La livraison est envisagée entre le vendredi 18 et le mercredi 23, sous réserve de confirmation.
|
||||||
|
- Les livraisons seront mieux contrôlées afin d’éviter plusieurs versions successives et de permettre à l’équipe de test de planifier ses validations.
|
||||||
|
|
||||||
|
## Décisions
|
||||||
|
- Le code sera gelé une fois les problèmes actuellement identifiés corrigés et validés.
|
||||||
|
- Les travaux de phase 2 seront réalisés sur une branche distincte et ne seront pas intégrés à la phase 1 pendant la validation.
|
||||||
|
- Une livraison ne sera effectuée que lorsque l’équipe de développement aura terminé ses tests et confirmé que l’équipe de réception est prête.
|
||||||
|
|
||||||
|
## Actions
|
||||||
|
- [ ] Investiguer le problème de migration observé sur UAT et fournir une version stable après un nouveau cycle de tests — Responsable : équipe de développement
|
||||||
|
- [ ] Mettre en place un mécanisme de retry pour fiabiliser la remontée de la dernière activité et examiner un indicateur de visibilité réservé aux tests — Responsable : équipe de développement
|
||||||
|
- [ ] Organiser un échange avec Habiba afin de définir une solution robuste et suffisamment visible pour valider la dernière activité — Responsable : équipes concernées
|
||||||
|
- [ ] Étudier avec l’agence actuelle la possibilité de déconnecter tous les utilisateurs et d’afficher un message d’obligation de mise à jour, notamment via Contentful — Responsable : Amadou et équipe concernée
|
||||||
|
- [ ] Vérifier l’avancement des tests Salesforce avec Nicolas et Mark, puis communiquer une mise à jour — Responsable : équipe concernée
|
||||||
|
- [ ] Confirmer par e-mail les dates de livraison jugées réalistes — Responsable : équipe de développement — Échéance : dans l’après-midi
|
||||||
|
- [ ] Corriger les problèmes restants, effectuer une régression complète et préparer une build stable avant livraison — Responsable : équipe de développement — Échéance : entre le vendredi 18 et le mercredi 23, selon confirmation
|
||||||
|
|
||||||
|
## Blocages / Risques
|
||||||
|
- Le temps disponible pour tester est insuffisant pour garantir une version solide avant soumission.
|
||||||
|
- La migration fonctionne sur test/staging mais présente encore un problème non identifié sur UAT.
|
||||||
|
- Le champ de dernière activité n’est pas jugé suffisamment fiable, notamment en cas d’échec réseau.
|
||||||
|
- La stratégie de migration forcée des utilisateurs multi-appareils reste à définir et constitue un point critique pour la soumission.
|
||||||
|
- Les tests Salesforce n’ont pas abouti et un problème de transfert de données entre parties de Salesforce est en cours d’analyse.
|
||||||
|
- L’équipe de développement est en avance sur l’équipe de test, qui dispose encore d’un backlog de tickets à valider.
|
||||||
|
|
||||||
|
## À suivre
|
||||||
|
- Confirmer la stratégie retenue pour la migration forcée et la communication aux utilisateurs.
|
||||||
|
- Confirmer la date de livraison et le déclenchement du freeze.
|
||||||
|
- Valider la disponibilité de l’équipe de réception avant chaque livraison.
|
||||||
|
- Suivre les résultats des tests et de la régression complète avant la soumission.
|
||||||
@@ -0,0 +1,58 @@
|
|||||||
|
---
|
||||||
|
type: meeting
|
||||||
|
date: 2026-08-21
|
||||||
|
source: MeetMic
|
||||||
|
status: inbox
|
||||||
|
duration: 61m
|
||||||
|
meetmic_id: B8668D71-5BEB-4766-A7B0-FE27CCF4E15E
|
||||||
|
---
|
||||||
|
|
||||||
|
# Recording
|
||||||
|
|
||||||
|
## Résumé
|
||||||
|
- La mise en production de tefo.org est prévue jeudi, mais pourrait être décalée en raison de bugs critiques. Elle inclut une correction de la synchronisation permettant de gérer les heures depuis le CMS.
|
||||||
|
- Sur Idéllo, un manque d’espace disque a corrompu le cache et généré une liste d’environ 356 produits à corriger manuellement. Des épisodes présentent aussi des problèmes de transcription dans Directus.
|
||||||
|
- Le projet OTT progresse : traduction des tags autorisée, accès à Algolia transmis et flux opérationnel documenté. La livraison complète, notamment la recherche, paraît difficile pour la première semaine de septembre.
|
||||||
|
- Bukili doit recevoir une livraison propre après suppression des données de test. Le déploiement staging/preview/prod est défini, mais la synchronisation avec les stores et l’architecture des données restent à clarifier.
|
||||||
|
- Un projet de refonte de la synchronisation V2 et de remplacement de Directus par des fichiers JSON sur S3 est à l’étude, avec un objectif souhaité d’implémentation dans un an, sous réserve d’approbation.
|
||||||
|
- Le remplacement du fournisseur WordPress pour la portion ONFR est bloqué par des exigences d’assurance et de paiement net 15, avec une échéance opérationnelle au 30 septembre.
|
||||||
|
|
||||||
|
## Décisions
|
||||||
|
- Le travail de traduction des tags OTT de l’anglais au français a été autorisé pour un montant de 5 000 dollars.
|
||||||
|
- Des tests de faux événements en production seront réalisés avant le 17 septembre, avec l’objectif d’en effectuer au moins deux.
|
||||||
|
- L’absence initiale de sous-titrage sur les vidéos provenant de l’OTT est acceptée, la version sous-titrée devant arriver le lendemain.
|
||||||
|
- Le déploiement Bukili en production passera par un environnement de preview validé manuellement avant publication.
|
||||||
|
- L’extension concernant l’API target 35 des stores a été approuvée jusqu’au 31 octobre.
|
||||||
|
|
||||||
|
## Actions
|
||||||
|
- [ ] Rappeler aux équipes de tefo.org d’ajuster l’heure de la petite synchronisation à 55 minutes, voire 50 minutes, lors de la mise en production — Responsable : non identifié — Échéance : avant la mise en production
|
||||||
|
- [ ] Corriger manuellement la liste d’environ 356 produits concernés par les associations de collections — Responsable : Slimane — Échéance : non mentionnée
|
||||||
|
- [ ] Analyser les épisodes Idéllo sans transcription et identifier pourquoi le contenu présent dans Directus n’est pas renseigné dans le bon champ — Responsable : non identifié — Échéance : aujourd’hui et la semaine prochaine
|
||||||
|
- [ ] Envoyer le rapport des produits mis en retard depuis le 1er octobre 2025 sur Slack — Responsable : non identifié — Échéance : non mentionnée
|
||||||
|
- [ ] Tester les nouveaux builds OTT et transmettre un retour — Responsable : Jean-Claude — Échéance : non mentionnée
|
||||||
|
- [ ] Envoyer un courriel et organiser une réunion pour fixer les dates des tests OTT en production — Responsable : non identifié — Échéance : avant le 17 septembre
|
||||||
|
- [ ] Programmer les faux événements nécessaires aux tests OTT — Responsable : Pierre-Olivier — Échéance : avant le 17 septembre
|
||||||
|
- [ ] Clarifier la synchronisation entre les environnements Bukili et les déploiements des stores — Responsable : Abdoulaye — Échéance : non mentionnée
|
||||||
|
- [ ] Demander à Joël d’examiner l’alerte de fermeture liée à l’inactivité du compte SSO — Responsable : non identifié — Échéance : non mentionnée
|
||||||
|
- [ ] Livrer la partie Bukili à Abdoulaye — Responsable : non identifié — Échéance : septembre
|
||||||
|
- [ ] Vérifier les conditions contractuelles d’autres fournisseurs comparables à Trinx — Responsable : non identifié — Échéance : non mentionnée
|
||||||
|
- [ ] Obtenir l’avis de Julie Brisson sur l’acceptation du paiement net 15 et faire vérifier les exigences d’assurance par le juridique — Responsable : non identifié — Échéance : non mentionnée
|
||||||
|
|
||||||
|
## Blocages / Risques
|
||||||
|
- La mise en production de tefo.org peut être retardée par des bugs critiques.
|
||||||
|
- Les problèmes de synchronisation ont déjà entraîné des contenus incomplets, notamment à cause d’un cache corrompu sur un serveur arrivé à saturation.
|
||||||
|
- Le rapport des produits mis en retard comporte des éléments dont la source n’est pas toujours vérifiable : absence de tickets ou de conversations Slack associées.
|
||||||
|
- Le calendrier OTT est incertain pour la recherche et d’autres fonctionnalités. Les relations entre JW Player et Algolia doivent être confirmées avant la création éventuelle d’un nouvel index.
|
||||||
|
- L’architecture Bukili envisagée pourrait provoquer une double intégration et une perte ou une incohérence des données entre les deux méthodes d’accès.
|
||||||
|
- La migration des mots de passe n’a été validée que sur un échantillon d’environ 1 000 utilisateurs sur 33 000.
|
||||||
|
- Un compte lié au SSO risque d’être fermé pour inactivité après le retrait du SSO de Bukili.
|
||||||
|
- Le fournisseur WordPress pressenti pour ONFR ne respecte pas les exigences d’assurance et demande un paiement net 15 au lieu de net 30. Son remplacement est urgent compte tenu de l’échéance du 30 septembre.
|
||||||
|
- Le projet de remplacement de Directus et de refonte de la synchronisation aurait un impact majeur sur les sites et les données d’ABBA et nécessite d’abord une documentation complète et l’aval de Mohamed.
|
||||||
|
|
||||||
|
## À suivre
|
||||||
|
- Confirmer la date effective de mise en production de tefo.org et vérifier la correction de la synchronisation.
|
||||||
|
- Suivre la correction des produits Idéllo et l’analyse des transcriptions manquantes avec Joël.
|
||||||
|
- Suivre les tests OTT, les nouveaux builds, la traduction des tags et la disponibilité des fonctionnalités pour septembre.
|
||||||
|
- Définir et documenter la synchronisation de Bukili avec les stores avant la livraison propre.
|
||||||
|
- Évaluer la solution d’architecture basée sur S3 et JSON, puis obtenir l’approbation de Mohamed avant tout prototype.
|
||||||
|
- Obtenir les réponses de Julie Brisson et du service juridique concernant le fournisseur WordPress, et prévoir une solution de rechange si nécessaire.
|
||||||
@@ -0,0 +1,53 @@
|
|||||||
|
---
|
||||||
|
type: meeting
|
||||||
|
date: 2026-09-10
|
||||||
|
source: MeetMic
|
||||||
|
status: inbox
|
||||||
|
duration: 37m
|
||||||
|
meetmic_id: 005E7E46-E0E4-41D6-82ED-4B799F82EF5D
|
||||||
|
---
|
||||||
|
|
||||||
|
# Reunion equipe
|
||||||
|
|
||||||
|
## Résumé
|
||||||
|
- La réunion a principalement porté sur la préparation de la rencontre avec Francis, prévue mardi 15 à 15 h, dans la salle Gisèle Chrétien. Chaque personne présentera brièvement ses projets, leur état d’avancement, leurs impacts et leurs dépendances.
|
||||||
|
- La présentation des projets a été réorganisée : la documentation départementale sera rattachée à la partie plateforme plutôt qu’aux données, la gouvernance des données sera présentée comme une pratique transversale, et le projet sera nommé « projet Données FMC ».
|
||||||
|
- Les principaux sujets data abordés sont Data Booking V3, Data Hub, Data OTT, l’intégration d’Umami et le monitoring des flux de synchronisation avec Mogador. Umami est encore au stade de mise en place des trackers, tandis que son intégration au Data Warehouse n’est pas prévue pour le prochain trimestre.
|
||||||
|
- L’équipe a discuté de la gestion des demandes SEO, du fonctionnement des tickets Jira et du processus à appliquer pour les fichiers ZIP liés à Idéllo.
|
||||||
|
- Plusieurs livraisons et migrations présentent des enjeux de calendrier, notamment OTT, Boukili et une livraison TFO prévue avant le 16 ou le 17.
|
||||||
|
|
||||||
|
## Décisions
|
||||||
|
- La documentation départementale sera présentée dans la partie plateforme, et non dans la partie données.
|
||||||
|
- La gouvernance des données sera présentée comme une pratique continue visant notamment une source de vérité unique dans Power BI, et non comme un projet autonome.
|
||||||
|
- Le projet sera désigné comme « projet Données FMC » plutôt que comme un « nouveau gabarit FMC ».
|
||||||
|
- Pour les fichiers ZIP destinés à Idéllo, chaque cours et chaque fichier ZIP devra faire l’objet d’un ticket Jira distinct. Les demandes ne seront pas traitées depuis des tickets fermés.
|
||||||
|
- Le traitement des demandes liées aux fichiers ZIP d’Idéllo ne commencera pas avant le 12 octobre.
|
||||||
|
- Le Snowflake de JW Player demeure la source de référence pour les données OTT pour le moment.
|
||||||
|
|
||||||
|
## Actions
|
||||||
|
- [ ] Préparer la présentation des projets pour la rencontre avec Francis — Responsable : équipe — Échéance : mardi 15
|
||||||
|
- [ ] Corriger et finaliser le document de présentation, notamment les catégories de projets — Responsable : non précisé — Échéance : avant mardi 15
|
||||||
|
- [ ] Poursuivre la mise en place des trackers Umami avec le fournisseur — Responsable : Jean-Claude — Échéance : non précisée
|
||||||
|
- [ ] Analyser les flux de synchronisation avec Mogador et mettre en place des alertes en cas d’échec — Responsable : Mohamed Slimane — Échéance : non précisée
|
||||||
|
- [ ] Continuer à renseigner et mettre à jour les tickets Jira avant de commencer le traitement et lors de leur fermeture — Responsable : équipe — Échéance : non précisée
|
||||||
|
- [ ] Créer les tickets Jira nécessaires pour chaque cours et chaque fichier ZIP destiné à Idéllo — Responsable : Jason / demandeurs concernés — Échéance : à partir du 12 octobre
|
||||||
|
- [ ] Recompiler les fichiers ZIP reçus, puis les transmettre à Ellen Chalent pour leur mise en ligne — Responsable : équipe — Échéance : non précisée
|
||||||
|
- [ ] Clarifier avec Julie et Carole le calendrier de livraison et de validation d’OTT — Responsable : non précisé — Échéance : non précisée
|
||||||
|
- [ ] Effectuer des tests de régression ciblés sur la livraison TFO liée au live et au carousel — Responsable : Ajar — Échéance : avant le 16 ou le 17
|
||||||
|
- [ ] Organiser un échange sur les recommandations de service tracking pour MAMI — Responsable : Rabiba et Amandou — Échéance : non précisée
|
||||||
|
|
||||||
|
## Blocages / Risques
|
||||||
|
- La livraison OTT risque de ne pas être prête à temps en raison de régressions constatées. Une livraison le week-end pourrait être nécessaire pour viser la mise en ligne avant le 14 septembre, en vue de l’émission live du 17.
|
||||||
|
- La migration de Boukili pourrait nécessiter deux pipelines de données en parallèle, pour Firestore et AWS, ainsi qu’une logique de fusion et de déduplication.
|
||||||
|
- Les utilisateurs disposant de plusieurs devices risquent de perdre leur progression si certains devices continuent d’écrire dans Firestore après la migration. Une réponse de l’équipe concernée est attendue.
|
||||||
|
- La capacité QA constitue un goulot d’étranglement, une seule personne étant affectée à quatre sites. Un QA permanent supplémentaire ou un renfort ponctuel sont envisagés.
|
||||||
|
- Les absences prochaines d’Ajar, Jean-Claude et Joël pourraient ralentir l’équipe pendant quelques jours.
|
||||||
|
- L’investissement à long terme dans OTT et JW Player reste incertain, le contrat JW Player arrivant à échéance dans un an.
|
||||||
|
|
||||||
|
## À suivre
|
||||||
|
- Tenir la rencontre avec Francis et recueillir ses éventuelles questions sur les projets, les priorités et les besoins QA.
|
||||||
|
- Suivre la réponse du fournisseur concernant les régressions et le calendrier de livraison OTT.
|
||||||
|
- Clarifier le scénario de migration multi-device de Boukili avec Carole et l’équipe concernée.
|
||||||
|
- Suivre l’analyse du document FMC et les éléments pouvant être automatisés.
|
||||||
|
- Suivre l’intégration future des données Umami au Data Warehouse.
|
||||||
|
- Contrôler la mise en œuvre systématique du processus de tickets Jira pour Idéllo à partir du 12 octobre.
|
||||||
@@ -0,0 +1,96 @@
|
|||||||
|
|
||||||
|
**Date:** 2026-09-10
|
||||||
|
**Duration:** 30 min
|
||||||
|
**Attendees:**
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 📢 Announcements
|
||||||
|
|
||||||
|
Company / Department / CTO updates
|
||||||
|
|
||||||
|
- Rencontre avec Francis le 15 sept
|
||||||
|
- Chacun va présenter, on va parler des projets
|
||||||
|
- Ticket Jira, je vois une petite amélioration mais encore du retard. Ne pas tjrs aller dans le mode execution et penser aux ticket
|
||||||
|
-
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 🔄 Operations
|
||||||
|
|
||||||
|
Anything affecting day-to-day operations?
|
||||||
|
|
||||||
|
Examples:
|
||||||
|
- vacations
|
||||||
|
- coverage
|
||||||
|
- SLA concerns
|
||||||
|
- incoming workload
|
||||||
|
- incidents
|
||||||
|
|
||||||
|
- Hajar vacation
|
||||||
|
- Jean-Claude vacation
|
||||||
|
- Joel off
|
||||||
|
-
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 🤝 Team Coordination
|
||||||
|
|
||||||
|
Things that require coordination between teammates.
|
||||||
|
|
||||||
|
Examples:
|
||||||
|
- handoffs
|
||||||
|
- dependencies
|
||||||
|
- waiting on someone
|
||||||
|
- knowledge transfer
|
||||||
|
- testing
|
||||||
|
- reviews
|
||||||
|
|
||||||
|
| Topic | Owner(s) | Next Step |
|
||||||
|
|--------|----------|-----------|
|
||||||
|
| | | |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# ⚠️ Risks / Blockers
|
||||||
|
|
||||||
|
Only blockers that need team visibility or help.
|
||||||
|
|
||||||
|
| Risk | Owner | Action |
|
||||||
|
| ----------------------------------- | ----- | --------------------- |
|
||||||
|
| OTT - risque de livraison en retard | JC | Waiting for Ethan |
|
||||||
|
| Boukili | JC | En cours de livraison |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# ✅ Decisions
|
||||||
|
|
||||||
|
Only decisions affecting the team.
|
||||||
|
|
||||||
|
- [[2026-09-10 - Flux Zip pour les maleos qui vont sur Idello]]
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 👏 Recognition
|
||||||
|
|
||||||
|
Wins from this week.
|
||||||
|
|
||||||
|
-
|
||||||
|
-
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 📋 Action Items
|
||||||
|
|
||||||
|
| Action | Owner | Due |
|
||||||
|
| ------ | ----- | --- |
|
||||||
|
| | | |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 📝 Parking Lot
|
||||||
|
|
||||||
|
Items requiring another discussion.
|
||||||
|
|
||||||
|
- Livraison TFO avant le 16 pour le live event -> Hajar va basculer
|
||||||
|
-
|
||||||
+38
@@ -0,0 +1,38 @@
|
|||||||
|
---
|
||||||
|
type: meeting
|
||||||
|
date: 2026-08-21
|
||||||
|
source: MeetMic
|
||||||
|
status: inbox
|
||||||
|
duration: 26m
|
||||||
|
meetmic_id: 05BBECB0-DA30-4FFB-AC60-DFDAB75EDB87
|
||||||
|
---
|
||||||
|
|
||||||
|
# Boukili : Choix de la direction visuelle pour la phase 2
|
||||||
|
|
||||||
|
## Résumé
|
||||||
|
- Zemind a présenté trois thèmes pour la reconstruction et les améliorations de Boukili : sombre, violet et clair.
|
||||||
|
- Les propositions conservent la charte graphique actuelle de Boukili tout en améliorant l’accessibilité, la navigation, les icônes et l’affichage des informations.
|
||||||
|
- Le thème clair a été préféré pour sa lisibilité, malgré un rendu jugé trop blanc et manquant légèrement de dynamisme.
|
||||||
|
- Des suggestions ont été formulées pour intégrer davantage les couleurs de la marque, notamment le bleu-vert de Boukili, et pour améliorer la mise en forme de certains éléments comme le tableau.
|
||||||
|
- La version mobile présente les informations des élèves sous forme de cartes. Le défilement est prévu sur mobile, tandis que la pagination est prévue sur tablette.
|
||||||
|
|
||||||
|
## Décisions
|
||||||
|
- Le thème clair est retenu comme base de travail, avec des ajustements de couleurs inspirés de la charte graphique de Boukili.
|
||||||
|
|
||||||
|
## Actions
|
||||||
|
- [ ] Transmettre à Zemind les retours sur le thème clair et les suggestions de couleurs de Boukili.
|
||||||
|
- [ ] Envoyer les codes couleurs de la charte graphique afin de faciliter les ajustements.
|
||||||
|
- [ ] Regrouper les captures d’écran et les commentaires dans un Google Doc pour permettre les retours asynchrones.
|
||||||
|
|
||||||
|
## Blocages / Risques
|
||||||
|
- La pagination sur ordinateur fait débat : elle pourrait être moins pratique que le défilement, notamment lorsque la recherche et le filtrage permettent déjà de trouver un élève.
|
||||||
|
- Le thème clair doit être ajusté pour éviter un rendu trop blanc tout en conservant une bonne lisibilité et un contraste accessible.
|
||||||
|
|
||||||
|
## À suivre
|
||||||
|
- Organiser une discussion dédiée sur la pertinence de la pagination et ses éventuelles variantes selon l’appareil.
|
||||||
|
- Valider les ajustements visuels proposés par Zemind avant de poursuivre le développement des autres interfaces.
|
||||||
|
- Aborder les fonctionnalités lors d’une prochaine validation.
|
||||||
|
|
||||||
|
### Related
|
||||||
|
- [[2026-08-17 - Boukili PROD- Alignement infra et déploiement du replicat]]
|
||||||
|
- [[Boukili - Choix de la direction visuelle pour la phase 2]]
|
||||||
@@ -0,0 +1,41 @@
|
|||||||
|
---
|
||||||
|
type: meeting
|
||||||
|
date: 2026-09-10
|
||||||
|
source: MeetMic
|
||||||
|
status: inbox
|
||||||
|
duration: 21m
|
||||||
|
meetmic_id: 0D6EED25-BB8C-4366-BC07-819F4DABDB7C
|
||||||
|
---
|
||||||
|
|
||||||
|
# Recording
|
||||||
|
|
||||||
|
## Résumé
|
||||||
|
- La migration de Firebase vers AWS présente un risque important pour les utilisateurs connectés sur plusieurs appareils, notamment en cas de versions différentes de l’application et d’absence de synchronisation des progrès.
|
||||||
|
- Des incertitudes persistent sur la fiabilité de la migration des données, ainsi que sur une régression liée à Salesforce et sur d’autres éléments data nécessitant une expertise technique.
|
||||||
|
- Les livraisons fréquentes et non alignées avec le rythme de test prévu entraînent une surcharge, des tests répétés et un manque de visibilité sur l’état réel de la version.
|
||||||
|
- L’équipe doit clarifier les points bloquants, les solutions possibles et les estimations avant de définir une nouvelle date de mise en production.
|
||||||
|
|
||||||
|
## Décisions
|
||||||
|
- La mise en production prévue lundi est annulée.
|
||||||
|
- Aucune nouvelle date de déploiement ne sera fixée avant clarification des blocages, évaluation des solutions et obtention d’estimations fiables.
|
||||||
|
|
||||||
|
## Actions
|
||||||
|
- [ ] Organiser un point technique avec Abiba pour clarifier les problèmes liés à la data et les points critiques — Échéance : demain matin
|
||||||
|
- [ ] Préparer un email détaillant les blocages critiques et le soumettre à l’équipe pour validation avant envoi — Responsable : non identifié
|
||||||
|
- [ ] Évaluer avec The Mind la faisabilité, le coût et le délai d’une intervention de l’IBO sur la migration — Échéance : à partir du point prévu demain
|
||||||
|
- [ ] Informer Mohamed des raisons du report après clarification avec Abiba — Responsable : non identifié
|
||||||
|
- [ ] Obtenir des estimations sur la durée nécessaire pour résoudre les problèmes restants — Responsable : The Mind
|
||||||
|
|
||||||
|
## Blocages / Risques
|
||||||
|
- Risque de perte ou de non-synchronisation des données pour les utilisateurs passant d’une version Firebase à AWS tout en utilisant plusieurs appareils, dont certains non mis à jour.
|
||||||
|
- Régression Salesforce encore en cours d’investigation, sans retour disponible au moment de la réunion.
|
||||||
|
- Fiabilité de la migration des données non confirmée à 100 %.
|
||||||
|
- Les solutions actuellement suggérées, notamment l’acceptation d’une perte de données ou d’une fiabilité insuffisante, ne sont pas acceptables.
|
||||||
|
- Le rythme des livraisons perturbe les tests et empêche de disposer du recul nécessaire pour estimer les délais.
|
||||||
|
|
||||||
|
## À suivre
|
||||||
|
- Retour d’Abiba sur les problématiques data et la migration.
|
||||||
|
- Retour sur la régression Salesforce.
|
||||||
|
- Vérification auprès de The Mind et de l’IBO de la possibilité de bloquer le retour vers l’ancienne version ou de forcer la mise à jour.
|
||||||
|
- Clarification du traitement des utilisateurs qui se reconnecteront après la période de 90 jours.
|
||||||
|
- Définition d’une nouvelle échéance après résolution ou mitigation des blocages.
|
||||||
@@ -0,0 +1,40 @@
|
|||||||
|
---
|
||||||
|
type: meeting
|
||||||
|
date: 2026-09-10
|
||||||
|
source: MeetMic
|
||||||
|
status: inbox
|
||||||
|
duration: 17m
|
||||||
|
meetmic_id: B6A3C0A2-EC0E-4373-A44E-313D8AE6B832
|
||||||
|
---
|
||||||
|
|
||||||
|
# Daily Meeting TFO vs Zemind
|
||||||
|
|
||||||
|
## Résumé
|
||||||
|
- Une nouvelle build dédiée au test de la migration des données doit être envoyée après validation QA, suivie d’une build complète prévue le lendemain, considérée comme release candidate.
|
||||||
|
- Quatre sujets techniques restent à arbitrer : retry de suivi de la dernière activité, Firebase auth lockout, message demandant la mise à jour des appareils et contrôle de version dans Contentful.
|
||||||
|
- Le Firebase auth lockout pourrait être ajouté côté backend avant le go live, mais sa faisabilité n’est estimée qu’à 95 %. Sans lockout, les appareils non mis à jour resteraient utilisables, mais la progression ne serait pas synchronisée.
|
||||||
|
- L’équipe a vérifié le fonctionnement attendu de l’environnement web de production, du bucket S3 de livraison et de la preview distribution. Un déploiement réel doit encore valider ce workflow.
|
||||||
|
- Le déploiement de production doit notamment permettre de tester la fonctionnalité de réinitialisation du mot de passe. Abdullah a également demandé un accès à Firebase app distribution pour tester sur Android.
|
||||||
|
|
||||||
|
## Décisions
|
||||||
|
Aucune.
|
||||||
|
|
||||||
|
## Actions
|
||||||
|
- [ ] Envoyer la liste des quatre sujets nécessitant une décision — Échéance : rapidement, avant la prochaine build
|
||||||
|
- [ ] Donner un retour sur les sujets à implémenter afin de permettre leur intégration dans la build suivante — Échéance : fin de journée
|
||||||
|
- [ ] Vérifier la configuration du pipeline, pousser la build web vers la branche principale et tester le déploiement via le bucket S3 — Échéance : après la réunion
|
||||||
|
- [ ] Déployer une build de production pour valider le workflow et tester la réinitialisation du mot de passe — Échéance : fin de journée
|
||||||
|
- [ ] Ajouter Abdullah à Firebase app distribution pour les tests Android
|
||||||
|
|
||||||
|
## Blocages / Risques
|
||||||
|
- Le délai restant est limité à environ un jour et demi ; l’implémentation et la validation des quatre sujets pourraient empêcher le traitement de certains bugs P3 ou P4.
|
||||||
|
- Le fonctionnement du système de version existant dans Contentful ne peut pas être vérifié actuellement.
|
||||||
|
- Le Firebase auth lockout n’est pas encore confirmé avec certitude.
|
||||||
|
- Le workflow de déploiement de production et de preview distribution n’a pas encore été testé avec une vraie build de production.
|
||||||
|
|
||||||
|
## À suivre
|
||||||
|
- Arbitrer les quatre sujets techniques et confirmer ceux à intégrer.
|
||||||
|
- Valider la build de migration, puis la release candidate prévue le lendemain.
|
||||||
|
- Confirmer le déploiement web de production et le bon fonctionnement du workflow.
|
||||||
|
- Décider ultérieurement de la gestion du go live après la soumission des applications.
|
||||||
|
- Poursuivre les échanges et refaire un point le lendemain.
|
||||||
@@ -38,3 +38,7 @@ meetmic_id: 9CEB3804-D724-48AF-994C-01E0CBFBC0CE
|
|||||||
- Clarifier la responsabilité de la maintenance et des mises à jour des Dockerfiles.
|
- Clarifier la responsabilité de la maintenance et des mises à jour des Dockerfiles.
|
||||||
- Confirmer le modèle de synchronisation entre GitHub et GitLab, idéalement dans un seul sens.
|
- Confirmer le modèle de synchronisation entre GitHub et GitLab, idéalement dans un seul sens.
|
||||||
- Confirmer les éléments contractuels concernant la propriété et le contrôle des images Docker.
|
- Confirmer les éléments contractuels concernant la propriété et le contrôle des images Docker.
|
||||||
|
|
||||||
|
|
||||||
|
### Related
|
||||||
|
- [[2026-08-18 - Idello - Estimer le temps d'avoir des images docker propers avec aucune dépendances]]
|
||||||
@@ -0,0 +1,29 @@
|
|||||||
|
## Governance
|
||||||
|
|
||||||
|
**Executive Sponsor:** Xavier
|
||||||
|
**Executive Alignment:** Mohammed
|
||||||
|
**Opportunity Lead:** Amadou
|
||||||
|
**External relationship / Lunii:** Amadou
|
||||||
|
|
||||||
|
### Contributors
|
||||||
|
|
||||||
|
- Education — educational positioning, reach and evidence
|
||||||
|
- Product — digital audience, usage and ecosystem
|
||||||
|
- Content — IP / universe selection
|
||||||
|
- Marketing — audience / brand data as required
|
||||||
|
|
||||||
|
## Current Phase
|
||||||
|
|
||||||
|
**Phase 1 — Partnership exploration**
|
||||||
|
|
||||||
|
Goal:
|
||||||
|
|
||||||
|
> Obtain sufficient interest from Lunii to enter formal discussions
|
||||||
|
> about a potential TFO × Lunii collaboration.
|
||||||
|
|
||||||
|
## Gate to Phase 2
|
||||||
|
|
||||||
|
Phase 2 begins only if Lunii expresses concrete interest in
|
||||||
|
exploring a collaboration.
|
||||||
|
|
||||||
|
Until then, we are **not designing the final product**.
|
||||||
@@ -0,0 +1,104 @@
|
|||||||
|
# TFO × Lunii — Data Pack
|
||||||
|
|
||||||
|
> **Purpose:** Gather the strongest evidence demonstrating why TFO is a valuable partner for Lunii.
|
||||||
|
|
||||||
|
## Key Numbers
|
||||||
|
|
||||||
|
|Metric|Value|Period|Source|Why it matters to Lunii|
|
||||||
|
|---|--:|---|---|---|
|
||||||
|
|TFO.org users|TBD|TBD|TBD|Demonstrates digital reach|
|
||||||
|
|Youth video views|TBD|TBD|TBD|Demonstrates consumption of youth content|
|
||||||
|
|Youth audience|TBD|TBD|TBD|Demonstrates access to target audience|
|
||||||
|
|Ontario reach|TBD|TBD|TBD|Demonstrates strength in core market|
|
||||||
|
|Canada outside Quebec|TBD|TBD|TBD|Demonstrates unique francophone reach|
|
||||||
|
|
||||||
|
## Digital Reach
|
||||||
|
|
||||||
|
### TFO.org
|
||||||
|
|
||||||
|
- Monthly users:
|
||||||
|
|
||||||
|
- Annual users:
|
||||||
|
|
||||||
|
- Video views:
|
||||||
|
|
||||||
|
- Youth content consumption:
|
||||||
|
|
||||||
|
- Mobile / tablet usage:
|
||||||
|
|
||||||
|
- Geography:
|
||||||
|
|
||||||
|
|
||||||
|
### Apps / OTT
|
||||||
|
|
||||||
|
- Installs:
|
||||||
|
|
||||||
|
- Active users:
|
||||||
|
|
||||||
|
- Viewing:
|
||||||
|
|
||||||
|
- Platforms:
|
||||||
|
|
||||||
|
- Relevant youth usage:
|
||||||
|
|
||||||
|
|
||||||
|
### Social
|
||||||
|
|
||||||
|
- YouTube:
|
||||||
|
|
||||||
|
- Instagram:
|
||||||
|
|
||||||
|
- TikTok:
|
||||||
|
|
||||||
|
- Facebook:
|
||||||
|
|
||||||
|
- Other:
|
||||||
|
|
||||||
|
|
||||||
|
## Educational Reach
|
||||||
|
|
||||||
|
### IDÉLLO
|
||||||
|
|
||||||
|
- Registered users:
|
||||||
|
|
||||||
|
- Teachers:
|
||||||
|
|
||||||
|
- Schools:
|
||||||
|
|
||||||
|
- School boards:
|
||||||
|
|
||||||
|
- Geographic reach:
|
||||||
|
|
||||||
|
- Usage:
|
||||||
|
|
||||||
|
|
||||||
|
### Education Network
|
||||||
|
|
||||||
|
- Ontario:
|
||||||
|
|
||||||
|
- Other provinces / territories:
|
||||||
|
|
||||||
|
- Partnerships:
|
||||||
|
|
||||||
|
- Relevant programs:
|
||||||
|
|
||||||
|
|
||||||
|
## Youth Content
|
||||||
|
|
||||||
|
|Property|Audience / Usage|Age|Recognition|Notes|
|
||||||
|
|---|--:|---|---|---|
|
||||||
|
|TBD|||||
|
||||||
|
|TBD|||||
|
||||||
|
|TBD|||||
|
||||||
|
|
||||||
|
## Francophone Canada
|
||||||
|
|
||||||
|
Evidence demonstrating TFO's position within francophone communities in Canada.
|
||||||
|
|
||||||
|
- Ontario:
|
||||||
|
|
||||||
|
- Outside Ontario:
|
||||||
|
|
||||||
|
- Schools:
|
||||||
|
|
||||||
|
- Fam
|
||||||
@@ -0,0 +1,126 @@
|
|||||||
|
# TFO × Lunii — IP Shortlist
|
||||||
|
|
||||||
|
> **Question:** Which TFO universes best demonstrate the potential of a TFO × Lunii collaboration?
|
||||||
|
|
||||||
|
## Selection Criteria
|
||||||
|
|
||||||
|
A strong candidate should ideally have:
|
||||||
|
|
||||||
|
- recognizable characters or universe;
|
||||||
|
|
||||||
|
- relevance to Lunii's target age;
|
||||||
|
|
||||||
|
- strong storytelling potential;
|
||||||
|
|
||||||
|
- ability to work without visuals;
|
||||||
|
|
||||||
|
- potential for interaction / choices;
|
||||||
|
|
||||||
|
- educational or discovery potential;
|
||||||
|
|
||||||
|
- existing audience;
|
||||||
|
|
||||||
|
- rights allowing exploration of another format.
|
||||||
|
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Candidate 1 — [Property]
|
||||||
|
|
||||||
|
### Audience
|
||||||
|
|
||||||
|
**Target age:**
|
||||||
|
**Existing reach:**
|
||||||
|
**Where it currently lives:**
|
||||||
|
|
||||||
|
### Universe
|
||||||
|
|
||||||
|
What makes this universe recognizable or interesting?
|
||||||
|
|
||||||
|
### Why it could work on Lunii
|
||||||
|
|
||||||
|
How could the universe naturally become an audio experience?
|
||||||
|
|
||||||
|
### Example
|
||||||
|
|
||||||
|
> One very short example of a possible Lunii experience.
|
||||||
|
|
||||||
|
### Educational Potential
|
||||||
|
|
||||||
|
### Evidence
|
||||||
|
|
||||||
|
### Rights / Constraints
|
||||||
|
|
||||||
|
- Rights status: TBD
|
||||||
|
|
||||||
|
- Audio adaptation rights: TBD
|
||||||
|
|
||||||
|
- Characters / talent considerations: TBD
|
||||||
|
|
||||||
|
|
||||||
|
### Assessment
|
||||||
|
|
||||||
|
**Fit with Lunii:** ⭐⭐⭐⭐⭐
|
||||||
|
**Audience strength:** ⭐⭐⭐⭐⭐
|
||||||
|
**Audio potential:** ⭐⭐⭐⭐⭐
|
||||||
|
**Educational potential:** ⭐⭐⭐⭐⭐
|
||||||
|
**Rights confidence:** ❓
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Candidate 2 — [Property]
|
||||||
|
|
||||||
|
Same structure.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Candidate 3 — [Property]
|
||||||
|
|
||||||
|
Same structure.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Wildcard — Francophonie canadienne
|
||||||
|
|
||||||
|
This does not necessarily need to be based on an existing TFO property.
|
||||||
|
|
||||||
|
### Concept
|
||||||
|
|
||||||
|
Interactive audio adventures allowing children to discover different francophone communities across Canada through storytelling.
|
||||||
|
|
||||||
|
Possible settings:
|
||||||
|
|
||||||
|
- Ontario français
|
||||||
|
|
||||||
|
- Acadie
|
||||||
|
|
||||||
|
- Manitoba
|
||||||
|
|
||||||
|
- Northern Canada
|
||||||
|
|
||||||
|
- Western Canada
|
||||||
|
|
||||||
|
|
||||||
|
### Why it matters
|
||||||
|
|
||||||
|
This could combine TFO's educational mission and knowledge of francophone Canada with Lunii's screen-free storytelling format.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Recommended Shortlist
|
||||||
|
|
||||||
|
### 1. TBD
|
||||||
|
|
||||||
|
**Why:**
|
||||||
|
|
||||||
|
### 2. TBD
|
||||||
|
|
||||||
|
**Why:**
|
||||||
|
|
||||||
|
### 3. TBD
|
||||||
|
|
||||||
|
**Why:**
|
||||||
|
|
||||||
|
## Not Recommended
|
||||||
|
|
||||||
|
Properties considered but excluded, with reason:
|
||||||
@@ -0,0 +1,203 @@
|
|||||||
|
# TFO × Lunii — Pitch
|
||||||
|
|
||||||
|
> # Les univers TFO prennent vie sans écran.
|
||||||
|
|
||||||
|
## Objective
|
||||||
|
|
||||||
|
At the end of the meeting, we want Lunii to think:
|
||||||
|
|
||||||
|
> **TFO could bring something valuable and distinctive to Lunii in Canada. We should explore this further.**
|
||||||
|
|
||||||
|
We are **not** trying to close a deal in this meeting.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# Storyline
|
||||||
|
|
||||||
|
## 1 — Les univers TFO prennent vie sans écran
|
||||||
|
|
||||||
|
**Message:**
|
||||||
|
|
||||||
|
TFO and Lunii have an opportunity to extend francophone children's universes beyond the screen.
|
||||||
|
|
||||||
|
**Visual:**
|
||||||
|
|
||||||
|
TFO × Lunii
|
||||||
|
|
||||||
|
**Say:**
|
||||||
|
|
||||||
|
TBD
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 2 — TFO
|
||||||
|
|
||||||
|
**Message:**
|
||||||
|
|
||||||
|
TFO is more than a television network.
|
||||||
|
|
||||||
|
We are a francophone educational media organization with a direct relationship with children, families and educators.
|
||||||
|
|
||||||
|
**Proof:**
|
||||||
|
|
||||||
|
- TBD
|
||||||
|
|
||||||
|
- TBD
|
||||||
|
|
||||||
|
- TBD
|
||||||
|
|
||||||
|
|
||||||
|
**Say:**
|
||||||
|
|
||||||
|
TBD
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 3 — Our Audience
|
||||||
|
|
||||||
|
**Message:**
|
||||||
|
|
||||||
|
TFO already reaches the children and families that could be relevant to Lunii's Canadian growth.
|
||||||
|
|
||||||
|
**Key numbers:**
|
||||||
|
|
||||||
|
- TBD
|
||||||
|
|
||||||
|
- TBD
|
||||||
|
|
||||||
|
- TBD
|
||||||
|
|
||||||
|
|
||||||
|
**Say:**
|
||||||
|
|
||||||
|
TBD
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 4 — Education
|
||||||
|
|
||||||
|
**Message:**
|
||||||
|
|
||||||
|
TFO brings something beyond content: an established relationship with the educational ecosystem.
|
||||||
|
|
||||||
|
**Key numbers:**
|
||||||
|
|
||||||
|
- TBD
|
||||||
|
|
||||||
|
- TBD
|
||||||
|
|
||||||
|
|
||||||
|
**Potential contribution from Education:**
|
||||||
|
|
||||||
|
TBD
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 5 — Our Universes
|
||||||
|
|
||||||
|
**Message:**
|
||||||
|
|
||||||
|
TFO has characters and universes that can live beyond video.
|
||||||
|
|
||||||
|
### Universe 1
|
||||||
|
|
||||||
|
TBD
|
||||||
|
|
||||||
|
### Universe 2
|
||||||
|
|
||||||
|
TBD
|
||||||
|
|
||||||
|
### Universe 3
|
||||||
|
|
||||||
|
TBD
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 6 — Why TFO × Lunii
|
||||||
|
|
||||||
|
### Lunii brings
|
||||||
|
|
||||||
|
- screen-free experience;
|
||||||
|
|
||||||
|
- audio storytelling expertise;
|
||||||
|
|
||||||
|
- interactive storytelling;
|
||||||
|
|
||||||
|
- direct relationship with families.
|
||||||
|
|
||||||
|
|
||||||
|
### TFO brings
|
||||||
|
|
||||||
|
- francophone youth universes;
|
||||||
|
|
||||||
|
- educational expertise;
|
||||||
|
|
||||||
|
- Canadian francophone perspective;
|
||||||
|
|
||||||
|
- audience and distribution;
|
||||||
|
|
||||||
|
- relationship with educators.
|
||||||
|
|
||||||
|
|
||||||
|
### Together
|
||||||
|
|
||||||
|
> **A new way for francophone children in Canada to experience stories and learning without another screen.**
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 7 — Imagine...
|
||||||
|
|
||||||
|
Pick ONE strong example.
|
||||||
|
|
||||||
|
### Example
|
||||||
|
|
||||||
|
**[TFO Universe] × Lunii**
|
||||||
|
|
||||||
|
The child recognizes a character from TFO.
|
||||||
|
|
||||||
|
But instead of replaying the television episode, they enter a completely new audio adventure.
|
||||||
|
|
||||||
|
They choose where to go.
|
||||||
|
|
||||||
|
They make decisions.
|
||||||
|
|
||||||
|
They discover.
|
||||||
|
|
||||||
|
They become part of the story.
|
||||||
|
|
||||||
|
> **Same universe. New story. No screen.**
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 8 — Let's Explore It Together
|
||||||
|
|
||||||
|
We are not arriving with a predetermined business model or finished product.
|
||||||
|
|
||||||
|
We believe there is enough strategic alignment between TFO and Lunii to explore what we could build together.
|
||||||
|
|
||||||
|
### The Ask
|
||||||
|
|
||||||
|
> **Would Lunii be interested in exploring a TFO × Lunii collaboration with us?**
|
||||||
|
|
||||||
|
## Meeting Outcome
|
||||||
|
|
||||||
|
- 🟢 Interested → define Phase 2
|
||||||
|
|
||||||
|
- 🟡 Interested, different direction → explore / adapt
|
||||||
|
|
||||||
|
- 🔴 No strategic fit → document learning and close
|
||||||
|
|
||||||
|
|
||||||
|
## Questions for Lunii
|
||||||
|
|
||||||
|
- What are Lunii's priorities for Canada?
|
||||||
|
|
||||||
|
- Which audiences are they trying to grow?
|
||||||
|
|
||||||
|
- How do they normally structure IP partnerships?
|
||||||
|
|
||||||
|
- What makes a content partnership attractive to them?
|
||||||
|
|
||||||
|
- Which TFO assets or capabilities interest them most?
|
||||||
|
|
||||||
|
- Would they prefer an existing IP, original concept, educational collection, or another model?
|
||||||
@@ -0,0 +1,220 @@
|
|||||||
|
|
||||||
|
|
||||||
|
> **Les univers TFO prennent vie sans écran.**
|
||||||
|
|
||||||
|
## Status
|
||||||
|
|
||||||
|
**Phase:** Exploration / Business Development
|
||||||
|
**Executive sponsor:** Xavier
|
||||||
|
**Lead:** Amadou
|
||||||
|
**Executive alignment:** Mohammed B
|
||||||
|
**Strategic contributor:** Eric Genier, Directeur, service éducatif
|
||||||
|
|
||||||
|
## Objective
|
||||||
|
|
||||||
|
Obtenir l'intérêt de Lunii pour explorer une collaboration avec TFO.
|
||||||
|
|
||||||
|
La phase actuelle ne vise pas encore à définir ou produire une offre finale. Elle vise à démontrer pourquoi **TFO serait un partenaire intéressant pour Lunii au Canada**.
|
||||||
|
|
||||||
|
## Success Criteria — Phase 1
|
||||||
|
|
||||||
|
La phase exploratoire est considérée comme réussie si :
|
||||||
|
|
||||||
|
1. TFO obtient une rencontre avec les bons interlocuteurs chez Lunii.
|
||||||
|
|
||||||
|
2. TFO démontre clairement la valeur qu'il peut apporter à Lunii.
|
||||||
|
|
||||||
|
3. Lunii manifeste un intérêt concret à poursuivre la discussion.
|
||||||
|
|
||||||
|
4. Les deux organisations identifient au moins une piste de collaboration qui mérite d'être approfondie.
|
||||||
|
|
||||||
|
|
||||||
|
## Core Proposition
|
||||||
|
|
||||||
|
**Les univers TFO prennent vie sans écran.**
|
||||||
|
|
||||||
|
TFO pourrait permettre à certains de ses univers jeunesse de vivre sous forme d'expériences audio originales adaptées à Lunii.
|
||||||
|
|
||||||
|
TFO apporte notamment :
|
||||||
|
|
||||||
|
- des univers et propriétés jeunesse;
|
||||||
|
|
||||||
|
- une expertise en contenu éducatif;
|
||||||
|
|
||||||
|
- une connaissance des enfants et familles francophones au Canada;
|
||||||
|
|
||||||
|
- une présence dans le milieu éducatif;
|
||||||
|
|
||||||
|
- une capacité de promotion et de distribution numérique;
|
||||||
|
|
||||||
|
- un positionnement unique dans la francophonie canadienne.
|
||||||
|
|
||||||
|
|
||||||
|
Lunii apporte notamment :
|
||||||
|
|
||||||
|
- une plateforme audio jeunesse sans écran;
|
||||||
|
|
||||||
|
- une expertise dans la narration audio;
|
||||||
|
|
||||||
|
- une expérience interactive conçue pour les enfants;
|
||||||
|
|
||||||
|
- une marque et un produit déjà établis auprès des familles.
|
||||||
|
|
||||||
|
|
||||||
|
## What We Need to Prove
|
||||||
|
|
||||||
|
Notre première présentation doit répondre à une question :
|
||||||
|
|
||||||
|
> **Pourquoi Lunii devrait-il vouloir travailler avec TFO?**
|
||||||
|
|
||||||
|
### TFO reach
|
||||||
|
|
||||||
|
À documenter :
|
||||||
|
|
||||||
|
- audience jeunesse;
|
||||||
|
|
||||||
|
- utilisateurs / visiteurs numériques;
|
||||||
|
|
||||||
|
- visionnements;
|
||||||
|
|
||||||
|
- portée des propriétés jeunesse;
|
||||||
|
|
||||||
|
- présence au Canada hors Québec;
|
||||||
|
|
||||||
|
- portée en Ontario;
|
||||||
|
|
||||||
|
- portée auprès des écoles;
|
||||||
|
|
||||||
|
- enseignants / classes / conseils scolaires rejoints;
|
||||||
|
|
||||||
|
- données IDÉLLO pertinentes;
|
||||||
|
|
||||||
|
- réseaux sociaux / communautés;
|
||||||
|
|
||||||
|
- autres données démontrant notre capacité de distribution.
|
||||||
|
|
||||||
|
|
||||||
|
### TFO assets
|
||||||
|
|
||||||
|
Identifier :
|
||||||
|
|
||||||
|
- 3 à 5 univers jeunesse particulièrement adaptés à l'audio;
|
||||||
|
|
||||||
|
- personnages reconnaissables;
|
||||||
|
|
||||||
|
- propriétés dont TFO contrôle suffisamment les droits;
|
||||||
|
|
||||||
|
- contenu éducatif pouvant prolonger l'expérience;
|
||||||
|
|
||||||
|
- expertise éditoriale et pédagogique pertinente.
|
||||||
|
|
||||||
|
|
||||||
|
## Team — Exploration Phase
|
||||||
|
|
||||||
|
### Lead
|
||||||
|
|
||||||
|
**Amadou**
|
||||||
|
|
||||||
|
Responsable de :
|
||||||
|
|
||||||
|
- coordination de l'opportunité;
|
||||||
|
|
||||||
|
- relation avec Lunii;
|
||||||
|
|
||||||
|
- proposition de valeur;
|
||||||
|
|
||||||
|
- préparation du pitch;
|
||||||
|
|
||||||
|
- coordination des contributions internes;
|
||||||
|
|
||||||
|
- suivi des décisions et prochaines étapes.
|
||||||
|
|
||||||
|
|
||||||
|
### Directeur — Service éducatif
|
||||||
|
|
||||||
|
Contribution :
|
||||||
|
|
||||||
|
- proposition de valeur éducative;
|
||||||
|
|
||||||
|
- compréhension du milieu scolaire;
|
||||||
|
|
||||||
|
- portée éducative de TFO;
|
||||||
|
|
||||||
|
- opportunités potentielles autour de l'apprentissage;
|
||||||
|
|
||||||
|
- validation des affirmations et données éducatives.
|
||||||
|
|
||||||
|
|
||||||
|
### Product
|
||||||
|
|
||||||
|
Contribution :
|
||||||
|
|
||||||
|
- connaissance des audiences et produits numériques;
|
||||||
|
|
||||||
|
- données d'utilisation pertinentes;
|
||||||
|
|
||||||
|
- possibilités de parcours entre Lunii et l'écosystème TFO;
|
||||||
|
|
||||||
|
- expertise produit lorsque nécessaire.
|
||||||
|
|
||||||
|
|
||||||
|
### Content / IP
|
||||||
|
|
||||||
|
Contribution à identifier selon les propriétés retenues :
|
||||||
|
|
||||||
|
- sélection des univers;
|
||||||
|
|
||||||
|
- droits;
|
||||||
|
|
||||||
|
- potentiel éditorial;
|
||||||
|
|
||||||
|
- talents / personnages / production.
|
||||||
|
|
||||||
|
|
||||||
|
## Phase 1 — Deliverables
|
||||||
|
|
||||||
|
1. Opportunity Brief.
|
||||||
|
|
||||||
|
2. Sélection préliminaire de propriétés TFO.
|
||||||
|
|
||||||
|
3. Data pack / chiffres clés TFO.
|
||||||
|
|
||||||
|
4. Présentation courte **TFO × Lunii**.
|
||||||
|
|
||||||
|
5. Identification des interlocuteurs Lunii.
|
||||||
|
|
||||||
|
6. Première rencontre exploratoire.
|
||||||
|
|
||||||
|
|
||||||
|
## Out of Scope — Phase 1
|
||||||
|
|
||||||
|
Pour éviter de concevoir un projet avant d'avoir validé l'intérêt de Lunii :
|
||||||
|
|
||||||
|
- architecture technique;
|
||||||
|
|
||||||
|
- intégration TFO.org;
|
||||||
|
|
||||||
|
- développement logiciel;
|
||||||
|
|
||||||
|
- modèle commercial détaillé;
|
||||||
|
|
||||||
|
- calendrier de production;
|
||||||
|
|
||||||
|
- engagement budgétaire;
|
||||||
|
|
||||||
|
- sélection définitive des propriétés;
|
||||||
|
|
||||||
|
- négociation des droits;
|
||||||
|
|
||||||
|
- lancement produit.
|
||||||
|
|
||||||
|
|
||||||
|
Ces éléments seront abordés seulement si Lunii souhaite poursuivre.
|
||||||
|
|
||||||
|
## Next Step
|
||||||
|
|
||||||
|
Réunir les contributeurs internes nécessaires pour construire :
|
||||||
|
|
||||||
|
**« Pourquoi TFO + pourquoi maintenant + pourquoi Lunii devrait vouloir travailler avec nous? »**
|
||||||
|
|
||||||
|
Puis préparer l'approche initiale auprès de Lunii.
|
||||||
@@ -0,0 +1,80 @@
|
|||||||
|
---
|
||||||
|
type: project
|
||||||
|
status: proposed
|
||||||
|
year: 2026
|
||||||
|
owner: Amadou
|
||||||
|
started:
|
||||||
|
target_date:
|
||||||
|
priority:
|
||||||
|
tags:
|
||||||
|
- project
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
## TL;DR
|
||||||
|
|
||||||
|
Mogador Sync is the project to improve the synchronization between Mogador and the websites.
|
||||||
|
|
||||||
|
The objective is to make synchronization more reliable, reduce manual interventions, and establish a more maintainable and extensible architecture for future developments.
|
||||||
|
|
||||||
|
## Why This Project Exists
|
||||||
|
|
||||||
|
The current synchronization process has generated recurring operational issues and requires manual intervention.
|
||||||
|
|
||||||
|
The project aims to address the underlying synchronization architecture rather than continuing to handle individual incidents operationally.
|
||||||
|
|
||||||
|
## Objectives
|
||||||
|
|
||||||
|
- Improve synchronization reliability
|
||||||
|
- Reduce manual interventions
|
||||||
|
- Make failures easier to detect and diagnose
|
||||||
|
- Improve maintainability
|
||||||
|
- Provide a stronger foundation for future developments
|
||||||
|
|
||||||
|
## Current Status
|
||||||
|
|
||||||
|
**Status:** Active
|
||||||
|
|
||||||
|
### Current focus
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
### Latest update
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
### Blockers / Risks
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
## Scope
|
||||||
|
|
||||||
|
### In Scope
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
### Out of Scope
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
## Key Decisions
|
||||||
|
|
||||||
|
```dataview
|
||||||
|
LIST
|
||||||
|
FROM "20 Work/Decisions"
|
||||||
|
WHERE contains(file.outlinks, this.file.link)
|
||||||
|
SORT file.name DESC
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
### Related
|
||||||
|
|
||||||
|
- [[Proposition d'architecture Sync Mogador v2]]
|
||||||
|
- [[Résumé de la situation avec la Sync V1]]
|
||||||
|
- [[Demande d'evolution API Mogador v2 pour la synchronisation web]]
|
||||||
|
- [[Proposition d'architecture - Content Publication Engine]]
|
||||||
|
- [[2026-08-13 - Proposition synchro v2]]
|
||||||
|
- [[Consultation fournisseurs sites- proposition de publication JSON]]
|
||||||
|
- [[Charte de projet - Content Publication Engine]]
|
||||||
|
- [[Options pour supprimer ou reduire Mogador]]
|
||||||
@@ -7,7 +7,7 @@ duration: 19m
|
|||||||
meetmic_id: 841A2AA2-49B5-479E-8D4B-54D970861527
|
meetmic_id: 841A2AA2-49B5-479E-8D4B-54D970861527
|
||||||
---
|
---
|
||||||
|
|
||||||
# Flux : Live ONFR
|
# Flux : Live ONFR (avec les technicians)
|
||||||
|
|
||||||
## Résumé
|
## Résumé
|
||||||
|
|
||||||
@@ -42,3 +42,7 @@ meetmic_id: 841A2AA2-49B5-479E-8D4B-54D970861527
|
|||||||
- Déterminer qui assurera l’approbation technique et éditoriale dans l’équipe de ONFR.
|
- Déterminer qui assurera l’approbation technique et éditoriale dans l’équipe de ONFR.
|
||||||
- Vérifier le rôle de chaque équipe dans la programmation de la bannière, du direct sur le site et des mises à jour de métadonnées et d’AODA.
|
- Vérifier le rôle de chaque équipe dans la programmation de la bannière, du direct sur le site et des mises à jour de métadonnées et d’AODA.
|
||||||
- Tester le flux sur une ou deux émissions avant de documenter officiellement le processus dans Confluence.
|
- Tester le flux sur une ou deux émissions avant de documenter officiellement le processus dans Confluence.
|
||||||
|
|
||||||
|
|
||||||
|
### Related
|
||||||
|
- [[2026-08-20 - Toute une semaine - Le flux de publication]]
|
||||||
@@ -0,0 +1,37 @@
|
|||||||
|
---
|
||||||
|
type: meeting
|
||||||
|
date: 2026-09-08
|
||||||
|
source: MeetMic
|
||||||
|
status: inbox
|
||||||
|
duration: 9m
|
||||||
|
meetmic_id: 51A9D6A4-9EB8-479D-8AFF-C7997C9B3312
|
||||||
|
---
|
||||||
|
|
||||||
|
# Recording
|
||||||
|
|
||||||
|
## Résumé
|
||||||
|
- Le passage par Haywire pour générer l’URL récupérée par JWP fonctionne pour les tests.
|
||||||
|
- La question d’un deuxième URL de Chorus pour le live feed reste à trancher, notamment en raison d’un coût qui n’est pas clarifié.
|
||||||
|
- ONFR a confirmé une durée de 30 minutes pour le premier épisode et d’environ 28 minutes pour les suivants, ce qui nécessite une gestion spécifique de l’arrêt de JWP.
|
||||||
|
- Les trois premiers épisodes seront préparés le mercredi pour une mise en ligne le jeudi, avec une programmation non linéaire possible via Louise.
|
||||||
|
- Plusieurs problèmes techniques ont été corrigés ou sont en cours de validation, notamment l’affichage de l’après-live et l’intégration avec le site.
|
||||||
|
- Le fichier de sous-titrage malentendant ne s’affiche pas encore sur le site lors du test; la cause liée au lien, à la collection ou à la programmation reste incertaine.
|
||||||
|
|
||||||
|
## Décisions
|
||||||
|
- Utiliser le feed Haywire pour les tests et, pour l’instant, plutôt qu’un deuxième URL de Chorus.
|
||||||
|
- Prévoir une intervention humaine lorsque la durée d’un épisode diffère de la durée cible de 28 minutes.
|
||||||
|
- Préparer les trois premiers épisodes le mercredi afin de les publier le jeudi.
|
||||||
|
|
||||||
|
## Actions
|
||||||
|
- [ ] Écrire le script permettant à JWP d’arrêter l’enregistrement à 28 minutes — Responsable : Jean-Claude
|
||||||
|
- [ ] Réaliser le test de bout en bout avec le broadcast studio, avec un démarrage du test à 10 h, du direct à 10 h 10 et une vidéo de 10 minutes — Échéance : demain
|
||||||
|
- [ ] Vérifier avec Jean-Claude l’état de ses corrections et obtenir des précisions sur le problème d’affichage du fichier de sous-titrage malentendant — Responsable : participant non identifié — Échéance : lors de l’échange prévu avec Jean-Claude
|
||||||
|
|
||||||
|
## Blocages / Risques
|
||||||
|
- La durée variable des épisodes peut entraîner un arrêt incorrect de JWP sans intervention humaine.
|
||||||
|
- L’affichage du fichier de sous-titrage malentendant reste non résolu sur le site; le fichier texte à ODA n’a pas encore été testé.
|
||||||
|
|
||||||
|
## À suivre
|
||||||
|
- Déterminer s’il faut commander ou utiliser un deuxième URL de Chorus pour le live feed.
|
||||||
|
- Analyser les résultats du test de bout en bout et confirmer que les corrections de Jean-Claude et Willy règlent l’affichage de l’après-live.
|
||||||
|
- Clarifier pourquoi le fichier de sous-titrage ne s’affiche pas malgré l’envoi vers le site.
|
||||||
+41
@@ -0,0 +1,41 @@
|
|||||||
|
---
|
||||||
|
type: meeting
|
||||||
|
date: 2026-09-08
|
||||||
|
source: MeetMic
|
||||||
|
status: inbox
|
||||||
|
duration: 21m
|
||||||
|
meetmic_id: 2736AF13-E3F7-4419-9F82-59FCC4C39D39
|
||||||
|
---
|
||||||
|
|
||||||
|
# Direct ONFR : Point du feed pour le Live Event
|
||||||
|
|
||||||
|
## Résumé
|
||||||
|
- Le feed envoyé à JWP sera celui géré par l’équipe, sans sous-titrage, conformément à l’orientation déjà communiquée à la haute gestion.
|
||||||
|
- Le direct n’aura pas une durée fixe : environ 30 minutes pour le premier épisode, puis environ 20 à 28 minutes les semaines suivantes. Une présence sera nécessaire pour arrêter manuellement l’enregistrement.
|
||||||
|
- Le fonctionnement des ingest points, la facturation éventuelle lorsque JWP reçoit un stream et les statuts affichés dans JWP restent à clarifier.
|
||||||
|
- Les fichiers de sous-titrage du test précédent ne se sont pas affichés, probablement parce qu’ils n’étaient pas associés à une collection.
|
||||||
|
- La gestion du contenu après le live reste à préciser : maintien du flux JWP ou remplacement par la version principale enregistrée dans Louise/Magador.
|
||||||
|
|
||||||
|
## Décisions
|
||||||
|
- Utiliser le feed du studio sans sous-titrage pour les tests et le fonctionnement actuel.
|
||||||
|
- Conserver le processus de test actuel.
|
||||||
|
- Créer une collection test associée à une série test afin de valider le flux de sous-titrage.
|
||||||
|
|
||||||
|
## Actions
|
||||||
|
- [ ] Clarifier avec JWP le fonctionnement des ingest points et de la facturation — Échéance : demain
|
||||||
|
- [ ] Réaliser un nouvel événement de test d’environ 5 minutes avec le même point d’ingest — Échéance : demain
|
||||||
|
- [ ] Créer une collection test et vérifier l’affichage du sous-titrage — Échéance : aujourd’hui
|
||||||
|
- [ ] Organiser une réunion de suivi sur Chorus et JWP — Échéance : jeudi
|
||||||
|
- [ ] Transmettre les questions à poser à JWP — Échéance : demain avant 13 h
|
||||||
|
|
||||||
|
## Blocages / Risques
|
||||||
|
- La durée variable des directs complique l’arrêt automatique et nécessite un suivi manuel dans le dashboard.
|
||||||
|
- Le comportement exact de JWP lorsqu’un stream est reçu, ainsi que les éventuels frais associés, n’est pas confirmé.
|
||||||
|
- Les feeds, ingest points et événements JWP ne sont pas encore suffisamment documentés pour garantir une compréhension commune.
|
||||||
|
- Le choix entre le flux du live et la version principale dans Louise/Magador peut nécessiter un nouveau lien et dépend du comportement du site.
|
||||||
|
|
||||||
|
## À suivre
|
||||||
|
- Confirmer avec JWP le fonctionnement technique et la facturation.
|
||||||
|
- Documenter les différents feeds et ingest points utilisés.
|
||||||
|
- Déterminer le contenu affiché sur le site après le live avec Willy, Devon ou Mickaël.
|
||||||
|
- Vérifier le fonctionnement du sous-titrage avec la collection test.
|
||||||
@@ -0,0 +1,38 @@
|
|||||||
|
---
|
||||||
|
type: meeting
|
||||||
|
date: 2026-09-10
|
||||||
|
source: MeetMic
|
||||||
|
status: inbox
|
||||||
|
duration: 7m
|
||||||
|
meetmic_id: 89C10424-0F99-40F7-ACB1-4E67F47447AE
|
||||||
|
---
|
||||||
|
|
||||||
|
# Direct ONFR : Réponse sur le feed de JWP
|
||||||
|
|
||||||
|
## Résumé
|
||||||
|
- Un deuxième feed de Corus, actuellement inutilisé, pourrait être envoyé vers JW Player pour produire des enregistrements incluant les fichiers de sous-titrage en direct.
|
||||||
|
- Le même ingest point et la même URL seraient utilisés afin de ne pas modifier le flux existant.
|
||||||
|
- Un test sera réalisé avec Corus et JW Player pour vérifier la réception du feed et des sous-titrages.
|
||||||
|
- Les ingest points inutilisés doivent être nettoyés; certains ne peuvent toutefois pas être supprimés directement.
|
||||||
|
- Les informations concernant la facturation restent contradictoires : JW Player indique que l’adresse active entraîne des frais, tandis que les données disponibles indiquent que le flux ne serait pas écouté.
|
||||||
|
|
||||||
|
## Décisions
|
||||||
|
- Utiliser le deuxième feed de Corus pour un test d’envoi vers JW Player.
|
||||||
|
- Conserver les deux ingest points de référence indiqués dans le document PDF et demander à JW Player de supprimer ceux qui ne peuvent pas l’être directement.
|
||||||
|
- Ne pas modifier le flux actuellement en place.
|
||||||
|
|
||||||
|
## Actions
|
||||||
|
- [ ] Confirmer l’ingest point et transmettre l’URL à Corus — Responsable : non précisé
|
||||||
|
- [ ] Contacter Corus, notamment Chris Sandinot, pour modifier l’adresse du deuxième stream — Responsable : non précisé
|
||||||
|
- [ ] Réaliser le test de réception du feed et des sous-titrages avec Corus et JW Player — Responsable : non précisé
|
||||||
|
- [ ] Envoyer les adresses des flux « info.org 24-7 » et « info.org événement spécial » dans un format texte facilement copiable — Responsable : non précisé
|
||||||
|
- [ ] Informer Jean-Claude lorsque la mise en place sera terminée — Responsable : Ravi
|
||||||
|
- [ ] Envoyer un courriel de mise à jour et corriger le document concerné — Responsable : non précisé
|
||||||
|
|
||||||
|
## Blocages / Risques
|
||||||
|
- La facturation de JW Player n’est pas clarifiée : elle dépendrait soit de l’existence de l’adresse, soit de l’utilisation effective du flux.
|
||||||
|
- Certains ingest points ne peuvent pas être supprimés malgré une demande de suppression.
|
||||||
|
|
||||||
|
## À suivre
|
||||||
|
- Clarifier les conditions et les frais appliqués par JW Player.
|
||||||
|
- Vérifier les résultats du test d’envoi du deuxième feed et la présence des sous-titrages dans l’enregistrement.
|
||||||
@@ -0,0 +1,252 @@
|
|||||||
|
---
|
||||||
|
## date: 2026-08-27
|
||||||
|
status: active
|
||||||
|
project: OTT V2
|
||||||
|
type: project-note
|
||||||
|
target_date: 2026-09-09
|
||||||
|
risk: high
|
||||||
|
---
|
||||||
|
|
||||||
|
# OTT V2 - Search Recovery Plan
|
||||||
|
|
||||||
|
## TL;DR
|
||||||
|
|
||||||
|
La mise en production de la V2 OTT est ciblée pour le **9 septembre**.
|
||||||
|
|
||||||
|
La recherche fait partie du périmètre initial de la V2 et est maintenant confirmée comme un **prérequis à la mise en production**.
|
||||||
|
|
||||||
|
Lors de la priorisation du Live en juin, l'impact sur l'échéancier V2 a été validé avec le fournisseur. Celui-ci avait confirmé que cette priorisation **ne modifierait pas la date de livraison prévue**.
|
||||||
|
|
||||||
|
À la fin juillet, le fournisseur nous a informés que la recherche n'était pas fonctionnelle.
|
||||||
|
|
||||||
|
La solution retenue est d'utiliser **Algolia**, déjà utilisé sur d'autres plateformes de l'organisation. L'index existe déjà. L'intégration restante doit être réalisée par le fournisseur OTT.
|
||||||
|
|
||||||
|
**Objectif immédiat : obtenir une version testable au plus tard le 3 septembre.**
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Situation actuelle
|
||||||
|
|
||||||
|
**Cible de lancement :** 9 septembre
|
||||||
|
**Statut :** 🔴 À risque
|
||||||
|
**Bloqueur :** Recherche non disponible dans la V2
|
||||||
|
**Solution :** Intégration Algolia
|
||||||
|
**Responsable de l'intégration :** Fournisseur OTT
|
||||||
|
**Livraison demandée :** 3 septembre
|
||||||
|
**QA :** 1 journée minimum
|
||||||
|
**Go / No-Go :** 8 septembre
|
||||||
|
|
||||||
|
La date du 9 septembre demeure une **cible et non une date de lancement confirmée** tant que le fournisseur n'a pas confirmé sa date de livraison.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Chronologie
|
||||||
|
|
||||||
|
### Janvier 2026
|
||||||
|
|
||||||
|
- Lancement de la V1 OTT.
|
||||||
|
|
||||||
|
- Décision de ne pas faire de promotion Marketing importante de cette version.
|
||||||
|
|
||||||
|
- Début du travail sur la V2.
|
||||||
|
|
||||||
|
- La recherche fait partie des fonctionnalités prévues pour la V2.
|
||||||
|
|
||||||
|
|
||||||
|
### Juin 2026
|
||||||
|
|
||||||
|
- La diffusion Live devient une priorité pour la direction.
|
||||||
|
|
||||||
|
- Le développement Live prend donc priorité dans le séquencement des travaux.
|
||||||
|
|
||||||
|
- L'impact de cette nouvelle priorité est discuté avec le fournisseur OTT.
|
||||||
|
|
||||||
|
- **Le fournisseur confirme que cette priorisation ne devrait pas modifier l'échéancier de livraison de la V2.**
|
||||||
|
|
||||||
|
|
||||||
|
### Fin juillet 2026
|
||||||
|
|
||||||
|
- Le fournisseur nous informe que la recherche n'est pas fonctionnelle dans la V2.
|
||||||
|
|
||||||
|
- Intervention de notre équipe pour identifier une solution.
|
||||||
|
|
||||||
|
- Décision de proposer l'utilisation d'Algolia, déjà utilisé dans l'organisation.
|
||||||
|
|
||||||
|
|
||||||
|
### Août 2026
|
||||||
|
|
||||||
|
- L'index Algolia nécessaire existe déjà.
|
||||||
|
|
||||||
|
- L'intégration requise est relativement ciblée : le fournisseur doit faire la correspondance entre la clé retournée par Algolia et la clé du contenu OTT afin de lancer le bon média.
|
||||||
|
|
||||||
|
- L'OTT étant entièrement développé et maintenu par le fournisseur, notre équipe ne peut pas réaliser cette intégration directement.
|
||||||
|
|
||||||
|
- Le rythme de communication du fournisseur devient un risque important pour l'échéancier.
|
||||||
|
|
||||||
|
|
||||||
|
### 27 août 2026
|
||||||
|
|
||||||
|
- Confirmation du CTO : **la recherche est un prérequis à la mise en production de la V2**, avec ou sans Live.
|
||||||
|
|
||||||
|
- Relance du fournisseur pour obtenir un statut.
|
||||||
|
|
||||||
|
- Demande de rencontre technique.
|
||||||
|
|
||||||
|
- Réunion interne prévue afin d'aligner l'équipe sur la stratégie de livraison et de QA.
|
||||||
|
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Chemin critique
|
||||||
|
|
||||||
|
```text
|
||||||
|
Engagement du fournisseur
|
||||||
|
↓
|
||||||
|
Intégration Algolia
|
||||||
|
↓
|
||||||
|
Version testable
|
||||||
|
↓
|
||||||
|
QA recherche (~1 jour)
|
||||||
|
↓
|
||||||
|
Correctifs si nécessaires
|
||||||
|
↓
|
||||||
|
Retest
|
||||||
|
↓
|
||||||
|
Go / No-Go
|
||||||
|
↓
|
||||||
|
Production V2
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Échéancier cible
|
||||||
|
|
||||||
|
|Date|Jalon|
|
||||||
|
|---|---|
|
||||||
|
|28 août|Escalade fournisseur et obtention d'un engagement|
|
||||||
|
|3 septembre|Version Algolia testable demandée|
|
||||||
|
|4 septembre|QA|
|
||||||
|
|5-7 septembre|Correctifs et retest si nécessaires|
|
||||||
|
|8 septembre|Go / No-Go|
|
||||||
|
|9 septembre|Cible de mise en production V2|
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Demande au fournisseur [[Trings - 2025-2026]]
|
||||||
|
|
||||||
|
Le fournisseur doit répondre clairement à la question suivante :
|
||||||
|
|
||||||
|
> Can you deliver a testable implementation by September 3? If not, what specifically prevents it and what is the earliest date you can commit to?
|
||||||
|
|
||||||
|
### Informations déjà disponibles
|
||||||
|
|
||||||
|
- L'index Algolia existe.
|
||||||
|
|
||||||
|
- Algolia est déjà utilisé sur d'autres plateformes de l'organisation.
|
||||||
|
|
||||||
|
- La correspondance entre le résultat Algolia et le média OTT à lancer est connue.
|
||||||
|
|
||||||
|
- L'intégration doit être réalisée dans l'OTT par le fournisseur.
|
||||||
|
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Risques
|
||||||
|
|
||||||
|
### 1. Délai de réponse du fournisseur
|
||||||
|
|
||||||
|
Le fournisseur communique actuellement à un rythme insuffisant pour gérer un bloqueur de production avec une échéance rapprochée.
|
||||||
|
|
||||||
|
**Mitigation :**
|
||||||
|
|
||||||
|
- Escalade immédiate.
|
||||||
|
|
||||||
|
- Demande de rencontre technique.
|
||||||
|
|
||||||
|
- Obtenir une date de livraison ferme plutôt qu'un simple statut.
|
||||||
|
|
||||||
|
|
||||||
|
### 2. Livraison trop proche du 9 septembre
|
||||||
|
|
||||||
|
Même si la QA de la recherche peut être réalisée en une journée, une livraison tardive ne laisserait aucune marge pour les correctifs.
|
||||||
|
|
||||||
|
**Mitigation :**
|
||||||
|
|
||||||
|
- Livraison testable demandée pour le 3 septembre.
|
||||||
|
|
||||||
|
- Préparer les scénarios de QA avant la livraison.
|
||||||
|
|
||||||
|
- Go / No-Go le 8 septembre.
|
||||||
|
|
||||||
|
|
||||||
|
### 3. Communication externe autour du 9 septembre
|
||||||
|
|
||||||
|
Marketing et les autres secteurs pourraient considérer le 9 septembre comme une date de lancement confirmée alors qu'elle demeure dépendante de la livraison du fournisseur.
|
||||||
|
|
||||||
|
**Mitigation :**
|
||||||
|
|
||||||
|
- Communiquer le 9 septembre comme une **cible** jusqu'à confirmation de la livraison.
|
||||||
|
|
||||||
|
- Éviter toute promesse externe avant le Go / No-Go.
|
||||||
|
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Position interne
|
||||||
|
|
||||||
|
Le changement de priorité vers le Live en juin a été **explicitement discuté avec le fournisseur**.
|
||||||
|
|
||||||
|
Le fournisseur avait indiqué que ce changement de séquencement **n'aurait pas d'impact sur l'échéancier V2**.
|
||||||
|
|
||||||
|
Le problème de recherche a ensuite été communiqué par le fournisseur à la fin juillet.
|
||||||
|
|
||||||
|
Il est donc important de distinguer :
|
||||||
|
|
||||||
|
**Décision interne :**
|
||||||
|
prioriser le Live.
|
||||||
|
|
||||||
|
**Validation effectuée :**
|
||||||
|
impact sur l'échéancier vérifié avec le fournisseur.
|
||||||
|
|
||||||
|
**Problème découvert ultérieurement :**
|
||||||
|
recherche V2 non fonctionnelle.
|
||||||
|
|
||||||
|
**Situation actuelle :**
|
||||||
|
dépendance envers le fournisseur pour intégrer la solution Algolia avant la mise en production.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Communication interne
|
||||||
|
|
||||||
|
Message commun à maintenir auprès du CTO, Produit, Marketing et Contenu :
|
||||||
|
|
||||||
|
> Le 9 septembre demeure notre cible pour la V2. La recherche est un prérequis à la mise en production. La solution Algolia est identifiée et l'index existe déjà. L'intégration restante appartient au fournisseur OTT. Nous demandons une version testable pour le 3 septembre afin de conserver une fenêtre de QA et de correction. La date de lancement sera confirmée lorsque nous aurons leur engagement.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Après la mise en production
|
||||||
|
|
||||||
|
Faire une revue du fournisseur séparément de la gestion de l'incident actuel.
|
||||||
|
|
||||||
|
Points à évaluer :
|
||||||
|
|
||||||
|
- Respect des engagements et échéanciers
|
||||||
|
|
||||||
|
- Qualité des estimations
|
||||||
|
|
||||||
|
- Délai de communication
|
||||||
|
|
||||||
|
- Processus d'escalade
|
||||||
|
|
||||||
|
- Visibilité sur l'avancement du développement
|
||||||
|
|
||||||
|
- Détection tardive des fonctionnalités non fonctionnelles
|
||||||
|
|
||||||
|
- Niveau de dépendance de l'organisation envers le fournisseur
|
||||||
|
|
||||||
|
- Nécessité d'un SLA ou d'attentes formelles de communication
|
||||||
|
|
||||||
|
- Pertinence de maintenir ce fournisseur pour les prochaines évolutions OTT
|
||||||
|
|
||||||
|
|
||||||
|
La décision concernant l'avenir du fournisseur ne doit pas interférer avec l'objectif immédiat de sécuriser la V2.
|
||||||
@@ -0,0 +1,39 @@
|
|||||||
|
---
|
||||||
|
type: meeting
|
||||||
|
date: 2026-09-08
|
||||||
|
source: MeetMic
|
||||||
|
status: inbox
|
||||||
|
duration: 18m
|
||||||
|
meetmic_id: 27C4746A-7444-4FFC-9CCF-7E76139DE7FC
|
||||||
|
---
|
||||||
|
|
||||||
|
# Recording
|
||||||
|
|
||||||
|
## Résumé
|
||||||
|
- Boukili s’orientera vers une VM pour une longue durée; le recours à une API est reporté et pourrait ne pas être nécessaire.
|
||||||
|
- L’intégration avec la base PROD de Boukili est en phase de test d’accès. Le mapping des champs commencera après la migration et la validation des accès.
|
||||||
|
- Le traitement des productions originales sera basé sur un indicateur au niveau du produit, puis intégré au rapport via un filtre.
|
||||||
|
- Les demandes de regroupement des performances par collection et entre le web et l’OTT sont conservées, mais ne sont pas prioritaires.
|
||||||
|
- Le rapport performance YouTube a été adapté aux engaged views, avec un filtre par pays et deux métriques distinctes : views brutes et engaged views.
|
||||||
|
- Un live hebdomadaire de ONFR sur l’OTT est prévu à partir du 17 septembre; son exposition dans les données JWP/CDN reste à confirmer.
|
||||||
|
|
||||||
|
## Décisions
|
||||||
|
- Maintenir Boukili sur une VM pour le moment et à long terme; l’API est reportée.
|
||||||
|
- Mettre en attente les demandes de regroupement des performances par collection et entre le web et l’OTT.
|
||||||
|
- Utiliser les engaged views comme référence pour préserver la comparabilité historique des performances YouTube.
|
||||||
|
|
||||||
|
## Actions
|
||||||
|
- [ ] Finaliser les tests de connexion à la base PROD de Boukili, puis réaliser le mapping des champs après la migration — Responsable : non identifié
|
||||||
|
- [ ] Obtenir les données nécessaires auprès de l’équipe Louise pour renseigner l’indicateur « is original » au niveau du produit et l’intégrer au rapport — Responsable : non identifié
|
||||||
|
- [ ] Vérifier auprès de JW Player la présence des données de visionnement et de tracking dans la table CDN pour le live ONFR — Responsable : non identifié — Échéance : demain
|
||||||
|
- [ ] Faire un retour sur les informations obtenues concernant les données du live ONFR — Responsable : non identifié
|
||||||
|
|
||||||
|
## Blocages / Risques
|
||||||
|
- Le mapping de l’intégration dépend de la validation des accès et de la migration de la base PROD de Boukili.
|
||||||
|
- Le format des données de visionnement du live ONFR dans JWP/CDN, ainsi que le tracking associé au média ID, n’est pas encore confirmé.
|
||||||
|
- Les demandes de personnalisation des rapports pourraient nécessiter des changements importants de layout, alors que d’autres priorités sont en cours.
|
||||||
|
|
||||||
|
## À suivre
|
||||||
|
- Confirmer le fonctionnement des données et du tracking pour le live ONFR sur l’OTT à partir du 17 septembre.
|
||||||
|
- Suivre l’avancement de l’indicateur « is original » et de son intégration au rapport.
|
||||||
|
- Réévaluer ultérieurement les tickets de regroupement des performances par collection et web/OTT.
|
||||||
@@ -0,0 +1,48 @@
|
|||||||
|
---
|
||||||
|
type: meeting
|
||||||
|
date: 2026-09-08
|
||||||
|
source: MeetMic
|
||||||
|
status: inbox
|
||||||
|
duration: 23m
|
||||||
|
meetmic_id: D72992DC-FFFA-4D30-8DE7-AA3B1454BCB9
|
||||||
|
---
|
||||||
|
|
||||||
|
# Jean-Claude / Amadou
|
||||||
|
|
||||||
|
## Résumé
|
||||||
|
- L’équipe a clarifié le fonctionnement des deux feeds JWP : le feed 24/7 reste inchangé, tandis que le feed de test interne sera ouvert et fermé selon les besoins via Wirecast.
|
||||||
|
- Une incertitude demeure concernant la facturation du second feed JWP, actif depuis plusieurs mois ; une vérification est prévue avec JWP.
|
||||||
|
- Les trois premières émissions seront préenregistrées plutôt que diffusées en direct, mais le flux OTT attendu et le mode de diffusion restent à clarifier.
|
||||||
|
- Sur OTT avec Trings, le classement des résultats de recherche a été réorganisé ; des tests sont en cours avant le sign off, notamment sur différents devices et sur le zoom d’Apple TV.
|
||||||
|
- Les déploiements de Boukili se poursuivent. L’accès à Contentful est disponible, mais la configuration de l’API et le mode de connexion doivent encore être clarifiés.
|
||||||
|
- L’automatisation des podcasts fonctionne avec des données Jira statiques ; il manque la connexion à l’API Jira pour finaliser le processus.
|
||||||
|
|
||||||
|
## Décisions
|
||||||
|
- Le feed JWP 24/7 sera conservé sans modification.
|
||||||
|
- Le second feed sera géré en interne via Wirecast, avec ouverture et fermeture après les tests ; le recours à Corus et au sous-titrage est mis de côté.
|
||||||
|
- Le processus actuel d’activation/désactivation manuelle est maintenu pour le moment, plutôt qu’une automatisation complète.
|
||||||
|
- Le sign off OTT ne sera donné qu’après la fin des tests.
|
||||||
|
|
||||||
|
## Actions
|
||||||
|
- [ ] Vérifier avec JWP si le second feed a été facturé, depuis quand et pour quel montant — Responsable : non identifié — Échéance : demain après-midi
|
||||||
|
- [ ] Clarifier le fonctionnement du flux OTT pour les trois premières émissions préenregistrées — Responsable : non identifié
|
||||||
|
- [ ] Effectuer les tests OTT sur différents devices, vérifier le zoom sur Apple TV et fournir une capture pour décider de l’acceptabilité — Responsable : non identifié
|
||||||
|
- [ ] Vérifier la collecte de Google Analytics et déterminer s’il faut exclure certains devices des tests — Responsable : non identifié
|
||||||
|
- [ ] Clarifier avec l’équipe Boukili la méthode de connexion et l’utilisation de l’API Contentful — Responsable : non identifié — Échéance : cet après-midi
|
||||||
|
- [ ] Vérifier auprès de Carol la nouvelle date ferme de déploiement de Boukili — Responsable : non identifié
|
||||||
|
- [ ] Connecter l’automatisation des podcasts à l’API Jira — Responsable : non identifié
|
||||||
|
- [ ] Réaliser une répétition générale de bout en bout du processus OTT — Responsable : non identifié — Échéance : demain
|
||||||
|
|
||||||
|
## Blocages / Risques
|
||||||
|
- Risque de surfacturation du second feed JWP, potentiellement actif depuis au moins quatre mois.
|
||||||
|
- Le flux OTT des émissions préenregistrées n’est pas encore défini.
|
||||||
|
- Le sign off OTT est bloqué par les tests restants, notamment le comportement sur Apple TV.
|
||||||
|
- La configuration de l’API Contentful et le processus de connexion de Boukili ne sont pas encore clarifiés.
|
||||||
|
- L’automatisation des podcasts dépend encore de l’accès à l’API Jira.
|
||||||
|
|
||||||
|
## À suivre
|
||||||
|
- Résultat de la vérification de facturation avec JWP.
|
||||||
|
- Clarification du flux OTT pour les émissions préenregistrées.
|
||||||
|
- Résultats des tests OTT et décision interne sur le sign off.
|
||||||
|
- Suivi du déploiement de Boukili et de sa nouvelle échéance.
|
||||||
|
- Finalisation de l’automatisation des podcasts et publication des adresses après réception du premier épisode.
|
||||||
@@ -0,0 +1,61 @@
|
|||||||
|
---
|
||||||
|
type: meeting
|
||||||
|
date: 2026-09-08
|
||||||
|
source: MeetMic
|
||||||
|
status: inbox
|
||||||
|
duration: 56m
|
||||||
|
meetmic_id: F1E25D7D-94DF-4B6C-80C5-8B3549086A46
|
||||||
|
---
|
||||||
|
|
||||||
|
# Amadou / Mohammed
|
||||||
|
|
||||||
|
## Résumé
|
||||||
|
|
||||||
|
- Plusieurs sujets techniques et organisationnels ont été abordés : formations de groupe, publications de fichiers ZIP sur Idéllo, géoblocage de TFO et Idéllo, synchronisation des contenus et déploiements issus du vibe coding.
|
||||||
|
- La stratégie WordPress a été clarifiée pour le site concerné, avec le maintien de WP Engine malgré les discussions sur les fournisseurs américains.
|
||||||
|
- Le projet Mogador nécessite une discussion dédiée concernant l’évolution de la synchronisation actuelle et l’éventuelle suppression de Mogador.
|
||||||
|
- Des enjeux de conformité ont été soulevés : accessibilité signalée par le CRTC, clarification de la confidentialité des demandes et échéance de réponse fixée au 5 octobre.
|
||||||
|
- Les tests OTT se poursuivent avant toute publication sur les stores. Une présentation des projets et des rencontres thématiques sont prévues la semaine suivante.
|
||||||
|
|
||||||
|
## Décisions
|
||||||
|
|
||||||
|
- Rester sur WordPress pour le site concerné.
|
||||||
|
- Maintenir WP Engine compte tenu du caractère critique de la plateforme.
|
||||||
|
- Pour les publications de cours sur Idéllo, le fichier ZIP devra être préparé par l’équipe concernée à la suite d’un ticket, puis transmis à Hélène.
|
||||||
|
- Débloquer la facture de Trings, le livrable ayant été fourni.
|
||||||
|
- Organiser des rencontres dédiées aux sujets complexes plutôt que de traiter de nombreux sujets dans une même réunion.
|
||||||
|
|
||||||
|
## Actions
|
||||||
|
|
||||||
|
- [ ] Consolider des propositions de formations de groupe — Responsable : équipe — Échéance : non mentionnée
|
||||||
|
- [ ] Vérifier avec la personne concernée les besoins d’accès pour les démonstrations de TFO et Idéllo, notamment le compte Idéllo, le VPN et la machine virtuelle — Responsable : non identifié — Échéance : non mentionnée
|
||||||
|
- [ ] Discuter avec Joël et Jean-Claude du flux de publication des fichiers ZIP et le mettre en place — Responsable : non identifié — Échéance : cette semaine
|
||||||
|
- [ ] Réserver une rencontre dédiée à Mogador et aux autres sujets prioritaires — Responsable : non identifié — Échéance : mercredi 16, après-midi
|
||||||
|
- [ ] Envoyer dans Slack la version synthétique des documents Mogador — Responsable : non identifié — Échéance : non mentionnée
|
||||||
|
- [ ] Échanger avec Valérie sur les remarques du CRTC et clarifier les exigences d’accessibilité — Responsable : non identifié — Échéance : demain
|
||||||
|
- [ ] Contacter PO pour obtenir les informations liées à la plainte de Georges — Responsable : non identifié — Échéance : non mentionnée
|
||||||
|
- [ ] Préparer une présentation des projets avec Francis et inviter les équipes — Responsable : non identifié — Échéance : la semaine prochaine
|
||||||
|
- [ ] Vérifier les conditions de la vidéo description sur TFO et son éventuelle intégration à Mogador — Responsable : non identifié — Échéance : non mentionnée
|
||||||
|
- [ ] Poursuivre la mise en production et les tests de synchronisation sur ONFR — Responsable : Mohamed Salimane — Échéance : demain
|
||||||
|
- [ ] Examiner les mécanismes de signalement et la définition de la source de vérité pour les synchronisations — Responsable : non identifié — Échéance : non mentionnée
|
||||||
|
- [ ] Échanger avec Higgs avant ou lors du déblocage de la facture afin d’éviter une situation similaire — Responsable : non identifié — Échéance : non mentionnée
|
||||||
|
- [ ] Définir un mode de gestion des applications développées avec Gemini ou par vibe coding avant leur déploiement — Responsable : non identifié — Échéance : non mentionnée
|
||||||
|
|
||||||
|
## Blocages / Risques
|
||||||
|
|
||||||
|
- Le géoblocage de TFO et Idéllo ne peut pas être retiré temporairement sans mise en production et soulève des enjeux juridiques liés à la diffusion internationale.
|
||||||
|
- Les remarques du CRTC ne sont pas encore suffisamment détaillées ; la distinction entre confidentialité et anonymat doit être clarifiée avant le 5 octobre.
|
||||||
|
- La stratégie autour de Mogador reste complexe : évolution de la synchronisation, suppression éventuelle de Mogador, dépendance accrue aux répliques et absence de source de vérité clairement définie.
|
||||||
|
- Les fournisseurs américains, notamment JWP, WP Engine et Algolia, présentent un risque de conformité ou de dépendance dans le contexte de la politique en vigueur.
|
||||||
|
- Les applications développées avec Gemini ou par vibe coding pourraient être déployées sans visibilité suffisante sur leur conception, leur sécurité et leur maintenance.
|
||||||
|
- La publication sur les stores reste dépendante de la fin des tests OTT.
|
||||||
|
|
||||||
|
## À suivre
|
||||||
|
|
||||||
|
- Discussion approfondie sur Mogador, incluant la synchronisation actuelle et l’option de suppression.
|
||||||
|
- Suivi de la réponse au CRTC et des documents d’accessibilité à remettre avant le 5 octobre.
|
||||||
|
- Point sur l’OTT, les tests en cours et la décision de lancement officiel.
|
||||||
|
- Analyse du statut d’Algolia et des autres fournisseurs américains au regard de la politique applicable.
|
||||||
|
- Évaluation de la vidéo description pour les sites et de son intégration éventuelle à Mogador.
|
||||||
|
- Organisation des échanges récurrents et des rencontres thématiques entre les équipes.
|
||||||
|
- Fermeture prévue des bureaux d’Ottawa du 19 novembre au 14 décembre en raison de travaux, avec travail à distance pendant cette période.
|
||||||
@@ -0,0 +1,44 @@
|
|||||||
|
---
|
||||||
|
type: meeting
|
||||||
|
date: 2026-09-08
|
||||||
|
source: MeetMic
|
||||||
|
status: inbox
|
||||||
|
duration: 22m
|
||||||
|
meetmic_id: 5FAA4C9C-C56D-481F-83A5-B113D72D7B16
|
||||||
|
---
|
||||||
|
|
||||||
|
# Mohammed / Amadou
|
||||||
|
|
||||||
|
## Résumé
|
||||||
|
|
||||||
|
- Une solution de supervision des jobs a été présentée : chaque job possède un check associé à une URL, avec remontée du code de sortie et notification uniquement lors d’un changement d’état critique.
|
||||||
|
- L’intégration prévoit des checks pour les jobs cron ainsi qu’un helper dans le code applicatif afin de surveiller les différentes étapes exécutées.
|
||||||
|
- L’approche sera déployée progressivement, en commençant par ONFR, puis Idéllo et TFO, avec des tests entre chaque étape.
|
||||||
|
- Une automatisation de la création de balados a été discutée. L’option privilégiée est un formulaire dans Jira, alimenté par des champs obligatoires et relié aux API, plutôt qu’un traitement manuel des courriels ou tickets.
|
||||||
|
|
||||||
|
## Décisions
|
||||||
|
|
||||||
|
- Le déploiement de la solution de supervision est approuvé, avec un démarrage progressif sur ONFR.
|
||||||
|
- La création automatisée de nouvelles chaînes ne sera pas faite automatiquement ; elle devra rester manuelle.
|
||||||
|
- La piste d’un formulaire intégré à Jira sera étudiée pour automatiser les demandes de balados.
|
||||||
|
|
||||||
|
## Actions
|
||||||
|
|
||||||
|
- [ ] Implémenter les checks cron sur ONFR et ajouter les entrées de supervision — Échéance : demain
|
||||||
|
- [ ] Tester les jobs export, import et supervisor d’ONFR, puis intégrer le helper dans le code applicatif — Échéance : après la première phase de tests
|
||||||
|
- [ ] Déployer la même approche sur Idéllo, puis sur TFO — Échéance : mercredi ou jeudi, selon l’avancement sur ONFR
|
||||||
|
- [ ] Tester les notifications par SMS et Slack après la validation des notifications par email
|
||||||
|
- [ ] Vérifier avec Marc la faisabilité d’un formulaire Jira pour les demandes de balados
|
||||||
|
|
||||||
|
## Blocages / Risques
|
||||||
|
|
||||||
|
- Aucun serveur de staging n’a été identifié ; les tests reposent donc sur une simulation avant les modifications en production.
|
||||||
|
- Des tests suffisamment complets sont nécessaires pour éviter des problèmes lors du déploiement sur Idéllo et TFO.
|
||||||
|
- Pour l’automatisation des balados, les informations peuvent être incomplètes ou réparties entre la description et les commentaires d’un ticket.
|
||||||
|
- L’utilisation du formulaire Jira dépend de l’acceptation des autres départements et de la faisabilité technique à confirmer avec Marc.
|
||||||
|
|
||||||
|
## À suivre
|
||||||
|
|
||||||
|
- Valider les résultats des tests sur ONFR avant de poursuivre sur Idéllo et TFO.
|
||||||
|
- Confirmer la configuration du compte Solution numérique et les canaux de notification disponibles.
|
||||||
|
- Définir avec Marc le fonctionnement du formulaire Jira, les champs obligatoires et la gestion des demandes concernant une nouvelle chaîne.
|
||||||
@@ -0,0 +1,46 @@
|
|||||||
|
---
|
||||||
|
type: meeting
|
||||||
|
date: 2026-09-08
|
||||||
|
source: MeetMic
|
||||||
|
status: inbox
|
||||||
|
duration: 13m
|
||||||
|
meetmic_id: 2500E0E0-C4F6-4FAE-B591-8DCA43EB03C7
|
||||||
|
---
|
||||||
|
|
||||||
|
# Valery / Amadou
|
||||||
|
|
||||||
|
## Résumé
|
||||||
|
|
||||||
|
- Les travaux avec Jason et Nicole sont terminés après un accord sur un protocole de changements garantissant le respect de l’accessibilité.
|
||||||
|
- La nouvelle fonctionnalité « déclencheur set focus » de Storyline améliore la navigation, mais sa compatibilité avec certains lecteurs d’écran, notamment Jaws, reste incertaine.
|
||||||
|
- L’accessibilité de Boukili est désormais abordée au-delà des seuls tests, notamment à travers la révision de tickets liés à l’accessibilité.
|
||||||
|
- Le CRTC a signalé un problème concernant la publication d’un rapport pourtant déjà publié et confirmé comme disponible. La portée de leur demande, notamment la rétroactivité et l’emplacement de publication, reste à clarifier.
|
||||||
|
- La version 3 de Boukili est finalisée et les tests vont commencer. Un suivi est également prévu sur l’OTT et les autres dossiers.
|
||||||
|
|
||||||
|
## Décisions
|
||||||
|
|
||||||
|
- Ne pas reprendre l’ensemble des travaux déjà réalisés pour intégrer immédiatement la nouvelle fonctionnalité de Storyline.
|
||||||
|
- Maintenir cette fonctionnalité en stand-by jusqu’à ce que sa compatibilité avec les lecteurs d’écran soit clarifiée.
|
||||||
|
- Tenir compte de cette fonctionnalité lors de la conception de futurs produits.
|
||||||
|
- S’appuyer sur le protocole convenu avec Jason et Nicole pour encadrer les changements respectant l’accessibilité.
|
||||||
|
|
||||||
|
## Actions
|
||||||
|
|
||||||
|
- [ ] Envoyer le courriel concernant le CRTC — Échéance : non précisée
|
||||||
|
- [ ] Échanger avec Pierre-Olivier au sujet de la réponse déjà transmise au CRTC — Échéance : demain
|
||||||
|
- [ ] Contacter le CRTC pour clarifier ses attentes une fois le contenu de la réponse récupéré — Échéance : non précisée
|
||||||
|
- [ ] Commencer les tests de la version 3 de Boukili — Échéance : non précisée
|
||||||
|
- [ ] Faire le point avec Jean-Claude sur l’OTT et les autres dossiers — Échéance : non précisée
|
||||||
|
|
||||||
|
## Blocages / Risques
|
||||||
|
|
||||||
|
- La compatibilité de la nouvelle fonctionnalité de Storyline avec Jaws n’est pas encore établie.
|
||||||
|
- Le CRTC n’a pas clairement précisé si le rapport doit inclure la réponse à la plainte, traiter la rétroactivité ou être publié sur un autre emplacement.
|
||||||
|
- Le contenu exact de la réponse déjà envoyée au CRTC n’est pas connu de tous les interlocuteurs concernés.
|
||||||
|
|
||||||
|
## À suivre
|
||||||
|
|
||||||
|
- Clarification avec Pierre-Olivier et le CRTC concernant le rapport et les éventuelles modifications à apporter avant le 3 octobre.
|
||||||
|
- Suivi de l’évolution de la compatibilité de Storyline avec les lecteurs d’écran.
|
||||||
|
- Résultats des tests de la version 3 de Boukili.
|
||||||
|
- Point d’avancement sur l’OTT et les autres dossiers.
|
||||||
@@ -0,0 +1,43 @@
|
|||||||
|
---
|
||||||
|
date: 2026-09-10
|
||||||
|
jira: TECH-32703
|
||||||
|
actual_sync_issue: false
|
||||||
|
status: investigating
|
||||||
|
classification: unknown
|
||||||
|
---
|
||||||
|
|
||||||
|
# TECH-32703
|
||||||
|
## Observation
|
||||||
|
|
||||||
|
- Certains produits n'ont pas les champs de collections non remplis.
|
||||||
|
- Ceci fait que le produit ne s'attache pas au produit et non visible
|
||||||
|
|
||||||
|
## Verification
|
||||||
|
|
||||||
|
- Reported time:
|
||||||
|
- Checked time:
|
||||||
|
- Expected availability:
|
||||||
|
- Content available:
|
||||||
|
### Technical issue identified:
|
||||||
|
|
||||||
|
Cela peut etre la synchro ou venir de Louise
|
||||||
|
## Outcome
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
Available status:
|
||||||
|
- investigating est ce de Louise ou pas ?
|
||||||
|
- resolved
|
||||||
|
- monitoring
|
||||||
|
|
||||||
|
Available classifications
|
||||||
|
|
||||||
|
| Classification | Use when |
|
||||||
|
| -------------------- | ---------------------------------------------------------------------------------- |
|
||||||
|
| confirmed-sync-issue | There was an actual technical synchronization problem |
|
||||||
|
| no-issue-confirmed | Complaint resolved/no technical issue found |
|
||||||
|
| unrelated-issue | The problem was real, but **not caused by synchronization** |
|
||||||
|
| user-error | Incorrect action/configuration/input by the requester caused the perceived problem |
|
||||||
|
| unknown | Insufficient information to determine what happened |
|
||||||
@@ -0,0 +1,78 @@
|
|||||||
|
# Révision des actions et blocages de l'équipe
|
||||||
|
|
||||||
|
## Résumé
|
||||||
|
- **Préparation de la rencontre avec Francis** :
|
||||||
|
- Présentation des projets (documentation départementale, gouvernance des données, projet Données FMC).
|
||||||
|
- Gestion des livraisons OTT (migrations, calendrier).
|
||||||
|
- Décisions : documentation rattachée à la plateforme, gouvernance des données comme pratique continue, projet nommé « Données FMC ».
|
||||||
|
|
||||||
|
- **Actions à executor** :
|
||||||
|
- Préparation du dossier de présentation.
|
||||||
|
- Correction des tickets Jira et mise en place des trackers Umami.
|
||||||
|
- Gestion des fichiers ZIP Idéllo et traitement des demandes QA.
|
||||||
|
|
||||||
|
- **Blocages/Risques** :
|
||||||
|
- Défaut de calendrier pour OTT (livraison le week-end).
|
||||||
|
- Incompatibilité des pipelines de Boukili (Firestore/AWS).
|
||||||
|
- Risque de perte de progression multi-device.
|
||||||
|
- Besoin de QA supplémentaire ou renfort ponctuel.
|
||||||
|
- Période de traitement des fichiers ZIP (12 octobre).
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Décisions Claires
|
||||||
|
1. **Documentation** :
|
||||||
|
- Rattachée à la **plateforme** (non données).
|
||||||
|
- Gouvernance des données : **pratique continue** (source de vérité unique dans Power BI).
|
||||||
|
- Projet nommé « **Données FMC** » (non « nouveau gabarit FMC »).
|
||||||
|
|
||||||
|
2. **Gestion des fichiers ZIP** :
|
||||||
|
- **Tous les fichiers ZIP** (cours + fichiers) : tickets Jira distincts.
|
||||||
|
- **Traitement des demandes** : commence **à partir du 12 octobre**.
|
||||||
|
|
||||||
|
3. **Système de tickets Jira** :
|
||||||
|
- **Mise à jour continue** des tickets avant traitement et fermeture.
|
||||||
|
- **Mise en œuvre systématique** depuis le 12 octobre.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Actions à Faire
|
||||||
|
- **[ ]** Préparer la présentation pour la rencontre avec Francis (responsable : équipe) – Échéance : mardi 15.
|
||||||
|
- **[ ]** Corriger le document de présentation (responsable : non précisé) – Échéance : avant mardi 15.
|
||||||
|
- **[ ]** Mise en place des trackers Umami (responsable : Jean-Claude) – Échéance : non précisée.
|
||||||
|
- **[ ]** Analyser flux Mogador + alertes en cas d’échec (responsable : Mohamed Slimane) – Échéance : non précisée.
|
||||||
|
- **[ ]** Gérer tickets Jira pour fichiers ZIP Idéllo (responsable : Jason / demandeurs) – Échéance : à partir du 12 octobre.
|
||||||
|
- **[ ]** Récompiler fichiers ZIP reçus (responsable : équipe) – Échéance : non précisée.
|
||||||
|
- **[ ]** Clarifier calendrier OTT (responsable : non précisé) – Échéance : non précisée.
|
||||||
|
- **[ ]** Tests de régression TFO (responsable : Ajar) – Échéance : avant 16/17.
|
||||||
|
- **[ ]** Échanger sur recommendations tracking (responsable : Rabiba/Amandou) – Échéance : non précisée.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Blocages à Traiter
|
||||||
|
1. **Facturation JW Player** :
|
||||||
|
- Indétermination (adresse active = frais vs flux non écouté).
|
||||||
|
- **Solution** : Clarifier les conditions de facturation.
|
||||||
|
|
||||||
|
2. **Ingest points inutilisés** :
|
||||||
|
- Ne pas supprimer certains (ex : non modifiable directement).
|
||||||
|
- **Solution** : Demander à JW Player de supprimer ceux-là.
|
||||||
|
|
||||||
|
3. **Calendrier OTT** :
|
||||||
|
- Livraison possible le week-end (14 septembre) pour l’émission live du 17.
|
||||||
|
- **Solution** : Ralenti les livraisons pour respecter les délais.
|
||||||
|
|
||||||
|
4. **QA** :
|
||||||
|
- Capacité limitée (1 personne à 4 sites).
|
||||||
|
- **Solution** : Renfort ponctuel ou QAs supplémentaires.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## À Suivre
|
||||||
|
- **Clarifier les conditions de facturation** avec JW Player.
|
||||||
|
- **Vérifier les résultats des tests** du second feed et sous-titrages.
|
||||||
|
- **Suivre l’intégration de Umami** au Data Warehouse.
|
||||||
|
- **Contrôler la mise en œuvre** des tickets Jira pour Idéllo.
|
||||||
|
|
||||||
|
---
|
||||||
|
**Note** : La priorité des actions est répartie pour minimiser les blocages et optimiser le calendrier.
|
||||||
@@ -0,0 +1,123 @@
|
|||||||
|
## 🎯 Executive Summary
|
||||||
|
|
||||||
|
**Overall health:** Not assessed.
|
||||||
|
**Traffic light:** 🟡
|
||||||
|
|
||||||
|
**This week's headline:**
|
||||||
|
Multiple critical projects (Boukili migration, ONFR live‑feed, OTT launch) face blockers and pending decisions that affect delivery schedules and vendor compliance.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# Wins 🏆
|
||||||
|
- “Set‑focus” trigger in Storyline completed (on standby).
|
||||||
|
- ONFR live‑feed testing to use Haywire feed; second Chorus URL deferred.
|
||||||
|
- SPOF Job‑supervision solution approved; phased rollout begins with ONFR.
|
||||||
|
- OTT search‑result ranking changes implemented; device testing underway.
|
||||||
|
- Decision to retain WordPress on current site and keep WP Engine as host.
|
||||||
|
- ZIP‑to‑Idéllo publishing workflow defined (ticket → ZIP → Hélène).
|
||||||
|
- CTO approved exploratory discussion with Lunii.
|
||||||
|
- Code freeze planned after fixing identified issues; phase‑2 isolated Boukili.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# Risks ⚠️
|
||||||
|
- **Storyline “set‑focus”** compatibility with JAWS unknown → possible product delay.
|
||||||
|
- **CRTC report** lacks clarity on retroactivity, content, and publication location; deadline 5 Oct pending.
|
||||||
|
- Boukili v3 not ready; testing schedule launched.
|
||||||
|
- **Variable episode lengths** may cause incorrect JWP recording stops → manual fixes needed.
|
||||||
|
- **Subtitles** not displaying for test videos (missing collection association).
|
||||||
|
- **JWP ingest point & billing** unclear for secondary feed; risk of unexpected fees.
|
||||||
|
- **No staging server** for supervision‑solution testing → production issues possible.
|
||||||
|
- **Boukili production DB & Contentful API** access unresolved, blocking full integration.
|
||||||
|
- **Podcast automation** still depends on Jira API connection.
|
||||||
|
- **Geo‑blocking** for TFO/Idéllo cannot be removed without release → legal compliance risk.
|
||||||
|
- **Mogador synchronization** complexity; source‑of‑truth undefined, possible project removal.
|
||||||
|
- **US‑based vendor compliance** (JWP, WP Engine, Algolia) under policy review.
|
||||||
|
- **OTT delivery** at risk of missing live‑event deadline; may require weekend release.
|
||||||
|
- **QA capacity** limited to one resource across four sites → testing delays.
|
||||||
|
- **Firebase‑to‑AWS migration** (Boukili) blocked by data‑migration reliability and Salesforce regressions; production release cancelled.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# Team 👥
|
||||||
|
|
||||||
|
## Team health
|
||||||
|
**Overall morale:** Not assessed.
|
||||||
|
|
||||||
|
### Coaching / Recognition
|
||||||
|
- No explicit coaching or recognition items recorded.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# Projects 📁
|
||||||
|
|
||||||
|
| Project | Status | Next Milestone | Blocker |
|
||||||
|
| --- | --- | --- | --- |
|
||||||
|
| Boukili v3 | Testing started | Begin version 3 testing (this week) | Access to production DB & Contentful API; migration data‑validation issues |
|
||||||
|
| Storyline “set‑focus” | Completed, on standby | Verify JAWS compatibility | Compatibility unknown |
|
||||||
|
| ONFR live‑feed | Haywire feed selected for tests | End‑to‑end broadcast test (10 h start) | JWP ingest‑point behavior & billing clarification |
|
||||||
|
| Job supervision solution | Approved, phased rollout | Deploy cron checks on ONFR | No staging server for testing |
|
||||||
|
| OTT search‑result ranking | Changes applied | Complete multi‑device testing (incl. Apple TV zoom) | OTT testing timeline tight; risk to live event |
|
||||||
|
| WordPress site | Hosting decision retained | Ongoing maintenance | None reported |
|
||||||
|
| ZIP‑to‑Idéllo workflow | Defined | Start processing tickets after 12 Oct | None reported |
|
||||||
|
| Lunii collaboration | Approved for exploratory talk | Present to CEO | Decision pending CEO review |
|
||||||
|
| Mogador sync | Discussion scheduled 16 Sept | Resolve synchronization approach | Complexity & lack of source‑of‑truth |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# Vendors 🤝
|
||||||
|
- **JWP**: Billing model for secondary feed unclear; ingest‑point behavior under review.
|
||||||
|
- **WP Engine**: Hosting retained; no immediate issues.
|
||||||
|
- **Algolia**: Regression review pending (Trings invoice unblocked).
|
||||||
|
- **US‑based vendors** (JWP, WP Engine, Algolia) under compliance review per policy.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# Decisions Made
|
||||||
|
- Keep Storyline “set‑focus” on standby until screen‑reader compatibility confirmed.
|
||||||
|
- Use Haywire feed for ONFR testing; defer second Chorus URL.
|
||||||
|
- Deploy supervision checks first on ONFR, then Idéllo, then TFO.
|
||||||
|
- Maintain JWP 24/7 feed unchanged; manage secondary test feed manually.
|
||||||
|
- Preserve Boukili on a dedicated VM; postpone API integration.
|
||||||
|
- Retain WordPress on current site with WP Engine hosting.
|
||||||
|
- Implement ZIP‑to‑Idéllo workflow with ticket‑based hand‑off to Hélène (start 12 Oct).
|
||||||
|
- Approve exploratory Lunii discussion with CEO.
|
||||||
|
- Code freeze after fixing identified issues; isolate phase‑2 work.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# Decisions Needed
|
||||||
|
- Clarify CRTC report requirements (retroactivity, content, location) with Pierre‑Olivier.
|
||||||
|
- Confirm JWP ingest‑point behavior and any secondary‑feed fees.
|
||||||
|
- Decide if a second Corus URL will ever be purchased.
|
||||||
|
- Determine final handling of ONFR live‑event streams (retain JWP vs. replace).
|
||||||
|
- Approve Jira‑form design for automated podcast‑chain requests (feasibility with Marc).
|
||||||
|
- Resolve geo‑blocking removal for TFO/Idéllo (legal compliance).
|
||||||
|
- Finalize Mogador synchronization approach or project removal.
|
||||||
|
- Choose which of the four technical subjects (retry, Firebase lockout, update‑message migration, Contentful version control) to include in next Boukili build.
|
||||||
|
- Confirm migration‑forced strategy for multi‑device users and communication plan.
|
||||||
|
- Approve additional QA resources or temporary reinforcement.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# Top Priorities Next Week
|
||||||
|
1. Send clarification email to CRTC and follow up with Pierre‑Olivier.
|
||||||
|
2. Begin Boukili v3 testing and map production‑DB fields.
|
||||||
|
3. Execute end‑to‑end ONFR broadcast test and add supervision cron entries.
|
||||||
|
4. Verify JWP secondary‑feed billing and ingest‑point details.
|
||||||
|
5. Create test collection in JWP and confirm subtitle display.
|
||||||
|
6. Conduct OTT multi‑device testing (including Apple TV zoom) for sign‑off.
|
||||||
|
7. Prepare ZIP‑to‑Idéllo tickets (ready for 12 Oct start).
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# CTO Development
|
||||||
|
|
||||||
|
**Leadership:** –
|
||||||
|
**Technology:** –
|
||||||
|
**Business:** –
|
||||||
|
**Finance:** –
|
||||||
|
**Communication:** –
|
||||||
|
|
||||||
|
*One thing I did this week that made me more like a CTO:* –
|
||||||
|
*One thing I did this week that kept me acting like an individual contributor:* –
|
||||||
+291
-124
@@ -79,41 +79,28 @@ For the README, I’d use something like this:
|
|||||||
|
|
||||||
# SecondBrain
|
# SecondBrain
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Personal work and leadership knowledge system built with Obsidian.
|
Personal work and leadership knowledge system built with Obsidian.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
The vault is backed up through Git and a private Gitea repository.
|
The vault is backed up through Git and a private Gitea repository.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
The goal is to make the environment easy to restore on a new computer with minimal manual reconstruction.
|
The goal is to make the environment easy to restore on a new computer with minimal manual reconstruction.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# Quick Restore
|
# Quick Restore
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## 1. Clone the vault
|
## 1. Clone the vault
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
|
||||||
git clone <GITEA_REPOSITORY_URL>
|
git clone <GITEA_REPOSITORY_URL>
|
||||||
|
|
||||||
cd SecondBrain
|
cd SecondBrain
|
||||||
|
```
|
||||||
|
|
||||||
## 2. Restore the folder structure
|
## 2. Restore the folder structure
|
||||||
|
|
||||||
|
```bash
|
||||||
./scripts/bootstrap-vault.sh
|
./scripts/bootstrap-vault.sh
|
||||||
|
```
|
||||||
|
|
||||||
## 3. Open the vault in Obsidian
|
## 3. Open the vault in Obsidian
|
||||||
|
|
||||||
@@ -123,87 +110,141 @@ Open Obsidian and choose:
|
|||||||
|
|
||||||
Select the cloned `SecondBrain` directory.
|
Select the cloned `SecondBrain` directory.
|
||||||
|
|
||||||
|
## 4. Restore plugins
|
||||||
|
|
||||||
|
Enable Community Plugins in Obsidian and install the plugins listed below.
|
||||||
|
|
||||||
|
Some plugin configuration is stored in `.obsidian/` and may already be restored by Git depending on what is tracked.
|
||||||
|
|
||||||
|
Machine-specific workspace state is intentionally excluded.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# Required Obsidian Plugins
|
# Obsidian Plugins
|
||||||
|
|
||||||
Install and enable:
|
## Core Workflow
|
||||||
|
|
||||||
- Templater
|
These plugins are important to the functionality of SecondBrain.
|
||||||
- Dataview
|
|
||||||
- Obsidian Git
|
|
||||||
|
|
||||||
Check `10 Knowledge/Templates` for the templates used by the system.
|
### Templater
|
||||||
|
|
||||||
Important machine-specific Obsidian files such as `workspace.json` are intentionally not synchronized.
|
Used for dynamic note creation, automatic file naming, folder creation, dates, and structured templates.
|
||||||
|
|
||||||
|
Templates are stored in:
|
||||||
|
|
||||||
|
```text
|
||||||
|
10 Knowledge/Templates/
|
||||||
|
```
|
||||||
|
|
||||||
|
Important: YAML/frontmatter must remain at the very beginning of templates. Do not place Templater JavaScript before the YAML block.
|
||||||
|
|
||||||
|
### Dataview
|
||||||
|
|
||||||
|
Used to generate dynamic lists and views from note properties and metadata.
|
||||||
|
|
||||||
|
### Obsidian Git
|
||||||
|
|
||||||
|
Provides Git integration and automatic backup from the desktop vault.
|
||||||
|
|
||||||
|
Repository synchronization is done against a private Gitea repository.
|
||||||
|
|
||||||
|
### Auto GitKeep
|
||||||
|
|
||||||
|
Automatically creates `.gitkeep` files inside empty directories so the vault structure can be preserved by Git.
|
||||||
|
|
||||||
|
This is particularly useful because Git does not normally track empty directories.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# Navigation and Editing
|
||||||
|
|
||||||
|
These plugins improve the Obsidian interface but are not required for the underlying vault structure.
|
||||||
|
|
||||||
|
### Notebook Navigator
|
||||||
|
|
||||||
|
Replaces the standard Obsidian file explorer with a two-pane navigation interface.
|
||||||
|
|
||||||
|
### Folder Links
|
||||||
|
|
||||||
|
Allows folder links to reveal the corresponding folder in the navigation interface.
|
||||||
|
|
||||||
|
### Editing Toolbar
|
||||||
|
|
||||||
|
Provides a more visual editing toolbar with commonly used Markdown commands.
|
||||||
|
|
||||||
|
### Iconic
|
||||||
|
|
||||||
|
Adds custom icons to folders, files, properties, bookmarks, and other Obsidian interface elements.
|
||||||
|
|
||||||
|
### Omnisearch
|
||||||
|
|
||||||
|
Provides enhanced full-vault search.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# Integration
|
||||||
|
|
||||||
|
### Local REST API with MCP
|
||||||
|
|
||||||
|
Provides a local REST API and MCP interface for interacting with the vault from external tools and local automation.
|
||||||
|
|
||||||
|
This is an advanced integration and is not required for basic vault operation.
|
||||||
|
|
||||||
|
Do not expose the REST API directly to the public Internet.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# Optional / Disabled Plugins
|
||||||
|
|
||||||
|
### Settings Search
|
||||||
|
|
||||||
|
Provides search across Obsidian settings.
|
||||||
|
|
||||||
|
Currently installed but disabled.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# Vault Structure
|
# Vault Structure
|
||||||
|
|
||||||
|
```text
|
||||||
00 Inbox/
|
00 Inbox/
|
||||||
|
|
||||||
└── MeetMic/
|
└── MeetMic/
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
10 Knowledge/
|
10 Knowledge/
|
||||||
|
|
||||||
├── CTO Academy/
|
├── CTO Academy/
|
||||||
|
|
||||||
├── Quotes/
|
├── Quotes/
|
||||||
|
|
||||||
├── Templates/
|
├── Templates/
|
||||||
|
|
||||||
└── Principles.md
|
└── Principles.md
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
20 Work/
|
20 Work/
|
||||||
|
|
||||||
├── Contracts/
|
├── Contracts/
|
||||||
|
|
||||||
│ ├── Active/
|
│ ├── Active/
|
||||||
|
|
||||||
│ └── Archive/
|
│ └── Archive/
|
||||||
|
|
||||||
├── Decisions/
|
├── Decisions/
|
||||||
|
|
||||||
├── Ideas/
|
├── Ideas/
|
||||||
|
|
||||||
├── Journal/
|
├── Journal/
|
||||||
|
|
||||||
├── KPIs/
|
├── KPIs/
|
||||||
|
|
||||||
├── Meetings/
|
├── Meetings/
|
||||||
|
|
||||||
│ ├── Internal/
|
│ ├── Internal/
|
||||||
|
|
||||||
│ └── Vendors/
|
│ └── Vendors/
|
||||||
|
|
||||||
├── Projects/
|
├── Projects/
|
||||||
|
|
||||||
├── Team/
|
├── Team/
|
||||||
|
|
||||||
├── Tracking/
|
├── Tracking/
|
||||||
|
|
||||||
└── Weekly Review/
|
└── Weekly Review/
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
90 Archives/
|
90 Archives/
|
||||||
|
```
|
||||||
|
|
||||||
Employee and monthly 1-1 folders are created dynamically by Templater.
|
Employee and monthly 1-1 folders are created dynamically by Templater.
|
||||||
|
|
||||||
Example:
|
Example:
|
||||||
|
|
||||||
|
```text
|
||||||
20 Work/Team/
|
20 Work/Team/
|
||||||
|
|
||||||
└── Employee Name/
|
└── Employee Name/
|
||||||
|
|
||||||
└── 1-1/
|
└── 1-1/
|
||||||
|
|
||||||
└── 08/
|
└── 08/
|
||||||
|
```
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -213,80 +254,92 @@ MeetMic is used for local meeting transcription and/or summaries.
|
|||||||
|
|
||||||
MeetMic should output Markdown or transcript files into:
|
MeetMic should output Markdown or transcript files into:
|
||||||
|
|
||||||
|
```text
|
||||||
00 Inbox/MeetMic/
|
00 Inbox/MeetMic/
|
||||||
|
```
|
||||||
|
|
||||||
The Inbox is intentionally a temporary landing area.
|
The Inbox is intentionally a temporary landing area.
|
||||||
|
|
||||||
After reviewing a MeetMic note:
|
After reviewing a MeetMic note:
|
||||||
|
|
||||||
- move useful meeting information into `20 Work/Meetings`
|
- move useful meeting information into `20 Work/Meetings`
|
||||||
|
|
||||||
- extract decisions into `20 Work/Decisions`
|
- extract decisions into `20 Work/Decisions`
|
||||||
|
|
||||||
- extract action items into Jira, Twos, or Monday
|
- extract action items into Jira, Twos, or Monday
|
||||||
|
|
||||||
- delete/archive the raw MeetMic output when no longer useful
|
- delete/archive the raw MeetMic output when no longer useful
|
||||||
|
|
||||||
|
|
||||||
## MeetMic machine setup
|
## MeetMic Machine Setup
|
||||||
|
|
||||||
MeetMic itself is not stored in this vault.
|
MeetMic itself is not stored in this vault.
|
||||||
|
|
||||||
On a new computer:
|
On a new computer:
|
||||||
|
|
||||||
1. Install MeetMic.
|
1. Install MeetMic.
|
||||||
|
|
||||||
2. Configure its output folder to point to:
|
2. Configure its output folder to point to:
|
||||||
|
|
||||||
|
|
||||||
|
```text
|
||||||
<VAULT_PATH>/00 Inbox/MeetMic
|
<VAULT_PATH>/00 Inbox/MeetMic
|
||||||
|
```
|
||||||
|
|
||||||
3. Confirm Markdown output is enabled.
|
3. Confirm Markdown output is enabled.
|
||||||
|
|
||||||
4. Test with a short recording.
|
4. Test with a short recording.
|
||||||
|
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# Contract Processing Integration
|
# Contract Processing Integration
|
||||||
|
|
||||||
Contract PDFs are deliberately NOT stored inside the Obsidian vault.
|
Contract PDFs are deliberately **not stored inside the Obsidian vault**.
|
||||||
|
|
||||||
The local contract processor lives separately, typically at:
|
The local contract processor lives separately, typically at:
|
||||||
|
|
||||||
|
```text
|
||||||
~/Herd/scripts/obsidian-contracts
|
~/Herd/scripts/obsidian-contracts
|
||||||
|
```
|
||||||
|
|
||||||
Expected source structure:
|
Expected source structure:
|
||||||
|
|
||||||
|
```text
|
||||||
obsidian-contracts/
|
obsidian-contracts/
|
||||||
|
|
||||||
├── Algolia/
|
├── Algolia/
|
||||||
|
|
||||||
│ └── 2024/
|
│ └── 2024/
|
||||||
|
|
||||||
│ └── contract.pdf
|
│ └── contract.pdf
|
||||||
|
|
||||||
├── Directus/
|
├── Directus/
|
||||||
|
|
||||||
│ └── 2026/
|
│ └── 2026/
|
||||||
|
|
||||||
│ └── contract.pdf
|
│ └── contract.pdf
|
||||||
|
|
||||||
├── process_contracts.py
|
├── process_contracts.py
|
||||||
|
|
||||||
├── prompt.md
|
├── prompt.md
|
||||||
|
|
||||||
├── .env
|
├── .env
|
||||||
|
|
||||||
└── logs/
|
└── logs/
|
||||||
|
```
|
||||||
|
|
||||||
The vendor folder name is the canonical vendor name.
|
The vendor folder name is the canonical vendor name.
|
||||||
|
|
||||||
Example:
|
Example:
|
||||||
|
|
||||||
|
```text
|
||||||
Directus/2026/
|
Directus/2026/
|
||||||
|
```
|
||||||
|
|
||||||
will generate:
|
will generate:
|
||||||
|
|
||||||
|
```text
|
||||||
Directus - 2026-2027.md
|
Directus - 2026-2027.md
|
||||||
|
```
|
||||||
|
|
||||||
even if the contract itself names TFO as the purchaser.
|
even if the contract itself names TFO as the purchaser.
|
||||||
|
|
||||||
Generated contract notes are written to:
|
Generated contract notes are written to:
|
||||||
|
|
||||||
|
```text
|
||||||
20 Work/Contracts/Active/
|
20 Work/Contracts/Active/
|
||||||
|
```
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -296,27 +349,41 @@ Generated contract notes are written to:
|
|||||||
|
|
||||||
Create a virtual environment:
|
Create a virtual environment:
|
||||||
|
|
||||||
|
```bash
|
||||||
cd ~/Herd/scripts/obsidian-contracts
|
cd ~/Herd/scripts/obsidian-contracts
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
python3 -m venv .venv
|
python3 -m venv .venv
|
||||||
|
|
||||||
source .venv/bin/activate
|
source .venv/bin/activate
|
||||||
|
|
||||||
Install dependencies:
|
|
||||||
|
|
||||||
pip install requests python-dotenv
|
pip install requests python-dotenv
|
||||||
|
```
|
||||||
|
|
||||||
## PDF extraction
|
When returning to the project later:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd ~/Herd/scripts/obsidian-contracts
|
||||||
|
source .venv/bin/activate
|
||||||
|
```
|
||||||
|
|
||||||
|
When finished:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
deactivate
|
||||||
|
```
|
||||||
|
|
||||||
|
## PDF Extraction
|
||||||
|
|
||||||
Install Poppler:
|
Install Poppler:
|
||||||
|
|
||||||
|
```bash
|
||||||
brew install poppler
|
brew install poppler
|
||||||
|
```
|
||||||
|
|
||||||
This provides:
|
This provides:
|
||||||
|
|
||||||
|
```text
|
||||||
pdftotext
|
pdftotext
|
||||||
|
```
|
||||||
|
|
||||||
## Local AI
|
## Local AI
|
||||||
|
|
||||||
@@ -324,63 +391,69 @@ Ollama is used for local contract extraction.
|
|||||||
|
|
||||||
Install Ollama and confirm:
|
Install Ollama and confirm:
|
||||||
|
|
||||||
|
```bash
|
||||||
ollama --version
|
ollama --version
|
||||||
|
```
|
||||||
|
|
||||||
The current contract model is:
|
The current contract model is:
|
||||||
|
|
||||||
|
```text
|
||||||
contract-reader
|
contract-reader
|
||||||
|
```
|
||||||
|
|
||||||
Example base model:
|
Example base model:
|
||||||
|
|
||||||
|
```text
|
||||||
qwen3:1.7b
|
qwen3:1.7b
|
||||||
|
```
|
||||||
|
|
||||||
The dedicated model should use a limited context to avoid excessive memory usage.
|
The dedicated model should use a limited context to avoid excessive memory usage.
|
||||||
|
|
||||||
Example Modelfile:
|
Example `Modelfile`:
|
||||||
|
|
||||||
|
```text
|
||||||
FROM qwen3:1.7b
|
FROM qwen3:1.7b
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
PARAMETER num_ctx 4096
|
PARAMETER num_ctx 4096
|
||||||
|
|
||||||
PARAMETER temperature 0.1
|
PARAMETER temperature 0.1
|
||||||
|
|
||||||
PARAMETER num_predict 1200
|
PARAMETER num_predict 1200
|
||||||
|
```
|
||||||
|
|
||||||
Create it:
|
Create it:
|
||||||
|
|
||||||
|
```bash
|
||||||
ollama create contract-reader -f Modelfile
|
ollama create contract-reader -f Modelfile
|
||||||
|
```
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# Contract Processor Environment
|
# Contract Processor Environment
|
||||||
|
|
||||||
The local `.env` file is NOT committed to Git.
|
The local `.env` file is **not committed to Git**.
|
||||||
|
|
||||||
Example:
|
Example:
|
||||||
|
|
||||||
|
```text
|
||||||
OBSIDIAN_VAULT="/Users/YOUR_USER/Documents/Obsidian Vault/SecondBrain"
|
OBSIDIAN_VAULT="/Users/YOUR_USER/Documents/Obsidian Vault/SecondBrain"
|
||||||
|
|
||||||
CONTRACT_OUTPUT="20 Work/Contracts/Active"
|
CONTRACT_OUTPUT="20 Work/Contracts/Active"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
OLLAMA_BASE_URL="http://127.0.0.1:11434"
|
OLLAMA_BASE_URL="http://127.0.0.1:11434"
|
||||||
|
|
||||||
OLLAMA_MODEL="contract-reader"
|
OLLAMA_MODEL="contract-reader"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
MAX_CONTEXT_CHARS="5000"
|
MAX_CONTEXT_CHARS="5000"
|
||||||
|
```
|
||||||
|
|
||||||
Then process one contract:
|
Process one contract:
|
||||||
|
|
||||||
|
```bash
|
||||||
python3 process_contracts.py --folder Algolia/2024
|
python3 process_contracts.py --folder Algolia/2024
|
||||||
|
```
|
||||||
|
|
||||||
Force regeneration:
|
Force regeneration:
|
||||||
|
|
||||||
|
```bash
|
||||||
python3 process_contracts.py --folder Algolia/2024 --force
|
python3 process_contracts.py --folder Algolia/2024 --force
|
||||||
|
```
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -389,69 +462,93 @@ python3 process_contracts.py --folder Algolia/2024 --force
|
|||||||
The processor:
|
The processor:
|
||||||
|
|
||||||
1. extracts PDF text locally using `pdftotext`
|
1. extracts PDF text locally using `pdftotext`
|
||||||
|
|
||||||
2. reduces the contract to important sections
|
2. reduces the contract to important sections
|
||||||
|
|
||||||
3. sends only those excerpts to local Ollama
|
3. sends only those excerpts to local Ollama
|
||||||
|
|
||||||
4. extracts commercial and renewal information
|
4. extracts commercial and renewal information
|
||||||
|
|
||||||
5. validates important renewal clauses against the actual PDF text
|
5. validates important renewal clauses against the actual PDF text
|
||||||
|
|
||||||
6. creates an Obsidian Markdown contract record
|
6. creates an Obsidian Markdown contract record
|
||||||
|
|
||||||
|
|
||||||
Nothing is intentionally sent to a cloud AI provider.
|
Nothing is intentionally sent to a cloud AI provider.
|
||||||
|
|
||||||
Important renewal fields include:
|
Important renewal fields include:
|
||||||
|
|
||||||
|
```text
|
||||||
auto_renewal
|
auto_renewal
|
||||||
|
|
||||||
renewal_term_months
|
renewal_term_months
|
||||||
|
|
||||||
customer_notice_days
|
customer_notice_days
|
||||||
|
|
||||||
vendor_notice_days
|
vendor_notice_days
|
||||||
|
|
||||||
notice_deadline
|
notice_deadline
|
||||||
|
|
||||||
renewal_increase_percent
|
renewal_increase_percent
|
||||||
|
|
||||||
renewal_pricing_rule
|
renewal_pricing_rule
|
||||||
|
```
|
||||||
|
|
||||||
The generated note also contains source evidence from the PDF.
|
The generated note also contains source evidence from the PDF.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# Git Ignore
|
# Git Configuration
|
||||||
|
|
||||||
Recommended `.gitignore` entries:
|
## Recommended `.gitignore`
|
||||||
|
|
||||||
|
```gitignore
|
||||||
# macOS
|
# macOS
|
||||||
|
|
||||||
.DS_Store
|
.DS_Store
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# Obsidian machine-specific state
|
# Obsidian machine-specific state
|
||||||
|
|
||||||
.obsidian/workspace.json
|
.obsidian/workspace.json
|
||||||
|
|
||||||
.obsidian/workspace-mobile.json
|
.obsidian/workspace-mobile.json
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# PDFs should never be stored in the vault repository
|
# PDFs should never be stored in the vault repository
|
||||||
|
|
||||||
*.pdf
|
*.pdf
|
||||||
|
```
|
||||||
|
|
||||||
The contract automation repository should additionally ignore:
|
The contract automation repository should additionally ignore:
|
||||||
|
|
||||||
|
```gitignore
|
||||||
.env
|
.env
|
||||||
|
|
||||||
.venv/
|
.venv/
|
||||||
|
|
||||||
logs/
|
logs/
|
||||||
|
|
||||||
token.json
|
token.json
|
||||||
|
|
||||||
credentials.json
|
credentials.json
|
||||||
|
|
||||||
*.pdf
|
*.pdf
|
||||||
|
```
|
||||||
|
|
||||||
|
## `.obsidian` Strategy
|
||||||
|
|
||||||
|
Do not ignore the entire `.obsidian/` directory.
|
||||||
|
|
||||||
|
Keeping selected Obsidian configuration in Git makes it much easier to reproduce the vault on another computer.
|
||||||
|
|
||||||
|
Machine-specific state such as the following should remain ignored:
|
||||||
|
|
||||||
|
```text
|
||||||
|
.obsidian/workspace.json
|
||||||
|
.obsidian/workspace-mobile.json
|
||||||
|
```
|
||||||
|
|
||||||
|
Plugin configuration can be synchronized where appropriate.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# Mobile
|
||||||
|
|
||||||
|
The mobile vault may use GitSync rather than the Obsidian Git community plugin.
|
||||||
|
|
||||||
|
Mobile and desktop should synchronize against the same private Gitea repository.
|
||||||
|
|
||||||
|
Avoid making conflicting edits to the same note simultaneously on multiple devices.
|
||||||
|
|
||||||
|
Machine-specific mobile workspace state is excluded through:
|
||||||
|
|
||||||
|
```text
|
||||||
|
.obsidian/workspace-mobile.json
|
||||||
|
```
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -460,12 +557,23 @@ credentials.json
|
|||||||
The following must be restored separately:
|
The following must be restored separately:
|
||||||
|
|
||||||
- Ollama models
|
- Ollama models
|
||||||
|
|
||||||
- MeetMic application/settings
|
- MeetMic application/settings
|
||||||
|
|
||||||
- contract PDFs
|
- contract PDFs
|
||||||
|
|
||||||
- `~/Herd/scripts/obsidian-contracts` unless stored in its own private repository
|
- `~/Herd/scripts/obsidian-contracts` unless stored in its own private repository
|
||||||
|
|
||||||
- `.env`
|
- `.env`
|
||||||
|
|
||||||
- authentication tokens
|
- authentication tokens
|
||||||
|
|
||||||
- local application settings
|
- local application settings
|
||||||
|
|
||||||
|
- Git/Gitea credentials
|
||||||
|
|
||||||
|
- GitSync application configuration
|
||||||
|
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -473,23 +581,26 @@ The following must be restored separately:
|
|||||||
|
|
||||||
Maintain two private Git repositories:
|
Maintain two private Git repositories:
|
||||||
|
|
||||||
|
```text
|
||||||
SecondBrain
|
SecondBrain
|
||||||
|
└── Obsidian content, templates, configuration and structure
|
||||||
└── Obsidian content, templates and structure
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
obsidian-automation
|
obsidian-automation
|
||||||
|
|
||||||
└── scripts, prompts, Modelfiles and setup documentation
|
└── scripts, prompts, Modelfiles and setup documentation
|
||||||
|
```
|
||||||
|
|
||||||
Never commit:
|
Never commit:
|
||||||
|
|
||||||
- contracts
|
- contracts
|
||||||
|
|
||||||
- PDFs
|
- PDFs
|
||||||
|
|
||||||
- secrets
|
- secrets
|
||||||
|
|
||||||
- `.env`
|
- `.env`
|
||||||
|
|
||||||
- authentication tokens
|
- authentication tokens
|
||||||
|
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -497,19 +608,75 @@ Never commit:
|
|||||||
|
|
||||||
After moving to a new computer:
|
After moving to a new computer:
|
||||||
|
|
||||||
- [ ] Install Git
|
## Vault
|
||||||
- [ ] Clone SecondBrain from Gitea
|
|
||||||
- [ ] Run `bootstrap-vault.sh`
|
- Install Git
|
||||||
- [ ] Install Obsidian
|
|
||||||
- [ ] Install Templater
|
- Clone SecondBrain from Gitea
|
||||||
- [ ] Install Dataview
|
|
||||||
- [ ] Install Obsidian Git
|
- Run `bootstrap-vault.sh`
|
||||||
- [ ] Configure MeetMic output
|
|
||||||
- [ ] Install Python
|
- Install Obsidian
|
||||||
- [ ] Install Poppler
|
|
||||||
- [ ] Install Ollama
|
- Open SecondBrain as a vault
|
||||||
- [ ] Restore/create `contract-reader`
|
|
||||||
- [ ] Clone/copy contract automation scripts
|
|
||||||
- [ ] Recreate `.env`
|
## Obsidian Plugins
|
||||||
- [ ] Test contract extraction
|
|
||||||
- [ ] Test Git pull/push
|
- Install Templater
|
||||||
|
|
||||||
|
- Install Dataview
|
||||||
|
|
||||||
|
- Install Obsidian Git
|
||||||
|
|
||||||
|
- Install Auto GitKeep
|
||||||
|
|
||||||
|
- Install Notebook Navigator
|
||||||
|
|
||||||
|
- Install Folder Links
|
||||||
|
|
||||||
|
- Install Editing Toolbar
|
||||||
|
|
||||||
|
- Install Iconic
|
||||||
|
|
||||||
|
- Install Omnisearch
|
||||||
|
|
||||||
|
- Install Local REST API with MCP
|
||||||
|
|
||||||
|
- Verify Templater template folder
|
||||||
|
|
||||||
|
- Verify Git configuration
|
||||||
|
|
||||||
|
- Verify plugin settings
|
||||||
|
|
||||||
|
|
||||||
|
## Integrations
|
||||||
|
|
||||||
|
- Configure MeetMic output
|
||||||
|
|
||||||
|
- Install Python
|
||||||
|
|
||||||
|
- Install Poppler
|
||||||
|
|
||||||
|
- Install Ollama
|
||||||
|
|
||||||
|
- Restore/create `contract-reader`
|
||||||
|
|
||||||
|
- Clone/copy contract automation scripts
|
||||||
|
|
||||||
|
- Recreate `.env`
|
||||||
|
|
||||||
|
- Test contract extraction
|
||||||
|
|
||||||
|
|
||||||
|
## Synchronization
|
||||||
|
|
||||||
|
- Test Git pull
|
||||||
|
|
||||||
|
- Test Git commit/push
|
||||||
|
|
||||||
|
- Configure GitSync on mobile if required
|
||||||
|
|
||||||
|
- Test mobile pull
|
||||||
|
|
||||||
|
- Test mobile push
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,41 @@
|
|||||||
|
**[0:00 - 1:04]** salut amadou salut comment tu vas ça va comment se passe ta journée c'est calme j'ai une erreur sur le projet mais une erreur un peu bizarre mais c'est pas grave c'est juste que la synchronisation en fr normalement elle se répète juste après deux heures 40 minutes ouais ouais mais il se répète après deux heures oui c'est pas l'expression de crône est correct et je regarde ça c'est pas l'objectif juste je voudrais te dire que le mardi prochain j'ai un rendez-vous personnel je vous ai m'absenter pour quatre heures ok et je vais travailler cette semaine ajouter une heure pour chaque fois c'est bon il n'y a pas de problème vous voulez pas envoyer un message pour ça non non il n'y a pas de problème c'est bon merci pas de problème allez bonjour allez à toi aussi allez ok bye ok OK.
|
||||||
|
|
||||||
|
**[0:00 - 0:04]** Salut Amadou.
|
||||||
|
|
||||||
|
**[0:04 - 0:08]** Ça va bien et toi ?
|
||||||
|
|
||||||
|
**[0:08 - 0:16]** C'est calme, sauf que j'ai une erreur sur le projet de Single Power.
|
||||||
|
|
||||||
|
**[0:16 - 0:19]** Mais une erreur un peu bizarre, mais ce n'est pas grave.
|
||||||
|
|
||||||
|
**[0:19 - 0:28]** C'est juste que la synchronisation ONFR, normalement elle se répète juste après 2h40 à chaque fois.
|
||||||
|
|
||||||
|
**[0:29 - 0:31]** Mais il se répète après 2h.
|
||||||
|
|
||||||
|
**[0:31 - 0:33]** Je ne sais pas l'expression de Krohn est correct.
|
||||||
|
|
||||||
|
**[0:33 - 0:35]** Dans tout cas, je regarde ça.
|
||||||
|
|
||||||
|
**[0:35 - 0:37]** Ça, ce n'est pas l'objectif.
|
||||||
|
|
||||||
|
**[0:37 - 0:43]** Juste, je voudrais te dire que le mardi prochain, j'ai un rendez-vous personnel.
|
||||||
|
|
||||||
|
**[0:43 - 0:45]** Je vous ai m'absenté pour 4h.
|
||||||
|
|
||||||
|
**[0:45 - 0:49]** Et je vais travailler cette semaine, ajouter une heure pour chaque.
|
||||||
|
|
||||||
|
**[0:49 - 0:50]** C'est bon pour vous ?
|
||||||
|
|
||||||
|
**[0:50 - 0:51]** C'est tout.
|
||||||
|
|
||||||
|
**[0:51 - 0:53]** Je ne voudrais pas envoyer un message pour ça.
|
||||||
|
|
||||||
|
**[0:53 - 0:56]** Ok, merci.
|
||||||
|
|
||||||
|
**[0:56 - 0:58]** Allez, bonne journée.
|
||||||
|
|
||||||
|
**[0:59 - 1:00]** Merci.
|
||||||
|
|
||||||
|
**[1:00 - 1:01]** Bye bye.
|
||||||
|
|
||||||
|
**[1:02 - 1:03]** Thank you.
|
||||||
@@ -0,0 +1,889 @@
|
|||||||
|
**[0:00 - 0:03]** Ciao, ciao.
|
||||||
|
|
||||||
|
**[0:19 - 0:30]** Il ne reste que 4 rencontres encore, juste 4.
|
||||||
|
|
||||||
|
**[0:46 - 0:53]** Abiba, je ne sais pas si tu as eu le temps de prendre connaissance des notes Gemini, je suis désolée.
|
||||||
|
|
||||||
|
**[0:53 - 1:00]** C'est beaucoup de questions, j'ai pas pu, malheureusement j'ai joué en blagona, mais pas de soucis.
|
||||||
|
|
||||||
|
**[1:00 - 1:09]** Pas de soucis, on a eu la rencontre avec The Mind, ils nous ont remonté 4 points pour lesquels ils nous ont suggéré des approches, bref.
|
||||||
|
|
||||||
|
**[1:21 - 1:28]** C'est pour le champ Last Activity Ads.
|
||||||
|
|
||||||
|
**[1:28 - 1:39]** En fait, on lui avait demandé, on leur avait demandé au début, tu te rappelles Carole, d'ajouter ce champ là pour pouvoir connaître si un utilisateur est actif sur un certain temps.
|
||||||
|
|
||||||
|
**[1:39 - 1:51]** C'était ça le premier besoin et le besoin essentiel, c'était donc pour la partie data de pouvoir faire de l'ingestion dans le Data Warehouse de façon incrémentale.
|
||||||
|
|
||||||
|
**[1:09 - 1:21]** Et on voulait repasser sur le point qui nous concernait sur la data pour que tu réexpliques la problématique et les derniers échanges qu'on a eu avec un jour, je crois que c'était négatant.
|
||||||
|
|
||||||
|
**[1:51 - 1:52]** Qu'est-ce que ça veut dire ?
|
||||||
|
|
||||||
|
**[1:52 - 2:17]** Au lieu de par exemple, chaque jour, chaque déclenchement de pipeline, je ramène tous les students avec toutes leurs activités, une gamification et tout, et ça se compte par des centaines de plusieurs centaines de milliers de students et quand on multiplie ça par le nombre d'activités qu'ils font, ça va être énormément de données à ingester à chaque fois si on fait un full load.
|
||||||
|
|
||||||
|
**[2:17 - 2:26]** Donc ce qui serait bien, c'est de faire une ingestion incrémentale sur la base du champ Last Activity Ads.
|
||||||
|
|
||||||
|
**[2:26 - 2:39]** Ça veut dire si un student fait une activité, c'est là qu'on le ramène dans le Data Warehouse et on update les activités qu'il a fait, donc les tables feed-in, gamification, etc.
|
||||||
|
|
||||||
|
**[2:39 - 2:48]** Maintenant, on lui avait posé la question : est-ce qu'il y a moyen que ce champ-là ne soit pas mis à jour de façon silencieuse ?
|
||||||
|
|
||||||
|
**[2:48 - 2:54]** Ça veut dire qu'on n'ait aucun moyen de savoir que ce champ-là n'a pas été mis à jour correctement ?
|
||||||
|
|
||||||
|
**[2:54 - 3:08]** Parce que le default dans le statement, c'est la création de la table que Frank m'a communiqué, il est defaulté à une date précise qui est le Now.
|
||||||
|
|
||||||
|
**[3:08 - 3:14]** Donc le Now, ça peut être la date de migration de cet utilisateur, la date du login.
|
||||||
|
|
||||||
|
**[3:14 - 3:33]** Si jamais un student fait une activité quelconque au niveau du compte de cet utilisateur et que la date de cette dernière activité n'est pas remontée dans le champ Last Activity Ads, Moi, j'ai pas moyen d'aller le récupérer.
|
||||||
|
|
||||||
|
**[3:33 - 3:45]** Il sera pas, il remontera pas dans les students que je vais remonter pour aller récupérer dans le Data Warehouse parce que le champ Last Activity Ads n'aura pas changé.
|
||||||
|
|
||||||
|
**[3:45 - 3:47]** Je sais pas si je me suis bien expliqué.
|
||||||
|
|
||||||
|
**[3:47 - 3:49]** J'ai essayé d'être...
|
||||||
|
|
||||||
|
**[3:49 - 3:52]** Je te réponds comme des détails.
|
||||||
|
|
||||||
|
**[3:52 - 3:55]** Je sais pas si je me suis bien expliqué.
|
||||||
|
|
||||||
|
**[3:55 - 4:02]** J'ai essayé de faire un petit peu de décision.
|
||||||
|
|
||||||
|
**[4:02 - 4:04]** Je sais pas si je me suis bien expliqué.
|
||||||
|
|
||||||
|
**[4:04 - 4:07]** J'ai essayé de faire un petit peu de décision.
|
||||||
|
|
||||||
|
**[4:07 - 4:12]** J'ai essayé de faire un petit peu de décision.
|
||||||
|
|
||||||
|
**[4:12 - 4:12]** J'ai essayé de faire un petit peu de décision.
|
||||||
|
|
||||||
|
**[4:12 - 4:14]** J'ai essayé de faire un petit peu de décision.
|
||||||
|
|
||||||
|
**[4:14 - 4:16]** J'ai essayé de faire un petit peu de décision.
|
||||||
|
|
||||||
|
**[4:16 - 4:16]** J'ai essayé de faire un petit peu de décision.
|
||||||
|
|
||||||
|
**[4:20 - 4:28]** En gros, ils ont proposé, enfin, un jour a proposé une approche, mais pour laquelle il y aurait ce qu'ils appellent l'échec silencieux.
|
||||||
|
|
||||||
|
**[4:28 - 4:31]** Au fait, ce n'est pas une approche.
|
||||||
|
|
||||||
|
**[4:31 - 4:34]** Ma crainte, c'était justement cet échec silencieux.
|
||||||
|
|
||||||
|
**[4:34 - 4:38]** Ça veut dire qu'on ne soit pas au courant qu'il y a eu un échec.
|
||||||
|
|
||||||
|
**[4:38 - 4:42]** Je vais regarder Last Activity Act, le champ, je vais le regarder, je vais voir une date.
|
||||||
|
|
||||||
|
**[4:43 - 4:54]** Mais je n'ai pas moyen de savoir si cette date correspond vraiment à la date de la dernière activité de l'utilisateur au domaine de ses élèves, de ses students.
|
||||||
|
|
||||||
|
**[4:54 - 4:56]** C'était ça ma crainte.
|
||||||
|
|
||||||
|
**[4:56 - 5:05]** Il a parlé de best effort, ça veut dire qu'il va faire de son mieux, mais il ne peut pas garantir que ce champ ne soit pas mis à jour.
|
||||||
|
|
||||||
|
**[5:05 - 5:09]** Ça veut dire qu'il y aura justement un fail qui est silencieux.
|
||||||
|
|
||||||
|
**[5:10 - 5:23]** Mais si je ne peux pas faire confiance à ce champ, je ne peux pas baser mon data warehouse, les données du data warehouse sur la base de ce champ là, pour l'incrémental, pour le load incrémental.
|
||||||
|
|
||||||
|
**[5:23 - 5:30]** J'ai besoin de savoir si je peux faire confiance à ce champ.
|
||||||
|
|
||||||
|
**[5:30 - 5:35]** Donc il n'y a pas de décision.
|
||||||
|
|
||||||
|
**[5:35 - 5:37]** Donc techniquement, il n'y a pas de décision.
|
||||||
|
|
||||||
|
**[5:37 - 5:39]** Ça veut dire de nous dire quelle est la solution.
|
||||||
|
|
||||||
|
**[5:40 - 5:48]** Alors Abiba a envoyé un mail par la suite pour demander s'il n'y a pas eu un autre mécanisme de repli plus robuste, etc.
|
||||||
|
|
||||||
|
**[5:48 - 5:50]** On n'a pas eu encore de retour.
|
||||||
|
|
||||||
|
**[5:50 - 5:52]** Donc on en est là.
|
||||||
|
|
||||||
|
**[5:52 - 5:55]** Oui, donc pour nous, il n'y a pas de décision à prendre de notre côté.
|
||||||
|
|
||||||
|
**[5:55 - 6:00]** Parce que c'est eux qui doivent nous revenir avec nos mécanismes en ce moment.
|
||||||
|
|
||||||
|
**[6:01 - 6:03]** A priori, ils doivent chercher s'il y a une solution.
|
||||||
|
|
||||||
|
**[6:03 - 6:06]** Je pense qu'il devrait y avoir une solution.
|
||||||
|
|
||||||
|
**[6:06 - 6:09]** Je ne sais pas, ils peuvent faire un log d'erreur, des réessais.
|
||||||
|
|
||||||
|
**[6:09 - 6:18]** Ils peuvent ajouter une métadonnée par rapport à l'échec ou à la réussite de cette activité.
|
||||||
|
|
||||||
|
**[6:20 - 6:22]** Donc s'ils peuvent nous ajouter ça, ça serait bien.
|
||||||
|
|
||||||
|
**[6:22 - 6:30]** Sinon, on fera avec le full load, avec tout ce que ça implique derrière notre côté pour Azure.
|
||||||
|
|
||||||
|
**[6:31 - 6:38]** Un pipeline qui ramène un full load, pardon, de plusieurs centaines de milliers de students à chaque fois, tous les jours.
|
||||||
|
|
||||||
|
**[6:38 - 6:40]** Ça veut dire coût, de notre côté.
|
||||||
|
|
||||||
|
**[6:40 - 6:45]** Donc on devrait juste être OK par rapport à ça, que ça soit documenté.
|
||||||
|
|
||||||
|
**[6:45 - 6:52]** OK.
|
||||||
|
|
||||||
|
**[6:52 - 6:55]** Euh...
|
||||||
|
|
||||||
|
**[7:00 - 7:02]** On va attendre.
|
||||||
|
|
||||||
|
**[7:02 - 7:03]** C'est tout ce qu'on peut faire.
|
||||||
|
|
||||||
|
**[7:03 - 7:15]** On va attendre.
|
||||||
|
|
||||||
|
**[7:30 - 7:40]** On va attendre.
|
||||||
|
|
||||||
|
**[7:40 - 7:47]** Oui, ce que j'ai compris, c'est que pour les gens qui ont migré, ça va être la date du premier login.
|
||||||
|
|
||||||
|
**[7:47 - 7:48]** C'est ça le défaut.
|
||||||
|
|
||||||
|
**[7:48 - 7:57]** Puis par la suite, il doit y avoir un mécanisme qui met à jour ce champ là pour qu'il soit mis à jour avec chaque activité d'utilisateur.
|
||||||
|
|
||||||
|
**[7:57 - 8:03]** Il dit que ça va pinguer chaque heure pour récupérer s'il y a une activité.
|
||||||
|
|
||||||
|
**[8:03 - 8:09]** Le deuxième cas, ça sera les utilisateurs qui seront forcés par la suite de migrer.
|
||||||
|
|
||||||
|
**[8:09 - 8:17]** Ces utilisateurs, le défaut va être le Last updated ad qui est dans le Firebase, dans la base de données Firebase.
|
||||||
|
|
||||||
|
**[8:17 - 8:19]** Donc, ils vont utiliser ça.
|
||||||
|
|
||||||
|
**[8:23 - 8:31]** Pour les utilisateurs, les nouveaux utilisateurs, ça va être un défaut à la date de création de compte parce que c'est défaut à Now.
|
||||||
|
|
||||||
|
**[8:19 - 8:23]** Ils ne vont pas utiliser la date de migration forcée, ce qui fait du sens.
|
||||||
|
|
||||||
|
**[8:31 - 8:38]** La date à laquelle l'utilisateur a généré une création de compte.
|
||||||
|
|
||||||
|
**[8:38 - 8:44]** Le souci se pose pour la mise à jour de ce champ là, pour les activités.
|
||||||
|
|
||||||
|
**[8:44 - 8:49]** L'idée, c'est qu'on doit être capable de faire confiance à ce champ pour baser nos données.
|
||||||
|
|
||||||
|
**[8:49 - 8:59]** Parce que s'il n'est pas mis à jour, je ne peux pas ramener les données correspondant, si jamais il y a une donnée assez glissée, sans qu'il soit mis à jour.
|
||||||
|
|
||||||
|
**[8:59 - 9:05]** Et on aura dans le Data Rechafs, un fail financier aussi.
|
||||||
|
|
||||||
|
**[9:05 - 9:07]** Donc ça va être comme un parallèle.
|
||||||
|
|
||||||
|
**[9:15 - 9:27]** Et j'imagine qu'on n'a pas un estimé de temps par rapport à...
|
||||||
|
|
||||||
|
**[9:27 - 9:29]** En courant, ok.
|
||||||
|
|
||||||
|
**[9:29 - 9:30]** Bon, c'est la fin.
|
||||||
|
|
||||||
|
**[9:30 - 9:30]** Ok.
|
||||||
|
|
||||||
|
**[9:30 - 9:35]** Est-ce qu'on a besoin de repasser sur les autres points ?
|
||||||
|
|
||||||
|
**[9:35 - 9:39]** J'ai tout mis dans l'ordre du jour là.
|
||||||
|
|
||||||
|
**[9:39 - 9:47]** Mais c'était essentiellement le point d'Abiba qu'on voulait revoir tous ensemble pour être sûr d'avoir bien le scénario, enfin, d'impact et tout en tête.
|
||||||
|
|
||||||
|
**[9:47 - 9:49]** Abiba ?
|
||||||
|
|
||||||
|
**[9:49 - 9:56]** Oui, c'est juste par rapport à la partie multi-device.
|
||||||
|
|
||||||
|
**[9:56 - 10:03]** Je ne suis pas sûr ce qui a été décidé parce que ça impacte aussi la gestion du pipeline de données derrière.
|
||||||
|
|
||||||
|
**[10:03 - 10:06]** Pas de décisions prises encore pour le moment.
|
||||||
|
|
||||||
|
**[10:06 - 10:08]** Tout ce qu'on sait, c'est que...
|
||||||
|
|
||||||
|
**[10:08 - 10:14]** On va communiquer avec les conseils scolaires pour s'assurer qu'ils ne bloquent pas les autres updates.
|
||||||
|
|
||||||
|
**[10:14 - 10:16]** C'est ce qu'on va demander.
|
||||||
|
|
||||||
|
**[10:16 - 10:19]** Mais en termes de résolution de leur côté, il n'y en a pas.
|
||||||
|
|
||||||
|
**[10:19 - 10:24]** Je vais quand même...
|
||||||
|
|
||||||
|
**[10:24 - 10:26]** Spéculer une idée.
|
||||||
|
|
||||||
|
**[10:26 - 10:27]** Bah, spéculer une idée.
|
||||||
|
|
||||||
|
**[10:27 - 10:28]** Je vais quand même avancer une idée.
|
||||||
|
|
||||||
|
**[10:28 - 10:30]** Je ne sais pas si elle est faisable ou pas.
|
||||||
|
|
||||||
|
**[10:30 - 10:43]** Mais si on doit impliquer l'IBO pour que l'IBO fasse quelque chose dans l'application actuelle, qu'ils forceraient par exemple une mise à jour ou bien qu'ils demandent...
|
||||||
|
|
||||||
|
**[10:43 - 10:44]** Ils demandent...
|
||||||
|
|
||||||
|
**[10:44 - 10:44]** Ils demandent...
|
||||||
|
|
||||||
|
**[10:44 - 10:45]** Ils demandent...
|
||||||
|
|
||||||
|
**[10:45 - 10:45]** Ils demandent...
|
||||||
|
|
||||||
|
**[10:45 - 10:45]** Ils demandent...
|
||||||
|
|
||||||
|
**[10:45 - 10:46]** Ils demandent...
|
||||||
|
|
||||||
|
**[10:46 - 10:47]** Ils demandent...
|
||||||
|
|
||||||
|
**[10:47 - 10:48]** Ils demandent...
|
||||||
|
|
||||||
|
**[10:48 - 10:49]** Une bannière...
|
||||||
|
|
||||||
|
**[10:49 - 10:50]** Quelque soit l'alpha...
|
||||||
|
|
||||||
|
**[10:50 - 10:51]** La solution là...
|
||||||
|
|
||||||
|
**[10:51 - 10:52]** C'est quelque chose qu'on va étudier aussi.
|
||||||
|
|
||||||
|
**[10:52 - 10:53]** Si c'est faisable...
|
||||||
|
|
||||||
|
**[10:53 - 10:54]** Tant mieux.
|
||||||
|
|
||||||
|
**[10:54 - 10:55]** Si c'est pas faisable...
|
||||||
|
|
||||||
|
**[10:55 - 10:57]** On est de retour à la...
|
||||||
|
|
||||||
|
**[10:57 - 10:58]** Case départ un peu.
|
||||||
|
|
||||||
|
**[10:58 - 10:59]** Une bannière...
|
||||||
|
|
||||||
|
**[10:59 - 11:13]** Ça veut dire que l'utilisateur aura toujours la possibilité d'ignorer la bannière à aller faire des activités dans l'app.
|
||||||
|
|
||||||
|
**[11:13 - 11:15]** C'est un risque à prendre.
|
||||||
|
|
||||||
|
**[11:15 - 11:18]** Je sais pas ce que je voudrais.
|
||||||
|
|
||||||
|
**[11:18 - 11:20]** Mais là comme je l'ai dit, c'est juste une idée.
|
||||||
|
|
||||||
|
**[11:20 - 11:24]** Maintenant, s'ils sont capables de forcer la mise à jour, tant mieux.
|
||||||
|
|
||||||
|
**[11:24 - 11:26]** Mais il faudrait que The Mind nous dise...
|
||||||
|
|
||||||
|
**[11:26 - 11:28]** Qu'est-ce que l'IBO pourrait faire...
|
||||||
|
|
||||||
|
**[11:28 - 11:30]** Pour simplifier et...
|
||||||
|
|
||||||
|
**[11:30 - 11:32]** Aider à une solution.
|
||||||
|
|
||||||
|
**[11:32 - 11:35]** Mais ça, ça va être dans la cour de The Mind.
|
||||||
|
|
||||||
|
**[11:35 - 11:37]** C'est une discussion qu'on va devoir avoir.
|
||||||
|
|
||||||
|
**[11:37 - 11:42]** Il a mentionné dans son courrier...
|
||||||
|
|
||||||
|
**[11:42 - 11:44]** Pour répondre à cette problématique...
|
||||||
|
|
||||||
|
**[11:44 - 11:47]** Il peut à les gens bloquer les apps dans les...
|
||||||
|
|
||||||
|
**[11:47 - 11:49]** L'emmigré.
|
||||||
|
|
||||||
|
**[11:49 - 11:52]** Mais le souci là, c'est que l'utilisateur...
|
||||||
|
|
||||||
|
**[11:52 - 11:54]** Il va avoir un message d'erreur de login.
|
||||||
|
|
||||||
|
**[11:54 - 11:56]** Même s'il rentre ses bons...
|
||||||
|
|
||||||
|
**[11:56 - 12:01]** Il va avoir une erreur de login.
|
||||||
|
|
||||||
|
**[12:01 - 12:03]** Donc ça aussi, c'est un impact sur les utilisateurs.
|
||||||
|
|
||||||
|
**[12:03 - 12:06]** Si on opte pour cette option là.
|
||||||
|
|
||||||
|
**[12:06 - 12:09]** Alors, si on fait cette option là.
|
||||||
|
|
||||||
|
**[12:09 - 12:11]** Et que disons qu'il y a un utilisateur qui est bloqué.
|
||||||
|
|
||||||
|
**[12:11 - 12:14]** Qui est dans la blacklist, on va dire.
|
||||||
|
|
||||||
|
**[12:14 - 12:18]** Que cet utilisateur contacte Asma.
|
||||||
|
|
||||||
|
**[12:18 - 12:21]** Asma serait capable de demander à l'utilisateur de faire la mise à jour.
|
||||||
|
|
||||||
|
**[12:21 - 12:25]** Et de débloquer cet utilisateur de la liste.
|
||||||
|
|
||||||
|
**[12:25 - 12:28]** Je ne sais pas si elle a cette possibilité là aujourd'hui.
|
||||||
|
|
||||||
|
**[12:28 - 12:29]** Ou pas.
|
||||||
|
|
||||||
|
**[12:34 - 12:35]** pas.
|
||||||
|
|
||||||
|
**[12:35 - 12:39]** Donc je pense que tout ça c'est des points qu'il faut qu'on soulève avec Demi.
|
||||||
|
|
||||||
|
**[12:39 - 12:56]** Aussi un dernier point que je mettais, c'est juste que historiquement pour migrer sur V1 à V2, il y a eu 80% d'utilisateurs qui n'ont pas migré.
|
||||||
|
|
||||||
|
**[12:56 - 13:04]** Donc il faut juste savoir qu'on a migré uniquement 20% ces utilisateurs qui ont migré volontairement à la V2.
|
||||||
|
|
||||||
|
**[13:04 - 13:06]** D'accord?
|
||||||
|
|
||||||
|
**[13:06 - 13:24]** Donc si le même scénario se présente avec cette migration V2, V3, on risque de se retrouver à la fin au lieu des 20-30% qu'ils ont mentionné, on risque de se retrouver avec plus de 82% d'utilisateurs qui ont migré.
|
||||||
|
|
||||||
|
**[13:24 - 13:24]** D'accord?
|
||||||
|
|
||||||
|
**[13:24 - 13:28]** Donc c'est plus 20-30% comme ils ont dit, ça peut être plus.
|
||||||
|
|
||||||
|
**[13:28 - 13:37]** Maintenant je dis ça, je dis rien, si on va force migrer 80% pourquoi ne pas force migrer 100% ?
|
||||||
|
|
||||||
|
**[13:37 - 13:47]** Ça sera juste 90 jours peut-être de grâce à donner à Zemind pour qu'ils testent leur nouvelle app.
|
||||||
|
|
||||||
|
**[13:47 - 13:52]** Mais c'est quoi le bénéfice pour vous ?
|
||||||
|
|
||||||
|
**[13:54 - 13:58]** Ok.
|
||||||
|
|
||||||
|
**[13:58 - 14:04]** Une question, est-ce qu'il y a un moment donné, est-ce qu'on peut faire, je ne sais pas si on fait des cross-checks là ?
|
||||||
|
|
||||||
|
**[14:04 - 14:23]** Par exemple, une fois qu'on a mis en plan 2 ou 3 mois comme ça, on regarde la base de l'une de Superbase, on post-checks avec la base de l'une de Superbase, juste pour voir la différence qui n'a pas été migrée, et on prend des actions possibles de ce genre-là, via des mécanismes infolettres, tout comme ça.
|
||||||
|
|
||||||
|
**[14:23 - 14:25]** C'est faisable ça ?
|
||||||
|
|
||||||
|
**[14:25 - 14:25]** Oui.
|
||||||
|
|
||||||
|
**[14:34 - 14:36]** Ok.
|
||||||
|
|
||||||
|
**[14:36 - 14:40]** Ok.
|
||||||
|
|
||||||
|
**[14:40 - 14:42]** Ok.
|
||||||
|
|
||||||
|
**[14:42 - 14:48]** Ok.
|
||||||
|
|
||||||
|
**[15:04 - 15:38]** Pour la fois, on va rencontrer demain, Julie, moi, Carole et eux, juste côté exécutif là on va dire.
|
||||||
|
|
||||||
|
**[15:38 - 15:45]** Alors on va leur dire qu'on n'est pas à l'aise d'aller en prod lundi.
|
||||||
|
|
||||||
|
**[15:45 - 15:50]** Donc on peut déjà dire qu'il n'y aura pas de go pour ce lundi.
|
||||||
|
|
||||||
|
**[15:50 - 15:58]** On va aussi discuter de l'approche par rapport à qu'est-ce que l'IBO peut faire, selon eux.
|
||||||
|
|
||||||
|
**[16:00 - 16:06]** Par la suite, on contactera l'IBO pour voir s'ils seront capables de le faire, s'il y a une solution.
|
||||||
|
|
||||||
|
**[16:06 - 16:10]** S'ils ne sont pas disponibles ou bien qu'il n'y a pas de solution, bah...
|
||||||
|
|
||||||
|
**[16:10 - 16:20]** Jusqu'on en rediscute, mais à l'état actuel, c'est un no-go et il n'y a pas de nouvelle date jusqu'à la preuve de contrat.
|
||||||
|
|
||||||
|
**[16:20 - 16:22]** Donc on va voir s'ils sont capables.
|
||||||
|
|
||||||
|
**[16:22 - 16:24]** Et donc on va voir s'ils sont capables.
|
||||||
|
|
||||||
|
**[16:24 - 16:26]** Et donc on va voir s'ils sont capables.
|
||||||
|
|
||||||
|
**[16:26 - 16:32]** Oui, mais une question, en fait l'option que si l'IBO devrait intervenir, c'est les applications.
|
||||||
|
|
||||||
|
**[16:32 - 16:36]** Est-ce que ça, ça n'aura pas le risque d'éviter là d'être retiré ?
|
||||||
|
|
||||||
|
**[16:36 - 16:40]** Par exemple, je ne sais pas si c'est juste des modifs dans le back-end là.
|
||||||
|
|
||||||
|
**[16:40 - 16:46]** Non, je crois que ça devrait aller parce que Jean-Claude, ce qu'il avait demandé comme exception, c'était jusqu'au 30 octobre.
|
||||||
|
|
||||||
|
**[16:46 - 16:50]** Donc je pense qu'on peut faire des mises à jour tranquillement jusqu'au 30 octobre.
|
||||||
|
|
||||||
|
**[16:50 - 16:51]** Tout.
|
||||||
|
|
||||||
|
**[16:59 - 17:01]** Okay.
|
||||||
|
|
||||||
|
**[17:04 - 17:10]** En fait, il y avait une question que vous voulez poser à l'époque, à toi qui est plus familière vous donner là.
|
||||||
|
|
||||||
|
**[17:10 - 17:32]** Est-ce qu'il y a moyen de savoir le nombre, les comptes, par exemple, si tu as ta plusieurs devices, Android, iPad, l'OF, le Chromebook, par exemple, et que tu utilises le même email, est-ce qu'il y a moyen dans les données, dans Firebase, de savoir les différents device que tu utilises avec un seul MM, avec un même compte ?
|
||||||
|
|
||||||
|
**[17:32 - 17:33]** Non.
|
||||||
|
|
||||||
|
**[17:34 - 17:36]** Mais il n'y a pas ces données dans Firebase, malheureusement.
|
||||||
|
|
||||||
|
**[17:36 - 17:45]** Et il n'y a pas aussi les données de savoir combien d'utilisateurs utilisent iPhone, comme ça, selon les types d'appareils ?
|
||||||
|
|
||||||
|
**[17:45 - 17:50]** Il y a la même question que tout à l'heure, c'est ça ?
|
||||||
|
|
||||||
|
**[17:50 - 17:51]** Non, non, c'est très peu différent.
|
||||||
|
|
||||||
|
**[17:51 - 17:58]** Celui-là, c'est juste, par exemple, le nombre d'utilisateurs qui utilisent iPhone, le nombre d'utilisateurs qui utilisent iPad ou Android.
|
||||||
|
|
||||||
|
**[17:58 - 17:58]** Non.
|
||||||
|
|
||||||
|
**[17:58 - 18:03]** Donc, on n'a pas de distinction par device.
|
||||||
|
|
||||||
|
**[18:04 - 18:13]** On peut avoir une estimation approximative, mais celle-là, on peut l'avoir de Google Analytics.
|
||||||
|
|
||||||
|
**[18:13 - 18:18]** Donc, ça sera comme un échantillon de données qui ne sera pas à 100%...
|
||||||
|
|
||||||
|
**[18:18 - 18:20]** fiable.
|
||||||
|
|
||||||
|
**[13:52 - 13:54]** Ah vraiment.
|
||||||
|
|
||||||
|
**[18:20 - 18:21]** Exactement.
|
||||||
|
|
||||||
|
**[18:21 - 18:24]** Mais ça peut me donner une idée sur les utilisateurs.
|
||||||
|
|
||||||
|
**[18:33 - 18:34]** Merci.
|
||||||
|
|
||||||
|
**[18:34 - 18:36]** Et Google Analytics, c'est un site qui est très important.
|
||||||
|
|
||||||
|
**[18:36 - 18:38]** Et Google Analytics, c'est un site qui est très important.
|
||||||
|
|
||||||
|
**[18:38 - 18:39]** Et Google Analytics, c'est un site qui est très important.
|
||||||
|
|
||||||
|
**[18:39 - 18:41]** Et Google Analytics, c'est un site qui est très important.
|
||||||
|
|
||||||
|
**[18:41 - 18:42]** Et Google Analytics, c'est un site qui est très important.
|
||||||
|
|
||||||
|
**[18:42 - 18:43]** Et Google Analytics, c'est un site qui est très important.
|
||||||
|
|
||||||
|
**[18:32 - 18:33]** Ça marche.
|
||||||
|
|
||||||
|
**[18:43 - 18:44]** Et Google Analytics, c'est un site qui est très important.
|
||||||
|
|
||||||
|
**[18:44 - 18:45]** Et Google Analytics, c'est un site qui est très important.
|
||||||
|
|
||||||
|
**[18:47 - 18:49]** Et Google Analytics, c'est un site qui est très important.
|
||||||
|
|
||||||
|
**[18:46 - 18:47]** Et Google Analytics, c'est un site qui est très important.
|
||||||
|
|
||||||
|
**[18:49 - 18:50]** Et Google Analytics, c'est un site qui est très important.
|
||||||
|
|
||||||
|
**[18:50 - 18:52]** Et Google Analytics, c'est un site qui est très important.
|
||||||
|
|
||||||
|
**[18:52 - 19:01]** Ça marche.
|
||||||
|
|
||||||
|
**[19:01 - 19:01]** Merci.
|
||||||
|
|
||||||
|
**[19:05 - 19:12]** Si on résume en soi, pour le point numéro 1, il n'y a pas de décision à prendre de notre côté.
|
||||||
|
|
||||||
|
**[19:12 - 19:13]** C'est purement de leur côté.
|
||||||
|
|
||||||
|
**[19:13 - 19:17]** Donc je pense que là, Jacob, il faudrait qu'il clarifie ce côté-là.
|
||||||
|
|
||||||
|
**[18:45 - 18:46]** Et Google Analytics, c'est un site qui est très important.
|
||||||
|
|
||||||
|
**[19:17 - 19:22]** Côté numéro 2, je n'ai pas la liste devant moi là, donc je regarde.
|
||||||
|
|
||||||
|
**[19:22 - 19:29]** C'est dans l'invitation, mais c'est sur la blacklist contentful.
|
||||||
|
|
||||||
|
**[19:38 - 19:44]** Donc, avant même d'aller de l'avant, je pense que ça, c'est le point qui va toucher l'IBO.
|
||||||
|
|
||||||
|
**[19:36 - 19:38]** Ça, c'est obligatoire cette solution.
|
||||||
|
|
||||||
|
**[19:44 - 19:48]** Donc, on en parlera demain.
|
||||||
|
|
||||||
|
**[19:48 - 19:52]** Attends, je vais sur mon calendrier là.
|
||||||
|
|
||||||
|
**[19:52 - 19:57]** Nouveau numéro 3.
|
||||||
|
|
||||||
|
**[19:59 - 20:00]** Oui, oui, oui, oui.
|
||||||
|
|
||||||
|
**[20:00 - 20:03]** Nouveau numéro 3, c'est quoi?
|
||||||
|
|
||||||
|
**[19:30 - 19:36]** Ouais, ça, encore comme je dis, il faut qu'il y ait une solution pour débloquer la blacklist là.
|
||||||
|
|
||||||
|
**[20:05 - 20:05]** Oui, Asp.
|
||||||
|
|
||||||
|
**[18:24 - 18:32]** Donc, on peut aller sur Google Analytics, je peux ressortir, voir ce que je peux poster par rapport au device utilisé.
|
||||||
|
|
||||||
|
**[20:03 - 20:05]** FireBase Arts.
|
||||||
|
|
||||||
|
**[20:06 - 20:09]** Vas-y, vas-y.
|
||||||
|
|
||||||
|
**[20:09 - 20:11]** Non, c'est juste que je...
|
||||||
|
|
||||||
|
**[20:11 - 20:13]** Je ne sais pas si on a pris une décision par rapport à ça.
|
||||||
|
|
||||||
|
**[20:13 - 20:22]** Après 90 jours.
|
||||||
|
|
||||||
|
**[20:22 - 20:25]** Après 90 jours, moi, j'ai pas envie de payer plus ce JABO pour FireBase.
|
||||||
|
|
||||||
|
**[20:46 - 20:53]** Et le numéro 4 qui propose d'afficher un message aux utilisateurs lors de la première connexion.
|
||||||
|
|
||||||
|
**[20:43 - 20:46]** option.
|
||||||
|
|
||||||
|
**[20:53 - 20:54]** Pourquoi pas?
|
||||||
|
|
||||||
|
**[20:54 - 20:56]** Moi je dirais pourquoi pas.
|
||||||
|
|
||||||
|
**[20:56 - 20:58]** Il n'y a rien à perdre.
|
||||||
|
|
||||||
|
**[20:58 - 21:11]** Le numéro 3, ça parle des 90 jours ou en général quand un utilisateur a migré?
|
||||||
|
|
||||||
|
**[20:27 - 20:39]** Le numéro 3 pourrait être fixé par l'IBO si l'IBO accepte de faire quelque chose.
|
||||||
|
|
||||||
|
**[21:11 - 21:13]** Je vais chercher là.
|
||||||
|
|
||||||
|
**[21:16 - 21:21]** Hmm...
|
||||||
|
|
||||||
|
**[21:54 - 22:24]** C'est juste une autre option aussi.
|
||||||
|
|
||||||
|
**[22:24 - 22:35]** C'est une option, mais Amado avait mentionné aussi, peut-être, peut-être, dans les conseils scolaires, les gens n'ont pas la main sur les devices aussi.
|
||||||
|
|
||||||
|
**[22:35 - 22:41]** Donc, ce n'est pas tout le monde qui peut mettre à jour les appareils qu'ils ont, en fait.
|
||||||
|
|
||||||
|
**[22:41 - 22:46]** Donc, ça nécessite de faire des communications avec les conseils scolaires.
|
||||||
|
|
||||||
|
**[22:46 - 22:53]** Si les enseignants sont nos plus grands utilisateurs, on leur a bien pu mettre à jour, peut-être.
|
||||||
|
|
||||||
|
**[23:03 - 23:18]** Est-ce que, Amadou, si on choisissait cette option, on pourrait faire partir des communications dès maintenant au conseil scolaire en disant que leur application doit être bloquée quoi qu'il arrive et qu'il faut qu'il les mette à jour ?
|
||||||
|
|
||||||
|
**[23:18 - 23:18]** Enfin, je ne sais pas.
|
||||||
|
|
||||||
|
**[23:18 - 23:19]** Oui.
|
||||||
|
|
||||||
|
**[23:19 - 23:20]** Oui.
|
||||||
|
|
||||||
|
**[23:20 - 23:27]** Parce que si on va vers l'option du verrouillage de l'authentification de notre ailleurs bail, j'ai l'impression...
|
||||||
|
|
||||||
|
**[23:27 - 23:27]** Ça va être pire.
|
||||||
|
|
||||||
|
**[23:27 - 23:36]** Mais peut-être que je n'ai pas l'éventail des impacts très clairs dans ma tête, mais j'ai l'impression que ce serait une solution justement pour ce cas de multidivice.
|
||||||
|
|
||||||
|
**[23:41 - 23:43]** Je pense qu'on peut...
|
||||||
|
|
||||||
|
**[23:43 - 23:44]** Vas-y, Abibha.
|
||||||
|
|
||||||
|
**[23:44 - 23:56]** Ça peut être, je pense, frustrant pour l'élève ou l'enseignant d'aller sur l'app de l'école, ou sur le divorce de l'école, essayer de se connecter, voir un échec à chaque fois.
|
||||||
|
|
||||||
|
**[23:56 - 24:00]** Il n'a pas de message pour dire qu'il faut qu'il réunisse.
|
||||||
|
|
||||||
|
**[24:00 - 24:02]** Je pense que c'est un peu frustrant.
|
||||||
|
|
||||||
|
**[24:02 - 24:04]** Moi, je me mets à la place de...
|
||||||
|
|
||||||
|
**[24:13 - 24:18]** Je pense que si on fait une bonne campagne de...
|
||||||
|
|
||||||
|
**[24:04 - 24:13]** Alors, je suis d'accord, mais par exemple, là, pour ceux qui ont fait des rentrées scolaires, on a tous reçu des communications de comment ça allait se passer, là.
|
||||||
|
|
||||||
|
**[20:05 - 20:06]** Oui.
|
||||||
|
|
||||||
|
**[21:24 - 21:31]** De moins, c'est juste plait.
|
||||||
|
|
||||||
|
**[24:18 - 24:27]** Mais dès maintenant, quoi, en leur disant, enfin, voilà ce qui va se passer, là, dans 10 jours, c'est normal que vous soyez bloqués, c'est normal.
|
||||||
|
|
||||||
|
**[24:27 - 24:31]** Un, vous pouvez appeler notre service client pour qu'il vous accompagne.
|
||||||
|
|
||||||
|
**[24:33 - 24:39]** Parce que là, j'ai du mal à entrevoir une alternative à ce truc-là.
|
||||||
|
|
||||||
|
**[24:39 - 24:41]** Et d'un autre ?
|
||||||
|
|
||||||
|
**[24:41 - 25:14]** Oui, enfin, juste en revenant sur ce qu'il disait au débat, par exemple, la frustration, là, c'est vrai qu'il peut y avoir des frustrations, mais aussi, si Libéon peut faire quelque chose, par exemple, la personne vient, nous, on a bloqué son appareil, la personne vient, il s'authentifie, sur son appareil, donc l'autorification, là-bas, vérifié dans Firebase, le mot de identifiant est correct, le mot de passe est correct, juste afficher un message gentil pour le dire, il est temps de mettre votre application à jour.
|
||||||
|
|
||||||
|
**[24:31 - 24:33]** Deux, voici la méthode...
|
||||||
|
|
||||||
|
**[25:14 - 25:27]** Il n'y a rien de grave, c'est pas un message de réponse à afficher, c'est juste dire, on a renouvelé Bokili, un message qui est sympa, en fait, il faut juste démigrer, en fait, de renouveler, de mettre en jour l'aide d'appareil.
|
||||||
|
|
||||||
|
**[24:33 - 24:33]** Enfin, je ne sais pas.
|
||||||
|
|
||||||
|
**[25:28 - 25:32]** Oui, c'est vrai, au lieu d'une erreur login, oui, c'est un message.
|
||||||
|
|
||||||
|
**[25:38 - 25:39]** Oui, c'est ça.
|
||||||
|
|
||||||
|
**[25:47 - 25:55]** En parlant de scolaire, moi je dois aller chercher les petites.
|
||||||
|
|
||||||
|
**[25:55 - 25:59]** Je vais devoir m'excuser.
|
||||||
|
|
||||||
|
**[25:32 - 25:38]** Oui, mais ça, c'est si Libéon est capable de le faire.
|
||||||
|
|
||||||
|
**[26:01 - 26:07]** C'est déjà du travail.
|
||||||
|
|
||||||
|
**[25:59 - 26:01]** Combien de petites?
|
||||||
|
|
||||||
|
**[26:17 - 26:21]** A priori, c'est presque sûr, il n'y a pas de beau pour l'un.
|
||||||
|
|
||||||
|
**[26:21 - 26:29]** Suite des aventures, on vous fera signe de ce qui se passe, ce qui a été décidé dans les prochains jours.
|
||||||
|
|
||||||
|
**[25:39 - 25:47]** C'est pour ça que je disais que 3, Libéon pourrait potentiellement le fixer, mais reste à voir, qu'est-ce qui va se passer ?
|
||||||
|
|
||||||
|
**[26:29 - 26:32]** Merci à tous.
|
||||||
|
|
||||||
|
**[26:32 - 26:33]** Merci.
|
||||||
|
|
||||||
|
**[0:00 - 0:00]** Tchau.
|
||||||
|
|
||||||
|
**[0:15 - 0:20]** Hello tout le monde, tiens, comment on se revoit ?
|
||||||
|
|
||||||
|
**[0:20 - 0:25]** C'est la huitième fois que j'avais promis qu'on se verrait huit fois par jour, on y arrive.
|
||||||
|
|
||||||
|
**[0:25 - 0:33]** Alors, qui c'est qui est ?
|
||||||
|
|
||||||
|
**[0:34 - 0:38]** C'est Marc.
|
||||||
|
|
||||||
|
**[0:38 - 0:41]** Et Simon, tout le monde est là.
|
||||||
|
|
||||||
|
**[0:44 - 0:50]** Abiba, je ne sais pas si tu as eu le temps de prendre connaissance des notes Gemini, je suis désolée.
|
||||||
|
|
||||||
|
**[26:33 - 26:35]** Merci, salut.
|
||||||
|
|
||||||
|
**[0:50 - 0:57]** C'est beaucoup de lecture, je n'ai pas pu, malheureusement, j'ai vu en diagonale, mais pas de souci.
|
||||||
|
|
||||||
|
**[0:57 - 1:06]** Pas de souci, on a eu la rencontre avec The Mind, ils nous ont remonté quatre points pour lesquels ils nous ont suggéré des approches, bref.
|
||||||
|
|
||||||
|
**[1:19 - 1:19]** Oui.
|
||||||
|
|
||||||
|
**[26:07 - 26:16]** Ok, il y aura la conversation avec Zemay demain, on vous tient au courant.
|
||||||
|
|
||||||
|
**[1:23 - 1:26]** C'est pour le champ Last Activity Act.
|
||||||
|
|
||||||
|
**[1:07 - 1:19]** Et on voulait repasser sur le point qui nous concernait sur la data pour que tu réexpliques la problématique et les derniers échanges qu'on a eus avec Anju, je crois que c'était où Jacob, je m'en suis dit.
|
||||||
|
|
||||||
|
**[1:26 - 1:36]** En fait, on leur avait demandé au début, tu te rappelles Carole, d'ajouter ce champ-là pour pouvoir connaître si un utilisateur est actif sur un certain temps.
|
||||||
|
|
||||||
|
**[1:39 - 1:48]** Et le besoin essentiel, c'était nous pour la partie data, de pouvoir faire de l'ingestion dans le Data Warehouse de façon incrémentale.
|
||||||
|
|
||||||
|
**[1:36 - 1:39]** C'était ça le premier besoin.
|
||||||
|
|
||||||
|
**[1:59 - 2:05]** Et ça se compte par des centaines de, plusieurs centaines de milliers de students.
|
||||||
|
|
||||||
|
**[1:50 - 1:59]** Au lieu de, par exemple, chaque jour, chaque déclenchement de pipeline, je ramène tous les students avec toutes leurs activités, reading, gamification et tout.
|
||||||
|
|
||||||
|
**[0:33 - 0:34]** Je crois qu'il y en a un qui a répondu non.
|
||||||
|
|
||||||
|
**[2:23 - 2:35]** Ça veut dire si un student fait une activité, c'est là qu'on le ramène dans le Data Warehouse et on update les activités qu'il a faites, donc les tables reading, gamification, etc.
|
||||||
|
|
||||||
|
**[2:15 - 2:23]** Donc, ce qui serait bien, c'est de faire une ingestion incrémentale sur la base de Last Activity Act.
|
||||||
|
|
||||||
|
**[2:46 - 3:05]** Ça veut dire qu'on n'ait aucun moyen de savoir que ce champ-là n'a pas été mis à jour correctement parce que le default dans le SQL Statement qui fait la création de la table que Franck m'a communiqué, il est defaulté à une date précise qui est le Now.
|
||||||
|
|
||||||
|
**[3:05 - 3:11]** Donc, le Now, ça peut être la date de migration de cet utilisateur, la date du login.
|
||||||
|
|
||||||
|
**[3:31 - 3:42]** Il ne remontera pas dans les students que je vais remonter pour aller récupérer dans le Data Warehouse parce que le champ Last Activity Act n'aura pas changé.
|
||||||
|
|
||||||
|
**[3:11 - 3:31]** Si jamais un student fait une activité quelconque au niveau du compte de cet utilisateur et que la date de cette dernière activité n'est pas remontée dans le champ Last Activity Act, moi, je n'ai pas moyen d'aller le récupérer.
|
||||||
|
|
||||||
|
**[3:42 - 3:45]** Je ne sais pas si je me suis bien expliquée.
|
||||||
|
|
||||||
|
**[3:45 - 3:49]** J'ai essayé d'être… J'ai donné beaucoup de détails.
|
||||||
|
|
||||||
|
**[3:49 - 3:58]** Merci.
|
||||||
|
|
||||||
|
**[4:03 - 4:06]** All right.
|
||||||
|
|
||||||
|
**[4:09 - 4:26]** En gros, ils ont proposé, enfin, Andrew a proposé une approche, mais pour lesquelles il y aurait ce qu'ils appellent l'échec silencieux.
|
||||||
|
|
||||||
|
**[2:37 - 2:46]** Maintenant, on lui avait posé la question, est-ce qu'il y a moyen que ce champ-là ne soit pas mis à jour de façon silencieuse ?
|
||||||
|
|
||||||
|
**[1:48 - 1:50]** Qu'est-ce que ça veut dire ?
|
||||||
|
|
||||||
|
**[4:29 - 4:32]** Ma crainte, c'était justement cet échec silencieux.
|
||||||
|
|
||||||
|
**[4:26 - 4:29]** Au fait, ce n'est pas une approche.
|
||||||
|
|
||||||
|
**[2:05 - 2:14]** Et quand on multiplie ça par le nombre d'activités qu'ils font, ça va être énormément de données à ingester à chaque fois si on fait un food load.
|
||||||
|
|
||||||
|
**[4:39 - 4:52]** Je vais le regarder, je vais voir une date, mais je n'ai pas moyen de savoir si cette date correspond vraiment à la date de la dernière activité de l'utilisateur ou de l'un de ses élèves, de ses students.
|
||||||
|
|
||||||
|
**[4:52 - 4:53]** C'était ça ma crainte.
|
||||||
|
|
||||||
|
**[4:32 - 4:36]** Ça veut dire qu'on ne soit pas au courant qu'il y a eu un échec.
|
||||||
|
|
||||||
|
**[5:03 - 5:07]** Ça veut dire qu'il y aura justement un fail qui est silencieux.
|
||||||
|
|
||||||
|
**[5:08 - 5:20]** Si je ne peux pas faire confiance à ce champ, je ne peux pas baser mon data warehouse, les données du data warehouse sur la base de ce champ-là, pour l'incrémental, pour le load incrémental.
|
||||||
|
|
||||||
|
**[4:53 - 5:03]** Il a parlé de best effort, ça veut dire qu'il va faire de son mieux, mais il ne peut pas garantir que ce champ ne soit pas mis à jour.
|
||||||
|
|
||||||
|
**[5:32 - 5:50]** alors abiba renvoyer un mail par la suite pour demander s'il n'y a pas eu un autre mécanisme de repli plus plus robuste etc on n'a pas eu encore de retour donc on en est là on
|
||||||
|
|
||||||
|
**[5:59 - 6:01]** A priori, ils doivent chercher s'il y a une solution.
|
||||||
|
|
||||||
|
**[5:20 - 5:27]** J'ai besoin de savoir si je peux faire confiance à ce champ.
|
||||||
|
|
||||||
|
**[6:03 - 6:04]** Je ne sais pas.
|
||||||
|
|
||||||
|
**[6:04 - 6:07]** Ils peuvent faire un log d'erreur, des réessais.
|
||||||
|
|
||||||
|
**[6:16 - 6:20]** Donc, s'ils peuvent nous ajouter ça, ça serait bien.
|
||||||
|
|
||||||
|
**[6:20 - 6:27]** Sinon, on fera avec le full load, avec tout ce que ça implique derrière notre côté pour Azure.
|
||||||
|
|
||||||
|
**[6:28 - 6:36]** Un pipeline qui ramène un full load de plusieurs centaines de milliers de students à chaque fois tous les jours.
|
||||||
|
|
||||||
|
**[6:36 - 6:38]** Ça veut dire coût de notre côté.
|
||||||
|
|
||||||
|
**[4:36 - 4:38]** Je vais regarder Last Activity Act, le champ.
|
||||||
|
|
||||||
|
**[6:38 - 6:42]** Donc, on devrait juste être OK par rapport à ça, que ça soit documenté.
|
||||||
|
|
||||||
|
**[7:14 - 7:28]** Abiba, juste une question, en fait, dans le message, en fait, ils disent que le champ Use Alask Activity Ads, André vous mentionne que la clause Default Now initialise cette valeur à l'instant présent pour les nouveaux utilisateurs.
|
||||||
|
|
||||||
|
**[7:33 - 7:36]** Ou bien c'est les gens qu'on a migré ?
|
||||||
|
|
||||||
|
**[7:36 - 7:38]** Tiens, Abiba.
|
||||||
|
|
||||||
|
**[6:07 - 6:16]** Ils peuvent ajouter une métadonnée par rapport à l'échec ou à la réussite de cette activité.
|
||||||
|
|
||||||
|
**[7:44 - 7:45]** C'est ça le default.
|
||||||
|
|
||||||
|
**[7:45 - 7:54]** Puis par la suite, il doit y avoir un mécanisme qui met à jour ce champ-là pour qu'il soit mis à jour avec chaque activité de l'utilisateur.
|
||||||
|
|
||||||
|
**[8:00 - 8:06]** Le deuxième cas, ça sera les utilisateurs qui seront forcés par la suite de migrer.
|
||||||
|
|
||||||
|
**[8:07 - 8:14]** Ces utilisateurs, le default va être le Last Updated Ad qui est dans la base de données Firebase.
|
||||||
|
|
||||||
|
**[7:38 - 7:44]** Oui, ce que j'ai compris, c'est que pour les gens qui ont migré, ça va être la date du premier login.
|
||||||
|
|
||||||
|
**[7:54 - 8:00]** Il dit que ça va pinguer chaque heure pour récupérer s'il y a eu une activité.
|
||||||
|
|
||||||
|
**[8:16 - 8:20]** Ils ne vont pas utiliser la date de migration forcée, ce qui fait du sens.
|
||||||
|
|
||||||
|
**[8:14 - 8:16]** Donc, ils vont utiliser ça.
|
||||||
|
|
||||||
|
**[8:35 - 8:41]** Le souci se pose pour la mise à jour de ce champ-là, pour les activités.
|
||||||
|
|
||||||
|
**[8:41 - 8:46]** L'idée, c'est qu'on doit être capable de faire confiance à ce champ pour baser nos données.
|
||||||
|
|
||||||
|
**[8:46 - 8:56]** Parce que s'il n'est pas mis à jour, je ne peux pas ramener les données correspondantes si jamais il y a une donnée qui s'est glissée sans qu'il soit mis à jour.
|
||||||
|
|
||||||
|
**[8:56 - 9:02]** Et on aura dans le Data Warehouse comme un fail financier aussi.
|
||||||
|
|
||||||
|
**[8:28 - 8:35]** Ça veut dire la date à laquelle l'utilisateur a généré une création de compte.
|
||||||
|
|
||||||
|
**[9:02 - 9:03]** Donc, ça va être comme un parallèle.
|
||||||
|
|
||||||
|
**[9:10 - 9:18]** Là, je suis en train de rocher la tête, mais je dois carberer un PA l'Omega 3, je pense, de servir de fatigue.
|
||||||
|
|
||||||
|
**[7:28 - 7:33]** Quand on dit les nouveaux utilisateurs, c'est les gens qui viennent pour la première fois sur le bouquet, c'est ça ?
|
||||||
|
|
||||||
|
**[9:32 - 9:44]** J'ai tout mis dans l'ordre du jour, là, mais c'était essentiellement le point d'Abiba qu'on voulait revoir tous ensemble pour être sûr d'avoir bien le scénario, enfin, d'impacter tout en tête.
|
||||||
|
|
||||||
|
**[9:49 - 9:53]** Oui, c'est juste par rapport à la partie multi-device.
|
||||||
|
|
||||||
|
**[9:30 - 9:32]** Est-ce qu'on a besoin de repasser sur les autres points ?
|
||||||
|
|
||||||
|
**[8:20 - 8:28]** Pour les nouveaux utilisateurs, ça va être un default à la date de création de compte parce que c'est default à Now.
|
||||||
|
|
||||||
|
**[6:01 - 6:03]** Je pense qu'il devrait y avoir une solution.
|
||||||
|
|
||||||
|
**[10:58 - 11:08]** Une bannière, ça veut dire que l'utilisateur aura toujours la possibilité d'ignorer la bannière et aller faire des activités dans l'app.
|
||||||
|
|
||||||
|
**[12:02 - 12:04]** Il faut juste peut-être faire des sens.
|
||||||
|
|
||||||
|
**[11:45 - 11:55]** Mais le souci, là, c'est que l'utilisateur, il va avoir un message d'erreur de login, même s'il rentre ses bons credentials.
|
||||||
|
|
||||||
|
**[12:38 - 12:41]** Et aussi un dernier point, et je me suis fait que j'ai promis.
|
||||||
|
|
||||||
|
**[11:55 - 11:57]** Il va avoir une erreur de login.
|
||||||
|
|
||||||
|
**[12:51 - 12:55]** Donc, il faut juste savoir qu'on a migré uniquement 20%.
|
||||||
|
|
||||||
|
**[11:57 - 12:02]** Donc, ça aussi, c'est un impact sur les utilisateurs si on opte pour cette option-là.
|
||||||
|
|
||||||
|
**[13:00 - 13:01]** D'accord ?
|
||||||
|
|
||||||
|
**[12:41 - 12:51]** C'est juste que historiquement, pour la migration V1 à la V2, il y a eu 80% d'utilisateurs qui n'ont pas migré.
|
||||||
|
|
||||||
|
**[11:36 - 11:45]** Il a mentionné dans son courriel, pour répondre à cette problématique, qu'il peut, genre, bloquer les apps dans les non-migrés.
|
||||||
|
|
||||||
|
**[12:55 - 13:00]** C'est les utilisateurs qui ont migré volontairement à la V2.
|
||||||
|
|
||||||
|
**[13:19 - 13:20]** D'accord ?
|
||||||
|
|
||||||
|
**[13:24 - 13:27]** Maintenant, je dis ça, je ne dis rien.
|
||||||
|
|
||||||
|
**[13:01 - 13:19]** Donc, si le même scénario se présente avec cette migration V2-V3, on risque de se retrouver à la fin, au lieu des 20-30% qu'ils ont mentionnés, on risque de se retrouver avec plus de 80% d'utilisateurs non migrés.
|
||||||
|
|
||||||
|
**[13:20 - 13:24]** Donc, c'est plus 20-30%, comme ils ont dit, ça peut être plus.
|
||||||
|
|
||||||
|
**[13:33 - 13:43]** Ça sera juste 90 jours de grâce à donner à The Mind pour qu'ils testent leur nouvelle app.
|
||||||
|
|
||||||
|
**[13:43 - 13:48]** C'est quoi le bénéfice pour nous ?
|
||||||
|
|
||||||
|
**[9:53 - 10:00]** Je ne suis pas sûre ce qui a été décidé parce que ça impacte aussi la gestion du pipeline de données de RIR.
|
||||||
|
|
||||||
|
**[14:19 - 14:21]** Oui, c'est...
|
||||||
|
|
||||||
|
**[14:56 - 15:13]** Donc pour ton info Abiba, dans la précédente rencontre on a dit qu'on n'est pas confortable pour un go lundi, quoi qu'il arrive, sachant qu'en plus ils doivent nous livrer quelque chose ce soir et potentiellement demain, sachant qu'Ajar en plus elle est en vacances la semaine prochaine.
|
||||||
|
|
||||||
|
**[14:17 - 14:19]** C'est faisable ça?
|
||||||
|
|
||||||
|
**[16:21 - 16:23]** Oui, Amadou, une question.
|
||||||
|
|
||||||
|
**[15:17 - 15:21]** Ok, merci pour l'info.
|
||||||
|
|
||||||
|
**[16:35 - 16:38]** Ok.
|
||||||
|
|
||||||
|
**[16:31 - 16:35]** Par exemple, je ne sais pas si c'est juste des modifs dans le back-end qu'ils font.
|
||||||
|
|
||||||
|
**[16:43 - 16:48]** - Okay, so much message.
|
||||||
|
|
||||||
|
**[16:23 - 16:31]** En fait, l'option que si l'IBO devrait intervenir sur les applications, est-ce que ça n'engendre pas le risque qu'on éviter là d'être retiré?
|
||||||
|
|
||||||
|
**[16:59 - 17:05]** il y avait aussi une autre question que vous voulez te poser, Abiba, comme toi tu es plus familière aux données là.
|
||||||
|
|
||||||
|
**[17:05 - 17:26]** Est-ce qu'il y a moyen de savoir les nombres, les comptes, par exemple, si toi tu as plusieurs devices là, Android, iPad, le web, un Chromebook par exemple, et que tu utilises le même email, est-ce qu'il y a moyen dans les données dans Firebase de savoir en fait les différents devices que tu utilises avec un seul, avec un même compte ?
|
||||||
|
|
||||||
|
**[13:54 - 14:17]** Une question, est-ce qu'à un moment donné, est-ce qu'on peut faire, je ne sais pas si on fait des cross-check là, par exemple, une fois qu'à un moment donné, par exemple dans deux ou trois mois comme ça, on regarde la base de l'Unify Base, on cross-check ça avec la base de l'Unify Base, juste pour voir la différence qui n'a pas été migrée, et on prend des actions possibles de ces gens-là, via d'autres mécanismes, infolettres, etc.
|
||||||
|
|
||||||
|
**[17:36 - 17:38]** C'est là le type d'appareil ?
|
||||||
|
|
||||||
|
**[17:31 - 17:36]** Et il n'y a pas aussi les données de savoir combien d'utilisateurs utilisent iPhone, tout comme ça ?
|
||||||
|
|
||||||
|
**[15:13 - 15:17]** Bref, il y a beaucoup de trous dans la raquette qui fait que quoi qu'il arrive on n'est pas confortable pour lundi.
|
||||||
|
|
||||||
|
**[17:26 - 17:31]** Non, il n'y a pas cette donnée dans Firebase malheureusement.
|
||||||
|
|
||||||
|
**[17:38 - 17:43]** C'est la même question que tout à l'heure, c'est ça ?
|
||||||
|
|
||||||
|
**[17:43 - 17:45]** Non, non, c'est un peu différent.
|
||||||
|
|
||||||
|
**[18:07 - 18:15]** Donc ça sera comme un échantillon de données qui ne sera pas à 100% rétile, exactement.
|
||||||
|
|
||||||
|
**[18:15 - 18:16]** Exactement.
|
||||||
|
|
||||||
|
**[17:52 - 17:58]** Non, donc on n'a pas de distinction par device.
|
||||||
|
|
||||||
|
**[18:16 - 18:20]** Mais ça peut me donner une idée sur les utilisateurs.
|
||||||
|
|
||||||
|
**[18:20 - 18:26]** Donc on peut aller sur Google Analytics, je peux vous sortir, voir ce que je peux sortir par rapport au device utilisé.
|
||||||
|
|
||||||
|
**[17:58 - 18:07]** On peut avoir une estimation approximative, mais c'est là on peut l'avoir de Google Analytics.
|
||||||
|
|
||||||
|
**[18:34 - 18:38]** Normalement, ils traquent tout, mais je vais voir ce qu'on a en termes de données, je te reviens par rapport à ça.
|
||||||
|
|
||||||
|
**[18:33 - 18:34]** Le web peut-être ?
|
||||||
|
|
||||||
|
**[13:27 - 13:33]** Si on va force migrer 80%, pourquoi ne pas force migrer 100% ?
|
||||||
|
|
||||||
|
**[18:26 - 18:33]** Et Google Analytics traque aussi le device de Apple ou bien c'est juste le device de Google ?
|
||||||
|
|
||||||
|
**[17:45 - 17:52]** Celui-là c'est juste par exemple le nombre d'utilisateurs qui utilisent iPhone, le nombre d'utilisateurs qui utilisent iPad ou Android.
|
||||||
|
|
||||||
|
**[18:52 - 18:55]** Ça marche, merci.
|
||||||
|
|
||||||
|
**[18:43 - 18:52]** Oui, parce que ça n'a pas été fait, le site n'a pas été fait sur le user ID, ça a été fait justement sur le pool de visite.
|
||||||
|
|
||||||
|
**[18:38 - 18:43]** Mais juste gardez en tête que ça va juste être comme une tendance.
|
||||||
|
|
||||||
|
**[21:20 - 21:29]** Oui, parce qu'à la fin, ça dit que ce verrouillage s'activera lors de la première authentification avec Superbase, suivant la migration.
|
||||||
|
|
||||||
|
**[19:58 - 19:59]** Bouillage le temps.
|
||||||
|
|
||||||
|
**[21:17 - 21:20]** Je pense que c'est quand un utilisateur a migré.
|
||||||
|
|
||||||
|
**[20:56 - 21:05]** Le numéro 3, ça parle des 90 jours ou en général quand un utilisateur a migré ?
|
||||||
|
|
||||||
|
**[21:48 - 21:49]** C'était notre option aussi.
|
||||||
|
|
||||||
|
**[21:53 - 22:00]** Je pense que c'est l'option que Jacob a proposée dans son courriel, là où ça va générer une erreur de login, je pense.
|
||||||
|
|
||||||
|
**[21:31 - 21:46]** Oui, et ça aussi, ça permet de fermer les autres devices, si tu as le même conseil des autres, dès que tu as migré dans Superbase, on bloque ce device pour ne pas que tu soumets tes données dans Firebase.
|
||||||
|
|
||||||
|
**[22:04 - 22:05]** C'est quoi l'impact ?
|
||||||
|
|
||||||
|
**[22:11 - 22:16]** Le fait de fermer les autres appareils, tu veux dire ?
|
||||||
|
|
||||||
|
**[22:26 - 22:32]** Donc, ce n'est pas tout le monde qui peut mettre à jour les appareils qu'ils ont, en fait.
|
||||||
|
|
||||||
|
**[22:18 - 22:26]** C'est une option, mais Amado avait mentionné aussi, peut-être, par exemple, dans les conseils scolaires, les gens n'ont pas la main sur les devices aussi.
|
||||||
|
|
||||||
|
**[22:16 - 22:18]** Oui, pourquoi on ne veut pas ?
|
||||||
|
|
||||||
|
**[22:32 - 22:41]** Donc, ça nécessite peut-être de faire des communications avec les conseils scolaires si les enseignants sont nos plus grands utilisateurs.
|
||||||
|
|
||||||
|
**[22:41 - 22:45]** pour leur dire de mettre à jour peut-être des appareils.
|
||||||
|
|
||||||
|
**[21:29 - 21:31]** Donc, c'est indépendant des 90 jours.
|
||||||
|
|
||||||
|
**[23:34 - 25:24]** ça peut être je pense genre frustrant pour l'élève ou l'enseignant d'aller sur l'app de exemple de l'école ou sur le divas de l'école et c'est de se connecter voir un login un échec à chaque fois il n'a pas de message pour dire que il faut qu'il réinitier je pense que c'est un peu frustrant là moi je me mets à la place de alors je suis d'accord mais par exemple là pour ceux qui ont fait des rentrées scolaires on a tous reçu des communications de comment ça allait se passer là je pense que si on fait une bonne campagne de mais dès maintenant quoi en leur disant voilà ce qui va se passer là dans dix jours c'est normal que vous soyez bloqué c'est normal 1 vous pouvez appeler notre service client pour qu'ils vous accompagnent deux voici la méthode pas je sais pas parce que là j'ai du mal entrevoir une alternative à ce truc là abdoulaye oui en fait juste en revenant sur ce qu'il y avait pas par exemple la frustration là c'est vrai qu'il peut y avoir des frustrations mais aussi si l'IBO peut faire quelque chose par exemple la personne vient nous on a bloqué son appareil la personne vient 60 60 s'authentifie sur son appareil donc l'authentification la valeur vérifiée dans firebase ben l'identifier correct mot de passe est correct ben juste afficher un message gentil pour lui dire il est temps de mettre votre application à jour il n'y a rien de grave c'est pas un message d'erreur qu'on va afficher c'est juste dire bouclier voilà on a renouvelé bouclier un message qui est sympa en fait pour le juste démigrer en fait de renouveler de mettre à jour l'air appareil oui c'est vrai au lieu d'une erreur login c'est juste un message en fait
|
||||||
|
|
||||||
|
**[22:52 - 23:30]** mais est-ce que Amadou si on choisissait cette option on pourrait faire partir des communications dès maintenant au conseil scolaire en disant que leurs applications vont être bloquées quoi qu'il arrive et qu'il faut qu'ils les mettent à jour enfin je sais pas parce que si on va avec l'option du verrouillage de l'authentification d'un fireball j'ai l'impression mais peut-être que j'ai pas l'éventail des impacts très clairs dans ma tête mais j'ai l'impression que ce serait une solution justement pour ce cas de multi device je pense
|
||||||
|
|
||||||
|
**[19:18 - 19:23]** C'est dans l'invitation, mais c'est sur la blacklist Contentful.
|
||||||
|
|
||||||
|
**[25:30 - 25:31]** - I like this as a silly bit of a problem.
|
||||||
|
|
||||||
|
**[26:12 - 26:19]** Donc, suite des aventures, on vous fera signe de ce qui se passe, ce qui a été décidé dans les prochains jours.
|
||||||
|
|
||||||
|
**[25:52 - 26:12]** Ok, bon, il y aura la conversation avec Zemay demain, on vous tient au courant, mais a priori, c'est presque sûr, il n'y a pas de go pour lundi.
|
||||||
|
|
||||||
|
**[26:24 - 26:25]** Merci, salut.
|
||||||
|
|
||||||
|
**[26:23 - 26:24]** Merci.
|
||||||
|
|
||||||
|
**[26:22 - 26:23]** Merci à tous.
|
||||||
|
|
||||||
|
**[22:00 - 22:04]** Et pourquoi on ne veut pas aller avec ça ?
|
||||||
|
|
||||||
|
**[26:28 - 26:29]** Thank you.
|
||||||
|
|
||||||
|
**[26:25 - 26:26]** Bye.
|
||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1,32 @@
|
|||||||
|
**[0:00 - 0:00]** I try to get back to you with the position of maybe other questions, I don't know yet, but it's only to let you know that.
|
||||||
|
Okay. Good to see everybody.
|
||||||
|
I think we are all here.
|
||||||
|
Yeah, we've got Karina as well. I guess, do you want me to start?
|
||||||
|
Yeah, sure.
|
||||||
|
Cool. So I have a few notes. I guess the first one is data migration. We have our team doing another, the fix is in, we're doing another pass through to see if we make sure there isn't any problems. We are aiming to send you a build by end of day, as soon as our QA has finished going over it. There will be other fixes in this, but I don't think we'll consider this like a full UAT build. It'll just be for testing data migration, and you'll get the full build at end of day tomorrow with the full long list of both this build and the next build's changes, if that's okay with you.
|
||||||
|
So basically you'll get kind of like a work in progress for one bit of narrow testing, so they have a chance to test tomorrow, and then a bigger block with much more testing done from our side, which is essentially also going to be the release candidate by end of day tomorrow.
|
||||||
|
Cool. Okay, so on the items that we've been trading back and forth questions about, last activity fallback, one thing we can do that's pretty easy is if the network call to track fails going out of the app, we can, instead of waiting an hour until we try again, we can try again in a matter of like seconds. So essentially there'll be a retry system. That is something we can put in a matter of minutes. So I guess you'll be discussing this afterwards, but that would be a quick fallback.
|
||||||
|
The Firebase auth lockout, this is the idea of once somebody has logged in and migrated, we lock their Firebase auth account across the board. We were discussing that. This is a backend only change, so we could put this in even after we've submitted the apps because the apps don't need to change, so we've got a little bit more time on that particular item. Obviously we'd need it before go live. I would also mark that down as like, we're 95% sure we can pull this one off. Both Andrew and I did some research on it, but we have not dived in 100%, so we would consider this one a 95% certain. What we do have is we have the last, the migrated at timestamp, so we can use that when somebody logs in for the first time. We can check if that's happened within the last minute and show them a message that says, hey, you've just migrated to Bukili 3.0.1, please update all of your devices. That is something we can put in relatively quickly as well. And the last one was on Contentful. It looks like there is a version control system in the existing system. I'm not sure if the existing system actually works, so there's not really a way for us to test it, but it would be, again, relatively easy for us to add a new field and have the new apps respect a field that says basically if version less than 3.0.1, only show if less than 3.0.1.
|
||||||
|
I will note, however, we only have a day, well, a day and a half left, so we need decisions relatively quickly, and it will take one of our developers and one of our QAs the better part of the day to get all of these done, tested, and confirmed. So we might not be able to get to some other P3 or P4 bugs to get these in, but I do think we can get these accomplished if you decide to make that happen.
|
||||||
|
|
||||||
|
**[5:48 - 5:48]** I guess that covers my side of the four items that we were talking about. Emadu, did you have a question? Yeah, I just had a question. If the users log in and they get the message saying that they have to update the other devices, and it just so happened that the other devices is a school device that they can't update themselves, how would that work? That's my first question. Let's start with that first question first. So how that, what would happen there would depend on whether or not we're using the Firebase lockout system. If it is the lockout, then their account would not work on the unupdated device. If lockout isn't present, they could still use the device, but their progress wouldn't be synced. So it's either they're locked out or progress spots. One of those two. Okay. You also mentioned that we have a few decisions to make quickly. Could you, just for my sake, give me a list of all the decisions that we need to take so that after the meeting, the team and I can talk about it and just go through them, please. Yes, absolutely. The four items that we've been trading emails back and forth, but I will send that through. That's relatively straightforward. So I guess we only have one other thing from our side. We'd like to check with your team about the web build that you have up on preview. We just want to make sure that that's being pulled from the right source, that it's not a staging build, that it's actually production. So I guess that's something whoever would be responsible for that, if you'll stick around, we can chat that through. It should be pretty quick. I guess the last item on my list is not something that we need to discuss today, but is optional, which is once the apps are submitted, how we want to handle the actual go live afterwards. I don't think that's a decision we need to make today, but it is something that we should discuss. Probably won't take very long to decide, but let's pencil that in if you don't want to talk about it today. That's cool. Cool. I guess any questions from your side?
|
||||||
|
|
||||||
|
**[8:56 - 8:56]** Yes, Abdullah. Jacob, I just want to cycle back. So the Firebase app lockout will only lock the app when the user authenticates on Superbase for the first time? Yes, first time, with that approach, the first time they authenticate with Superbase when we do the migration, the last step in the migration flow would be to turn off the Firebase authentication. Okay, thank you. I just wanted to clarify. Okay. So we'd migrate them first, and we've been doing that already, and it takes two, three seconds for a migration with the accounts we have.
|
||||||
|
|
||||||
|
**[9:53 - 9:53]** I guess if you have no other questions, can we keep your tech people around for a couple minutes and we'll discuss web? And then I guess I'll send emails with the specific items to be discussed and give us a call one way or another by end of day so we can build them tomorrow. Yes, it's okay. What kind of expertise do you need for the next meeting? Well, we're handling the web app, the production web app. That's I guess AWS. Okay. Got it. Cool. Otherwise, I think we are good. Okay. Okay, thank you. Thank you. Have a good day. Thank you. Have a good day. Okay, so what is the question? This is just me being paranoid. Did we push a production build to you or did you upgrade the staging? I created. So you worked on the staging and I created another environment, production one. Okay. And I duplicate. What I could duplicate, I recreate the schema, I deploy the bookie, the Docker image. And that's it. And we talked at the beginning of the project, if you remember, there is a bucket, a delivery bucket, S3, with two repositories, staging and production. Yeah. And at one point, you were supposed to deliver a zip file on the production. Yes. And from my side, there will be automation and the automation will deploy the S4 files into the distribution, the preview distribution. Yeah. And once it's okay, validated or I don't know, it will be switched to production. This is the workflow I create from my side. So I guess. That sounds correct. And again, I think this is mostly just me being paranoid. We'll want to push a new production build soon so we can test reset the password. So we'll just make sure that is set. Yeah, it should work. So what will happen is as soon as you deploy the file, so I should just to make sure everything is the same thing. So in the delivery bucket, as soon as you put a zip file inside, I will deploy the file into the preview environment associated with the preview, the distribution, the same configuration as the staging, same function, everything should be the same. Okay. And on the other hand is the production one. I mean, of course, and it should work. Yeah, it sounds exactly right. We'll just make sure that we push to production before the end of day so that we can, I just want to check that box off and make sure that we've seen production build go live. Yeah. Okay. Thank you very much. Thank you for your patience and putting up with me being paranoid. No, no, because from the beginning, we would like to make sure that this environment is okay because I recreated from scratch. I could forget some stuff. I tried not, but we never know. So I will appreciate if you can deploy a zip file on the production to make sure that the workflow is working correctly and that the preview distribution is okay as well. Should we just try that immediately or like? It's up to you. It should work right now. Yeah, well, let's do that right after the meeting. And if there's no problem, we'll message you one way or another. I mean, I will monitor as well. So I will let others know if I deploy correctly or not. If I see it as an issue or not. I set up the pipeline to put the zip file there. I never actually tried it because we didn't have a good solution. So yeah, it works. It should work, but as it's a different repository. Well, then, Andrew, are you good to give that a spin? Yeah, I believe it's triggered when you deploy it, when you merge the main branch in our web request to Burner. Well, then I can do that right after this meeting. I'll send a message about the added items and then I'll push one to main and we'll see. I'll just check the pipeline to make sure it's configured that way, but I believe that's what it is. Okay, you confirm and I'll push. Cool. Thank you very much. We'll get this tested. Okay, perfect. Thank you. Thank you. I guess that's everything. So unless there's anything last items from you. Okay. Yes, absolutely. I just sent you an email on Jacob and Andrew. If you can please add me in the Firebase app distribution so that I can test it on right. Absolutely. In that case, certainly we'll have messages to go back and forth, but we'll talk tomorrow as well. Perfect. Thank you. Bye. Thank you. Thank you. Thank you. Bye.
|
||||||
|
|
||||||
|
**[16:49 - 16:49]** No čo už.
|
||||||
|
|
||||||
|
**[0:00 - 0:00]** try to get back to you with a position or maybe other questions. I don't know yet, but it's only to let you know that. Okay. Good to see everybody. I think we are all here. Yeah, we've got Karina as well. I guess, do you want me to start? Yeah, sure. Cool. So I have a few notes. I guess the first one is data migration. We have our team doing another, the fix is in. We're doing another pass through to make sure there isn't any problems. We are aiming to send you a build by end of day as soon as our QA has finished going over it. There will be other fixes in this, but I don't think we'll give, we won't consider this like a full UAT build. This will just be for testing data migration, and you'll get the full build end of day tomorrow with the full long list of both this build and the next build's changes, if that's okay with you. So basically, you'll get kind of like work in progress for one bit of narrow testing, so they have a chance to test tomorrow, and then a bigger block with much more testing done from our side, which is essentially also going to be the release candidate by end of day tomorrow. Cool. Okay, so on the items that we've been trading back and forth with questions about, last activity fallback, one thing we can do that's pretty easy is if the network call to track fails going out of the app, we can, instead of waiting an hour until we try again, we can try again in a matter of like seconds. So essentially, there will be a retry system. That is something we can put in in a matter of minutes. So I guess you'll be discussing this afterwards, but that would be a quick fallback. The Firebase auth lockout, so this is the idea of once somebody has logged in and migrated, we lock their Firebase auth account across the board. We were discussing that. This is a backend-only change, so we could put this in even after we've submitted the apps because the apps don't need to change, so we have a little bit more time on that particular item, but obviously we'd need it before go live. I would also mark that down as like we're 95% sure we can pull this one off. Both Andrew and I did some research on it, but we have not dived in 100%, so we would consider this one a 95% certain. What we do have is we have the migrated at timestamp, so we can use that when somebody logs in for the first time. We can check if that's happened in the last minute and show them a message that says, hey, you've just migrated to Bookili 3.0.1. Please update all of your devices. That is something we can put in relatively quickly as well. The last one was on Contentful. It looks like there is a version control system added in on the existing system. Oh, Amadou? You can finish. Oh, yeah. But I'm not sure if the existing system actually works, so there's not really a way for us to test it, but it would be, again, relatively easy for us to add a new field and have the new apps respect a field that says basically if version less than 3.0.1, only show if less than 3.0.1. I will note, however, we only have a day, well, a day and a half left, so we need decisions relatively quickly, and it will take one of our developers and one of our QAs the better part of the day to get all of these done, tested, and confirmed, so we might not be able to get to some other P3 or P4 bugs to get these in, but I do think we can get these accomplished if you decide to make that happen. I guess that covers my side of the four items that we were talking about. Amadou, did you have a question?
|
||||||
|
|
||||||
|
**[6:19 - 6:19]** So what would happen there would depend on whether or not we're using the Firebase auth lockout system. If it is the lockout, then their account would not work on the unupdated device. If lockout isn't present, they could still use the device, but their progress wouldn't be synced. So it's either they're locked out or progress not synced.
|
||||||
|
|
||||||
|
**[7:09 - 7:09]** Yes, absolutely. The four items that we've been trading emails back and forth about, I will send that through. That's relatively straightforward. I guess we only have one other thing from our side. We'd like to check with your team about the web build that you have up on preview. We just want to make sure that's being pulled from the right source, that it's not a staging build, that it's actually production. So I guess that's something, whoever would be responsible for that, if you'll stick around, we can chat that through. It should be pretty quick. I guess the only, I guess the last item on my list is not something that we need to discuss today, but is optional, which is once the apps are submitted, there's how we want to handle the actual go live afterwards. I don't think that's a decision we need to make today, but it is something that we should discuss. Probably won't take very long to decide, but let's pencil that in if you don't want to talk about it today.
|
||||||
|
|
||||||
|
**[8:45 - 8:45]** I guess any questions from your side?
|
||||||
|
|
||||||
|
**[9:48 - 9:48]** I guess if you have no other questions, can we keep your tech people around for a couple minutes? And we'll discuss web and then I guess we'll meet. I'll send the email through with the specific items to be discussed and give us a call one way or another by end of day so we can build them tomorrow. Yes, it's okay. What kind of expertise do you need for the next meeting? Whoever is handling the web app on your side, the production web app, that's I guess your AWS person. Okay, I'm staying. Cool. Otherwise, I think we are good. Okay. Thank you. Thank you. Have a good day. Thank you. Have a good day. Okay, so what is the question? This is just me being paranoid. Did we push a production build to you or did you upgrade a staging build? I create. So you worked on the staging for how long? And I create another environment, production one. Okay. And I duplicate what I could duplicate. I recreate the schema. I deploy the bookie Docker image. And that's it. And we talked at the beginning of the project. If you remember, there is a delivery bucket, S3, with two repository staging on production. Yeah. And at one point, you are supposed to deliver a zip file on the production. Yes. And from my side, there will be automation and the automation will deploy the extra files to the distribution, the preview distribution. Yeah. And once it's okay, validated or I don't know, it will be switched to production. This is a workflow I create from my side. So I guess. That sounds correct. And again, I think this is mostly just me being paranoid. We'll want to push a new production build soon so we can test reset password. So we'll just make sure that that's set. Yeah, it should work. So what will happen if as soon as you deploy a zip file, so I share my screen just to make sure we're talking the same thing. So on the delivery bucket, as soon as you put a zip file inside, I will deploy the file to the preview environment associated with the preview environment. There is a distribution cloud front, same configuration, same function, everything should be the same. Okay. On the back end is a production one. I mean, of course, and it should be okay. It sounds exactly right. We'll just make sure that we push to production before the end of day so that we can, I just want to check that box off and make sure that we've seen production build go live. Yeah. Thank you very much. Thank you for your patience and putting up with me being paranoid. No, no, but because from the beginning, we would like to make sure that this environment is okay because I recreate it from scratch. I could forget some stuff. I tried not, but we never know. So I will appreciate if you can deploy a zip file on the production to make sure that my workflow is working correctly and that the preview distribution is okay as well. Should we just try that like immediately or like later? It's up to you. It should work right now. Yeah, let's do that right after the meeting and if there's no problem, we'll message you one way or another. I will monitor as well. So I will let Andrew know. I mean, it deployed correctly or not. If I see an issue or not. Yeah, I set up the pipeline to put the zip file there. I never actually tried it because we didn't have a production build. So yeah, it works. It should work, but as it's a different repository. Yeah. Well then, Andrew, are you good to give that a spin? Yeah, I believe it's triggered when you deploy, when you merge to main branch in our web repository. Well then, I can do that right after this meeting. I'll send the messages about the added items and then I'll push them to main and we'll see. Well, I'll just take a look at the pipeline to make sure it's configured that way, but I believe that's what I did. Okay, you confirm, then I'll push. Cool, thank you very much. We'll get this tested. Okay, perfect. Thank you. Thank you. I guess that's everything, so unless there's any last items from you. Oh, yes, Abdullah? I mean, it's not maybe related. I just sent you an email, Jacob and Andrew, which is an Android email. If you can please add me in the Firebase app distribution so that I can test on Android. Next build. Yes, absolutely. In that case, I'm certain we'll have messages go back and forth, but we'll talk tomorrow as well. Perfect. Thank you, Jacob. Bye-bye. Thank you, Andrew. Bye. Thank you.
|
||||||
|
|
||||||
|
**[8:51 - 8:51]** Yes, Abdullah. Thank you, Jacob. I just want to circle back. So the Firebase app lookouts will only, I mean, you will only log the app when the user authenticates on Superbase for the first time? Yes, first time with that approach, the first time they authenticate with Superbase when we do the migration, the last step in the migration flow would be to turn off the Firebase authentication. Okay, thank you. I just wanted to clarify that. Okay. Yep. So we migrate them first, and we've been doing that already, and it takes two, three seconds for migration right at the moment with the accounts we have.
|
||||||
|
|
||||||
|
**[16:58 - 16:58]** Wat galt raschpar?
|
||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
@@ -1,995 +0,0 @@
|
|||||||
**[0:00 - 0:01]** ça va ?
|
|
||||||
|
|
||||||
**[0:01 - 0:02]** ça va et toi ?
|
|
||||||
|
|
||||||
**[0:02 - 0:05]** ça va ça va, comment ça se passe à l'enfance ?
|
|
||||||
|
|
||||||
**[0:05 - 0:29]** ah, ça fait mieux aujourd'hui, ça fait 24 24 secondes ouais et si 23, c'est la même chose à peu près ouais, ça va, ça va alors, ça va ouais mais bon, après c'est juste pendant 2-3 jours et après ça remonte ah ouais ben profitez bien parce que maintenant on dirait que c'est septembre, novembre ici ah ouais ?
|
|
||||||
|
|
||||||
**[0:29 - 0:50]** parce que c'est cloudy et tout ah mince oui ouais le retour va quand même on attend 6 mois pour ça 6 mois de l'hiver pour ça mais je suis pas prêt pour l'hiver encore ouais, moi non plus je suis pas prêt, bon, ça ira ça ira, ça ira sinon comment c'est passé au ton week-end, bon week-end ?
|
|
||||||
|
|
||||||
**[0:59 - 1:00]** pour...
|
|
||||||
|
|
||||||
**[1:00 - 1:07]** ah, attends, vas-y, je vais la visite oui, ça va est-ce que je peux regarder les rangs ?
|
|
||||||
|
|
||||||
**[1:07 - 1:08]** hein ?
|
|
||||||
|
|
||||||
**[0:50 - 0:59]** ouais, ça va ok, c'est bien, c'est bien alors alors alors, attends, attends, attends, attends est-ce que j'avais des notes pour...
|
|
||||||
|
|
||||||
**[1:08 - 1:22]** non, je besoin de mon ordinateur d'accord ok ok, bye désolé euh, ok euh, ok euh, où est-ce qu'on a...
|
|
||||||
|
|
||||||
**[1:23 - 1:32]** euh, ben depuis la dernière fois c'était juste le déploiement de IDELO euh, je suis surprise qu'on a pas de retour par rapport à la dernière fonctionnalité, c'était la planification de année en coup d'oeil parce que côté user experience, j'en ai déjà parlé avec euh, j'en ai déjà parlé avec Philippe et Julie euh, euh, durant la dernière fois, j'en ai déjà parlé avec Philippe et Julie euh, euh, durant la dernière fois, j'en ai déjà parlé avec euh, euh, où est-ce qu'on a parlé ?
|
|
||||||
|
|
||||||
**[1:22 - 1:23]** oui, donc quoi neuf ?
|
|
||||||
|
|
||||||
**[1:32 - 1:33]** euh, ouais, non, quoi neuf ?
|
|
||||||
|
|
||||||
**[1:33 - 2:25]** euh, ben depuis la dernière fois c'était juste le déploiement de IDELO euh, je suis surprise qu'on a pas de retour par rapport à la dernière fonctionnalité, c'était la planification de année en coup d'oeil parce que côté user experience, j'en ai déjà parlé avec Philippe et Julie euh, durant la dernière fois, j'en ai déjà parlé avec Philippe et Julie euh, durant l'absence, parce que j'en ai déjà parlé avec Philippe et Julie euh, durant l'absence, parce qu'il il y a quand même des trucs à améliorer, Philippe m'a dit qu'il faut juste mettre des tickets, amélioration UX et j'ai déjà fait ça mais bon euh, côté euh, fonctionnement, on n'a pas de retour sauf le problème que je pense que tu as déjà vu peut-être, ouais, dans le Slack euh, anomalie IDELO c'est par rapport à la euh, l'inscription pour euh, les francophones Oh, attends attends attends attends, c'est quoi ça ?
|
|
||||||
|
|
||||||
**[2:25 - 2:27]** C'est quoi ça c'est ?
|
|
||||||
|
|
||||||
**[2:27 - 2:45]** Euh, euh, pour les personnes qui sont les utilisateurs euh, francophones qui vont passer par euh, sign up euh, normalement euh, ils vont recevoir euh, un email mais en HTML brut euh, et le lien est cassé pour faire l'inscription.
|
|
||||||
|
|
||||||
**[2:45 - 2:47]** Oh !
|
|
||||||
|
|
||||||
**[2:47 - 2:49]** Oh !
|
|
||||||
|
|
||||||
**[2:49 - 2:55]** Ouais, au début euh, parce que moi j'étais tellement surprise parce que ça, pour moi c'est critique donc je le fais son premier sur staging.
|
|
||||||
|
|
||||||
**[2:55 - 2:56]** euh, euh, sur staging.
|
|
||||||
|
|
||||||
**[2:56 - 3:02]** Donc euh, j'ai essayé en français mais en anglais j'ai effectivement reproduit le problème.
|
|
||||||
|
|
||||||
**[3:02 - 3:10]** Maintenant je viens de voir le commentaire de Philippe, il m'a dit que c'est un problème qu'ils ont fixé euh, depuis Drupal en prod.
|
|
||||||
|
|
||||||
**[3:10 - 3:23]** Du coup maintenant il m'a dit qu'il faut juste essayer, quelque chose à écraser ce qu'ils ont déjà fait euh, aucune idée c'est quoi, ils savent même pas eux-mêmes.
|
|
||||||
|
|
||||||
**[3:23 - 3:31]** Du coup euh, je vais le retester et dire à Asma, Asma il a déjà dépanné les utilisateurs mais bon ça va être fixé.
|
|
||||||
|
|
||||||
**[3:31 - 3:37]** Par contre ce qui serait bien de leur demander c'est de, c'est de, c'est de commenter qu'est-ce qu'ils ont fait exactement dans Drupal pour qu'on puisse savoir.
|
|
||||||
|
|
||||||
**[3:37 - 3:38]** Ok.
|
|
||||||
|
|
||||||
**[3:38 - 3:40]** Ouais je pense que c'est bon de savoir qu'est-ce qu'ils ont fait.
|
|
||||||
|
|
||||||
**[3:40 - 3:41]** Ok, ça marche.
|
|
||||||
|
|
||||||
**[3:41 - 3:42]** Ouais.
|
|
||||||
|
|
||||||
**[3:42 - 3:56]** Ça marche euh, pour Bukili euh, j'ai ajouté des bugs euh, euh, on a reçu la dernière fois où je t'ai parlé, on a reçu un déploiement, j'ai pas eu encore le temps pour le tester.
|
|
||||||
|
|
||||||
**[3:56 - 3:57]** Ok.
|
|
||||||
|
|
||||||
**[3:57 - 4:16]** Parce que maintenant je suis sur TFO euh, donc on prévoit euh, je vais pas dire euh, le jeudi parce qu'il y a pas mal de choses, c'est juste Devin qui est un peu trop, il dit que si c'est possible de faire un, un déploiement de jeudi mais je pense que ça va être pour la semaine prochaine.
|
|
||||||
|
|
||||||
**[4:16 - 4:17]** Ok.
|
|
||||||
|
|
||||||
**[4:17 - 4:20]** Après je vais encore switcher pour Bukili encore.
|
|
||||||
|
|
||||||
**[4:20 - 4:21]** Ok, ok.
|
|
||||||
|
|
||||||
**[4:21 - 4:27]** Euh, ce jeudi c'est tight parce que j'ai l'impression que tu avais quand même beaucoup de choses hein.
|
|
||||||
|
|
||||||
**[4:27 - 4:30]** Oui pour TFO.
|
|
||||||
|
|
||||||
**[4:30 - 4:31]** Hum hum.
|
|
||||||
|
|
||||||
**[4:31 - 4:38]** Oui il y a quand même euh, des trucs de publicité euh, il y a pas mal des, des améliorations pour euh, pour le CMS.
|
|
||||||
|
|
||||||
**[4:48 - 4:55]** Euh, euh, le vendredi là euh, euh, et apparemment ça aurait commencé avec des pubs en anglais.
|
|
||||||
|
|
||||||
**[4:55 - 5:03]** Donc j'ai demandé à Devin de s'assurer que ce soit là, soit documenté parce que c'est pas la première fois que ça arrive.
|
|
||||||
|
|
||||||
**[5:03 - 5:07]** Et je veux pas que ça arrive de nouveau qu'on va mettre une sur tes faut pour en reconstruire.
|
|
||||||
|
|
||||||
**[5:07 - 5:08]** Ok.
|
|
||||||
|
|
||||||
**[5:08 - 5:09]** Ouais.
|
|
||||||
|
|
||||||
**[5:09 - 5:10]** Ok.
|
|
||||||
|
|
||||||
**[5:10 - 5:11]** J'avais pas de concentration.
|
|
||||||
|
|
||||||
**[5:11 - 5:12]** Ok.
|
|
||||||
|
|
||||||
**[5:12 - 5:13]** Ok.
|
|
||||||
|
|
||||||
**[5:13 - 5:28]** Il faut se dire que c'est pas sur staging, tu peux pas vraiment qu'est-ce qu'il y a pas de publicité parce que euh, euh, c'est pas sur staging.
|
|
||||||
|
|
||||||
**[5:35 - 5:36]** Ok.
|
|
||||||
|
|
||||||
**[5:28 - 5:35]** Euh, euh, mais je veux continuer sur ça euh, euh, et ça avance bien jusqu'au moment où y a pas vraiment quelque chose de critique dessus.
|
|
||||||
|
|
||||||
**[4:38 - 4:48]** Ouais, parlant de publicité euh, excusez-moi, parlant de publicité euh, apparemment ils ont fait euh, ils ont activé les publicités sur euh, ONFR sur week-end, euh, week-end dernier je veux dire.
|
|
||||||
|
|
||||||
**[5:36 - 5:39]** C'est parce que euh, euh, donc rien qui bloque bloque de majeur.
|
|
||||||
|
|
||||||
**[5:39 - 5:40]** Ok.
|
|
||||||
|
|
||||||
**[5:40 - 5:41]** Non, non, non.
|
|
||||||
|
|
||||||
**[5:41 - 5:44]** Euh, euh, euh, euh, vas-y vas-y.
|
|
||||||
|
|
||||||
**[5:45 - 5:48]** Il y a juste un petit problème par rapport aux dimensions.
|
|
||||||
|
|
||||||
**[5:48 - 5:56]** Euh, redimensionnant lorsqu'on veut, ben afficher le truc euh, lorsqu'on joue avec les zooms, le pourcentage de zoom.
|
|
||||||
|
|
||||||
**[5:44 - 5:45]** Vas-y.
|
|
||||||
|
|
||||||
**[5:56 - 6:02]** Donc euh, la, l'affichage est un peu dispersé surtout euh, sur la page recherche.
|
|
||||||
|
|
||||||
**[6:02 - 6:04]** Mais c'est pas, c'est pas assez grave que ça.
|
|
||||||
|
|
||||||
**[6:04 - 6:10]** Mais moi je prévois aussi tester sur mon téléphone après que je finis tout sur le navigateur.
|
|
||||||
|
|
||||||
**[6:10 - 6:20]** Mais je dois tester euh, mobile parce que ça doit comme apporter des changements sur l'affichage et tout euh, euh, côté mobile.
|
|
||||||
|
|
||||||
**[6:20 - 6:21]** Ok.
|
|
||||||
|
|
||||||
**[6:21 - 6:23]** Attends, on parle bien de TFO ici hein.
|
|
||||||
|
|
||||||
**[6:23 - 6:24]** Oui, oui.
|
|
||||||
|
|
||||||
**[6:24 - 6:25]** Ok, ok.
|
|
||||||
|
|
||||||
**[6:25 - 6:26]** Ok, ok.
|
|
||||||
|
|
||||||
**[6:26 - 6:27]** Ok, ça sent bon.
|
|
||||||
|
|
||||||
**[6:27 - 6:28]** Ok.
|
|
||||||
|
|
||||||
**[6:28 - 6:29]** Ça sent bon.
|
|
||||||
|
|
||||||
**[6:29 - 6:32]** Euh, parfait, parfait.
|
|
||||||
|
|
||||||
**[6:36 - 6:41]** Est-ce que je dois remonter à d'autres personnages, à d'autres personnes je veux dire?
|
|
||||||
|
|
||||||
**[6:32 - 6:36]** Euh, est-ce qu'il y a des frustrations?
|
|
||||||
|
|
||||||
**[6:41 - 6:43]** Euh, non.
|
|
||||||
|
|
||||||
**[6:43 - 6:49]** Euh, il y a quelque chose que Julie m'a demandé par rapport à l'amélioration des user story.
|
|
||||||
|
|
||||||
**[6:49 - 6:50]** Hum hum.
|
|
||||||
|
|
||||||
**[6:50 - 6:53]** Euh, c'est quelque chose que j'ai déjà transmis à Devon.
|
|
||||||
|
|
||||||
**[6:53 - 7:10]** Par rapport aux user story, lorsqu'on fait des critères d'acceptation euh, surtout avec le prompt et tout, euh, ça peut, ça peut que, pour l'AI, quelque chose qui est technique, il doit être transmis normalement au fournisseur.
|
|
||||||
|
|
||||||
**[7:10 - 7:19]** Parce qu'on a aussi une note à transmettre au fournisseur, aux critères techniques, qui sont parfois mélangés dans les critères d'acceptation.
|
|
||||||
|
|
||||||
**[7:19 - 7:27]** Et moi, je suis, je viens d'avoir une rencontre avec Devon, surtout pour clarifier ça sur les user story.
|
|
||||||
|
|
||||||
**[7:27 - 7:28]** Hum hum.
|
|
||||||
|
|
||||||
**[7:28 - 7:35]** Mais, euh, je lui ai déjà parlé de ça et, euh, il m'a dit qu'il va travailler sur ça, comme ça, au futur on a plus ce problème.
|
|
||||||
|
|
||||||
**[7:35 - 7:39]** Et les critères d'acceptation, c'est exactement ce qu'on doit tester.
|
|
||||||
|
|
||||||
**[7:39 - 7:39]** Ok.
|
|
||||||
|
|
||||||
**[7:39 - 7:41]** Ce qu'on peut tester, d'un autre côté.
|
|
||||||
|
|
||||||
**[7:41 - 7:42]** Ok.
|
|
||||||
|
|
||||||
**[7:42 - 7:49]** Donc, euh, ça c'est juste dans le processus vraiment de, de, de clarifier pour, euh, user story.
|
|
||||||
|
|
||||||
**[7:49 - 7:50]** Pour, euh, user story.
|
|
||||||
|
|
||||||
**[7:50 - 7:54]** Pour Idelo, après, euh, ça va être dans le retour de Maxime.
|
|
||||||
|
|
||||||
**[7:54 - 7:55]** Oui.
|
|
||||||
|
|
||||||
**[7:55 - 8:03]** Parce que, euh, euh, je te donne exemple, lorsque moi je faisais les tests de, de, de, de Idelo.
|
|
||||||
|
|
||||||
**[8:03 - 8:05]** Et surtout avec la nouvelle fonctionnalité.
|
|
||||||
|
|
||||||
**[8:05 - 8:08]** C'était, les user story n'étaient pas mis à jour.
|
|
||||||
|
|
||||||
**[8:08 - 8:15]** Par exemple, il y a un ticket qui était déjà mis par Jessica, je pense que c'était avril, mars, quelque chose comme ça.
|
|
||||||
|
|
||||||
**[8:17 - 8:25]** Euh, aussi lorsqu'on parle de nouvelles fonctionnalités, c'est soit qu'on devrait avoir des démos.
|
|
||||||
|
|
||||||
**[8:15 - 8:17]** Mais ce qui n'était pas à jour.
|
|
||||||
|
|
||||||
**[8:25 - 8:33]** Moi, je serais incluse avec, euh, Philippe et tout pour avoir c'est quoi la nouvelle fonctionnalité.
|
|
||||||
|
|
||||||
**[8:33 - 8:34]** Ouais.
|
|
||||||
|
|
||||||
**[8:34 - 8:43]** Ou bien, lorsqu'on précise qu'il y a un lien de design, que le lien, il sera, ben, il sera présent et il ne sera pas pierre brisé.
|
|
||||||
|
|
||||||
**[8:43 - 8:49]** Parce que, ça m'est arrivé que le lien qui était spécifié dans le, dans le, dans le ticket ne marche pas.
|
|
||||||
|
|
||||||
**[8:49 - 8:50]** Ouais.
|
|
||||||
|
|
||||||
**[8:50 - 8:56]** Mais, euh, ça je l'ai déjà remonté à, à Julie.
|
|
||||||
|
|
||||||
**[8:56 - 8:59]** Peut-être qu'ils vont travailler sur ça avec, euh, avec le retour de Maxime.
|
|
||||||
|
|
||||||
**[8:59 - 9:00]** Ok.
|
|
||||||
|
|
||||||
**[9:00 - 9:05]** Tu sais que Maxime ne sera pas renouvelé à la fin de son contrat, hein?
|
|
||||||
|
|
||||||
**[9:08 - 9:09]** Ok, non.
|
|
||||||
|
|
||||||
**[9:07 - 9:08]** Ah, je ne savais pas.
|
|
||||||
|
|
||||||
**[9:09 - 9:17]** Bah, je ne sais pas à quel point c'est un secret ou pas, mais, euh, est-ce que c'est un secret?
|
|
||||||
|
|
||||||
**[9:17 - 9:19]** Ouais, bref, garde-le pour toi, pour le moment.
|
|
||||||
|
|
||||||
**[9:19 - 9:20]** Je ne sais pas si c'est.
|
|
||||||
|
|
||||||
**[9:20 - 9:21]** Non, t'inquiète.
|
|
||||||
|
|
||||||
**[9:21 - 9:22]** Garde-le pour toi.
|
|
||||||
|
|
||||||
**[9:22 - 9:26]** C'est juste que, vu qu'il vit à Montréal, ça va être un peu compliqué de le garder à la fin de son contrat.
|
|
||||||
|
|
||||||
**[9:26 - 9:28]** Il a vu un contrat spécial.
|
|
||||||
|
|
||||||
**[9:05 - 9:07]** Je ne sais pas si tu savais.
|
|
||||||
|
|
||||||
**[9:28 - 9:29]** Ah, ok.
|
|
||||||
|
|
||||||
**[9:29 - 9:30]** C'était un contrat spécial qu'il a eu.
|
|
||||||
|
|
||||||
**[9:32 - 9:37]** Je pense qu'à la fin de son contrat, ça va être Deven qui va reprendre le dessus.
|
|
||||||
|
|
||||||
**[9:37 - 9:46]** Parce qu'il y a un autre product manager, mais, euh, qui va à la place de Deven.
|
|
||||||
|
|
||||||
**[9:54 - 9:55]** Donc, normalement, tu...
|
|
||||||
|
|
||||||
**[9:55 - 9:56]** Une personne enceinte.
|
|
||||||
|
|
||||||
**[9:56 - 9:57]** Ah, Laura.
|
|
||||||
|
|
||||||
**[9:46 - 9:54]** C'est une personne, parce que je me rappelle que, que la personne qui était avant Deven, il m'a dit qu'il va retourner.
|
|
||||||
|
|
||||||
**[9:57 - 9:58]** Non, non, c'est pas Laura.
|
|
||||||
|
|
||||||
**[9:58 - 9:59]** Non, c'est pas Laura.
|
|
||||||
|
|
||||||
**[10:01 - 10:02]** Frédéric.
|
|
||||||
|
|
||||||
**[10:00 - 10:01]** Frédéric.
|
|
||||||
|
|
||||||
**[9:30 - 9:32]** Donc, malheureusement, ça va être un peu compliqué.
|
|
||||||
|
|
||||||
**[9:59 - 10:00]** Ah, Frédéric.
|
|
||||||
|
|
||||||
**[10:03 - 10:04]** Frédéric.
|
|
||||||
|
|
||||||
**[10:02 - 10:03]** Frédéric.
|
|
||||||
|
|
||||||
**[10:04 - 10:05]** Frédéric.
|
|
||||||
|
|
||||||
**[10:07 - 10:08]** Oui, c'est ça.
|
|
||||||
|
|
||||||
**[10:06 - 10:07]** Frédéric.
|
|
||||||
|
|
||||||
**[10:05 - 10:06]** Frédéric.
|
|
||||||
|
|
||||||
**[10:09 - 10:10]** Frédéric.
|
|
||||||
|
|
||||||
**[10:10 - 10:11]** Frédéric, elle revient.
|
|
||||||
|
|
||||||
**[10:16 - 10:17]** Qu'est-ce qu'elle m'a dit?
|
|
||||||
|
|
||||||
**[10:17 - 10:19]** Le 18 septembre.
|
|
||||||
|
|
||||||
**[10:11 - 10:13]** Je sais pas quand elle revient.
|
|
||||||
|
|
||||||
**[10:19 - 10:22]** Je pense que c'est là où Laura revient.
|
|
||||||
|
|
||||||
**[10:08 - 10:09]** Frédéric.
|
|
||||||
|
|
||||||
**[10:25 - 10:28]** Mais, euh, moi j'ai cru comprendre, à moins que...
|
|
||||||
|
|
||||||
**[10:22 - 10:25]** Frédéric, je sais pas quand elle revient.
|
|
||||||
|
|
||||||
**[10:13 - 10:16]** Je sais que Laura revient le...
|
|
||||||
|
|
||||||
**[10:31 - 10:35]** Frédéric, elle connaît bien le métier aussi.
|
|
||||||
|
|
||||||
**[10:36 - 10:39]** Donc, ça devrait bien se passer.
|
|
||||||
|
|
||||||
**[10:28 - 10:31]** Je sais pas qu'il va y avoir idéal, je vais laisser Julie décider là.
|
|
||||||
|
|
||||||
**[10:49 - 10:51]** Parce que maintenant, il me pose des questions.
|
|
||||||
|
|
||||||
**[10:52 - 10:54]** Mais, ouais.
|
|
||||||
|
|
||||||
**[10:39 - 10:49]** Parce que, je pense, pour que Devin sera sur Idelo, il aura besoin vraiment de passer du temps à le comprendre.
|
|
||||||
|
|
||||||
**[11:02 - 11:03]** Ouais.
|
|
||||||
|
|
||||||
**[10:58 - 11:02]** Il y a rien qui est documenté, il y a aussi le côté de Repan, etc.
|
|
||||||
|
|
||||||
**[11:06 - 11:07]** Ouais.
|
|
||||||
|
|
||||||
**[10:54 - 10:58]** Avec Idelo, c'est un peu compliqué parce qu'il y a pas mal...
|
|
||||||
|
|
||||||
**[11:07 - 11:08]** Ok.
|
|
||||||
|
|
||||||
**[11:03 - 11:06]** C'est assez compliqué, effectivement.
|
|
||||||
|
|
||||||
**[11:08 - 11:09]** Ça va se dire.
|
|
||||||
|
|
||||||
**[10:51 - 10:52]** Ouais, ouais, ouais, je comprends.
|
|
||||||
|
|
||||||
**[11:09 - 11:13]** Sinon, à part ça, moi j'ai pas vraiment grand chose de nouveau de mon côté.
|
|
||||||
|
|
||||||
**[10:35 - 10:36]** Ok.
|
|
||||||
|
|
||||||
**[11:13 - 11:14]** Euh...
|
|
||||||
|
|
||||||
**[11:14 - 11:18]** Je m'en vais en vacances à la fin de cette semaine là.
|
|
||||||
|
|
||||||
**[11:18 - 11:20]** Euh...
|
|
||||||
|
|
||||||
**[11:20 - 11:23]** Je voulais quand même te présenter, mais je vais...
|
|
||||||
|
|
||||||
**[11:23 - 11:27]** Je t'explique, enfin je te donne la raison pourquoi je ne vais pas le faire.
|
|
||||||
|
|
||||||
**[11:27 - 11:31]** Je voulais quand même te présenter l'idée que j'ai en tête pour la nouvelle synchro.
|
|
||||||
|
|
||||||
**[11:31 - 11:32]** Euh...
|
|
||||||
|
|
||||||
**[11:32 - 11:39]** Mais je ne veux pas me précipiter parce que je veux voir si Mohamed Benyaya va d'abord aborder le choc dans ce sens là.
|
|
||||||
|
|
||||||
**[11:40 - 11:43]** Je me dis que ça ne sert à rien de le présenter si lui, il n'est pas d'accord.
|
|
||||||
|
|
||||||
**[11:39 - 11:40]** Ok.
|
|
||||||
|
|
||||||
**[11:43 - 11:46]** Et ça va juste créer de la confusion à droite et à gauche.
|
|
||||||
|
|
||||||
**[11:55 - 11:59]** Si lui comprend où je veux en aller, là je vais commencer à parler tranquillement avec tout le monde.
|
|
||||||
|
|
||||||
**[11:46 - 11:50]** Je t'en parle juste parce que la dernière fois je voulais que je te disais que j'allais t'envoyer le document, mais...
|
|
||||||
|
|
||||||
**[11:59 - 12:00]** Donc...
|
|
||||||
|
|
||||||
**[12:00 - 12:01]** Ça marche.
|
|
||||||
|
|
||||||
**[12:01 - 12:05]** Ça sera certainement mon retour quand je vais revenir pour ça.
|
|
||||||
|
|
||||||
**[11:50 - 11:55]** Je veux juste m'assurer que Mohamed d'abord comprenne la vision que j'ai en tête.
|
|
||||||
|
|
||||||
**[12:05 - 12:06]** Ça marche.
|
|
||||||
|
|
||||||
**[12:06 - 12:11]** By the way, c'est quoi ton feedback par rapport à Bokili lorsque tu l'as vu?
|
|
||||||
|
|
||||||
**[12:17 - 12:18]** Euh...
|
|
||||||
|
|
||||||
**[12:12 - 12:17]** Ça m'a l'air d'être ok, j'ai pas regardé beaucoup je t'avoue, je me suis juste inscrit vite fait.
|
|
||||||
|
|
||||||
**[12:18 - 12:22]** Mais il faut que je retourne dessus parce que j'ai été perturbé par autre chose.
|
|
||||||
|
|
||||||
**[12:22 - 12:25]** Il y avait une autre urgence pour Xavier là.
|
|
||||||
|
|
||||||
**[12:11 - 12:12]** Euh...
|
|
||||||
|
|
||||||
**[12:27 - 12:28]** Euh...
|
|
||||||
|
|
||||||
**[12:28 - 12:31]** Mais yeah, je vais regarder ça de nouveau.
|
|
||||||
|
|
||||||
**[12:32 - 12:36]** Parce que la dernière fois quand je t'ai posé la question, c'était juste un truc qui m'est venu en tête.
|
|
||||||
|
|
||||||
**[12:36 - 12:37]** Mais là je l'ai noté.
|
|
||||||
|
|
||||||
**[12:37 - 12:38]** Euh...
|
|
||||||
|
|
||||||
**[12:38 - 12:41]** Regardez Bokili, c'était génie de nouveau.
|
|
||||||
|
|
||||||
**[12:31 - 12:32]** D'ailleurs tu sais quoi?
|
|
||||||
|
|
||||||
**[12:41 - 12:43]** Euh...
|
|
||||||
|
|
||||||
**[12:43 - 12:48]** Par contre, en parlant de Bokili, moi je sens d'une rencontre, d'ailleurs je sais pas pourquoi tu m'étais pas là.
|
|
||||||
|
|
||||||
**[12:50 - 12:51]** Mais bon bref.
|
|
||||||
|
|
||||||
**[12:50 - 12:50]** J'aurais dû penser à...
|
|
||||||
|
|
||||||
**[12:25 - 12:27]** Non, j'ai dû me rater pour ça.
|
|
||||||
|
|
||||||
**[12:51 - 12:53]** Euh...
|
|
||||||
|
|
||||||
**[12:53 - 13:00]** Dans la rencontre, c'était pour apparemment The Man qui aurait demandé si au niveau de l'infrastructure tout était prêt pour un déploiement en prod.
|
|
||||||
|
|
||||||
**[13:04 - 13:08]** La manière dont il l'a fait c'est que euh...
|
|
||||||
|
|
||||||
**[13:01 - 13:04]** Franck nous a expliqué que techniquement, oui c'est prêt.
|
|
||||||
|
|
||||||
**[13:16 - 13:18]** S'il y a un répertoire pour le staging, un répertoire pour la prod.
|
|
||||||
|
|
||||||
**[13:12 - 13:16]** Et dedans il y a deux répertoires.
|
|
||||||
|
|
||||||
**[13:00 - 13:01]** Mmh.
|
|
||||||
|
|
||||||
**[13:18 - 13:24]** S'ils font une livraison sur staging, ça va déclencher le CI/CD qui va déployer sur staging.
|
|
||||||
|
|
||||||
**[13:24 - 13:32]** Mais s'ils font ce prod, ça va faire un CI/CD sur un environnement preview qu'on va devoir valider.
|
|
||||||
|
|
||||||
**[13:39 - 13:41]** Euh...
|
|
||||||
|
|
||||||
**[13:32 - 13:37]** Et une fois que c'est validé, là Franck va appuyer le bouton pour dire d'aller en prod.
|
|
||||||
|
|
||||||
**[12:48 - 12:50]** Euh...
|
|
||||||
|
|
||||||
**[13:41 - 13:48]** Mais par contre moi ce qui m'inquiète et que j'ai besoin de clarifier avec The Man, donc c'est Abdoulaye qui devrait écrire l'email.
|
|
||||||
|
|
||||||
**[13:37 - 13:39]** Moi j'ai dit ok tout ça c'est beau.
|
|
||||||
|
|
||||||
**[13:08 - 13:12]** Apparemment il y a un bucket S3 qui sert de delivery.
|
|
||||||
|
|
||||||
**[13:59 - 14:01]** Est-ce que comment on synchronise avec les stores ?
|
|
||||||
|
|
||||||
**[14:01 - 14:03]** C'est pas clair pour moi tout ça.
|
|
||||||
|
|
||||||
**[13:48 - 13:54]** C'est quoi le flux de publication avec tous les environnements.
|
|
||||||
|
|
||||||
**[14:08 - 14:14]** Si Abdoulaye envoie son image je vais te le forwarder et je vais dire à Abdoulaye de t'ajouter dans les prochains aussi.
|
|
||||||
|
|
||||||
**[14:14 - 14:16]** Ça marche.
|
|
||||||
|
|
||||||
**[14:17 - 14:19]** Donc euh...
|
|
||||||
|
|
||||||
**[14:19 - 14:19]** Ok.
|
|
||||||
|
|
||||||
**[14:16 - 14:17]** Ça marche.
|
|
||||||
|
|
||||||
**[14:19 - 14:21]** Euh...
|
|
||||||
|
|
||||||
**[14:21 - 14:31]** Pour moi la vérité ce qu'on a avec Bukiri c'est que je pense que la fréquence de déploiement lorsqu'il nous déploie quelque chose, c'est pas quelque chose qui...
|
|
||||||
|
|
||||||
**[14:03 - 14:05]** Donc euh...
|
|
||||||
|
|
||||||
**[14:38 - 14:40]** Yves raison, une autre semaine.
|
|
||||||
|
|
||||||
**[14:40 - 14:41]** Parce que moi...
|
|
||||||
|
|
||||||
**[14:31 - 14:38]** Je n'ai aucune idée si c'est vraiment programmé pour que ça soit une semaine et après on va avoir une autre...
|
|
||||||
|
|
||||||
**[14:44 - 14:45]** Bah...
|
|
||||||
|
|
||||||
**[14:45 - 14:46]** De moment qu'on a des déploiements.
|
|
||||||
|
|
||||||
**[14:43 - 14:44]** Vraiment, I lost count.
|
|
||||||
|
|
||||||
**[14:55 - 14:56]** c'est quand la date de déploiement officiel ?
|
|
||||||
|
|
||||||
**[14:53 - 14:55]** La question a été c'est quand la date...
|
|
||||||
|
|
||||||
**[14:41 - 14:43]** Vraiment, I lost count.
|
|
||||||
|
|
||||||
**[14:46 - 14:53]** Bah en fait, Franck il a posé une question et c'est une question qui est pertinente et je pense qu'on s'est jamais assis pour y réfléchir.
|
|
||||||
|
|
||||||
**[14:58 - 14:59]** Hum hum.
|
|
||||||
|
|
||||||
**[14:59 - 15:04]** On a juste dit qu'on veut que le projet soit prêt pour le 15 août mais on a jamais donné de date officielle.
|
|
||||||
|
|
||||||
**[14:56 - 14:58]** On en a jamais donné.
|
|
||||||
|
|
||||||
**[15:06 - 15:14]** Je pense que là en ce moment le mieux c'est de voir comment est-ce que Zomane travaille par rapport à ces livraisons-là.
|
|
||||||
|
|
||||||
**[14:05 - 14:08]** Je voulais juste que tu sois au courant quand même là mais euh...
|
|
||||||
|
|
||||||
**[15:05 - 15:06]** Hum...
|
|
||||||
|
|
||||||
**[15:14 - 15:15]** Hum hum.
|
|
||||||
|
|
||||||
**[15:04 - 15:05]** Donc, hum...
|
|
||||||
|
|
||||||
**[15:15 - 15:21]** Et une fois qu'on est prêt, qu'on s'assoit tous et qu'on commence à dire ok, voici les fréquences de déploiement qu'on veut.
|
|
||||||
|
|
||||||
**[13:54 - 13:59]** C'est à dire que là on a parlé de S3 mais qu'est-ce qu'il en est des stores ?
|
|
||||||
|
|
||||||
**[15:21 - 15:22]** Hum hum.
|
|
||||||
|
|
||||||
**[15:27 - 15:29]** Et parler de tout ça.
|
|
||||||
|
|
||||||
**[15:29 - 15:32]** Je pense que c'est une discussion qu'on doit avoir de façon assez pertinente.
|
|
||||||
|
|
||||||
**[15:32 - 15:33]** Hum hum...
|
|
||||||
|
|
||||||
**[15:42 - 15:46]** Comme ça si pendant mon absence elle peut commencer cette rencontre-là.
|
|
||||||
|
|
||||||
**[15:46 - 15:47]** Hum.
|
|
||||||
|
|
||||||
**[15:33 - 15:42]** Je vais glisser un mot à Julie dans mes notes pour qu'elle va revenir.
|
|
||||||
|
|
||||||
**[15:47 - 15:50]** Comme ça on pourra déterminer c'est quoi la fréquence de déploiement.
|
|
||||||
|
|
||||||
**[15:50 - 16:00]** Ça marche parce que au début moi j'ai prévu qu'on travaille maintenant je travaille toujours avec TestTrail pour guider mes tests.
|
|
||||||
|
|
||||||
**[16:00 - 16:03]** Et après le fichier automatisé Excel.
|
|
||||||
|
|
||||||
**[16:03 - 16:07]** Mais vu qu'il y a pas mal de déploiement, il y en a qui peuvent.
|
|
||||||
|
|
||||||
**[15:22 - 15:27]** Est-ce qu'on peut commencer à revenir sur des itérations de 2 semaines, 3 semaines, whatever.
|
|
||||||
|
|
||||||
**[16:16 - 16:19]** Du coup tout est documenté au côté...
|
|
||||||
|
|
||||||
**[16:07 - 16:16]** Du coup lorsque moi je dois tester, je fais comme des tests basés sur l'expérience et basés sur ce qu'on a à back to back testing parce qu'on a déjà la version actuelle.
|
|
||||||
|
|
||||||
**[16:19 - 16:21]** Bien sûr côté bug.
|
|
||||||
|
|
||||||
**[16:21 - 16:22]** Mais euh...
|
|
||||||
|
|
||||||
**[16:22 - 16:24]** Ben le suivi déjà on a pas...
|
|
||||||
|
|
||||||
**[16:24 - 16:25]** Ouais...
|
|
||||||
|
|
||||||
**[16:30 - 16:31]** Ok.
|
|
||||||
|
|
||||||
**[16:29 - 16:30]** Ok.
|
|
||||||
|
|
||||||
**[16:32 - 16:46]** De toute façon le truc le plus important c'est que je leur dirai et je vais l'écrit dans ma note c'est de ne pas faire un déploiement genre 2-3 jours avant tes vacances.
|
|
||||||
|
|
||||||
**[16:46 - 16:47]** Ok.
|
|
||||||
|
|
||||||
**[16:47 - 16:55]** Comme je ne veux pas pendant tes vacances et je ne veux pas 2-3 jours avant tes vacances non plus.
|
|
||||||
|
|
||||||
**[16:55 - 17:01]** Parce que je veux pas que 2-3 jours on te bombarde de choses et après tu dois aller en vacances juste parce que tu dois aller...
|
|
||||||
|
|
||||||
**[16:25 - 16:29]** On a pas vraiment de vrai suivi réellement.
|
|
||||||
|
|
||||||
**[17:01 - 17:04]** Non non je veux que tu ailles en vacances de façon relax là.
|
|
||||||
|
|
||||||
**[17:04 - 17:05]** Donc on termine avant.
|
|
||||||
|
|
||||||
**[17:07 - 17:13]** Comme ça là c'est juste des choses, les petites choses que tu as à faire et ensuite tu vas en vacances.
|
|
||||||
|
|
||||||
**[17:13 - 17:14]** Parce que...
|
|
||||||
|
|
||||||
**[16:31 - 16:32]** Ok.
|
|
||||||
|
|
||||||
**[17:15 - 17:18]** Ben reste pas beaucoup de temps hein.
|
|
||||||
|
|
||||||
**[17:14 - 17:15]** Ouais.
|
|
||||||
|
|
||||||
**[17:05 - 17:07]** Idéalement 3 jours avant.
|
|
||||||
|
|
||||||
**[17:19 - 17:20]** On est quand même 7.
|
|
||||||
|
|
||||||
**[17:20 - 17:21]** Ouais.
|
|
||||||
|
|
||||||
**[17:18 - 17:19]** Ah non.
|
|
||||||
|
|
||||||
**[17:23 - 17:30]** Ben je vais glisser des mots à Julie par rapport à tout ça et je vais en parler aussi avec Abdoulaye et Franck.
|
|
||||||
|
|
||||||
**[17:30 - 17:31]** Ça marche.
|
|
||||||
|
|
||||||
**[17:35 - 17:36]** Ok.
|
|
||||||
|
|
||||||
**[17:22 - 17:23]** Ok.
|
|
||||||
|
|
||||||
**[17:36 - 17:42]** Comme ça je vois aussi son suivi parce que je pense qu'il travaille sur les tests à Boukili en ce moment.
|
|
||||||
|
|
||||||
**[17:42 - 17:43]** Ok.
|
|
||||||
|
|
||||||
**[17:31 - 17:35]** De toute façon j'ai eu une rencontre avec Abdoulaye le mercredi.
|
|
||||||
|
|
||||||
**[17:43 - 17:49]** Comme ça je vois son avancement et j'espère que je finis avec les tests à TFO.
|
|
||||||
|
|
||||||
**[17:49 - 17:51]** Je repasse directement sur Boukili.
|
|
||||||
|
|
||||||
**[17:52 - 17:53]** Ça marche.
|
|
||||||
|
|
||||||
**[17:53 - 17:55]** Boukidouki.
|
|
||||||
|
|
||||||
**[17:21 - 17:22]** Ouais.
|
|
||||||
|
|
||||||
**[17:55 - 17:57]** Ça marche.
|
|
||||||
|
|
||||||
**[17:57 - 17:58]** Ben merci beaucoup Abdoulaye.
|
|
||||||
|
|
||||||
**[17:58 - 17:59]** Merci.
|
|
||||||
|
|
||||||
**[18:00 - 18:01]** Allez, prends ça de toi.
|
|
||||||
|
|
||||||
**[17:59 - 18:00]** A toi aussi.
|
|
||||||
|
|
||||||
**[18:01 - 18:02]** Ok bye.
|
|
||||||
|
|
||||||
**[18:02 - 18:03]** Bye.
|
|
||||||
|
|
||||||
**[0:00 - 0:00]** Ça va?
|
|
||||||
|
|
||||||
**[17:51 - 17:52]** Ok.
|
|
||||||
|
|
||||||
**[0:00 - 0:03]** Ça va, ça va.
|
|
||||||
|
|
||||||
**[0:04 - 0:09]** Ah!
|
|
||||||
|
|
||||||
**[0:15 - 0:21]** Ah ouais.
|
|
||||||
|
|
||||||
**[0:13 - 0:15]** Ouais.
|
|
||||||
|
|
||||||
**[0:21 - 0:26]** Ben, profitez bien parce que maintenant, on dirait que c'est septembre, novembre ici.
|
|
||||||
|
|
||||||
**[0:26 - 0:29]** Parce que c'est cloudy et tout.
|
|
||||||
|
|
||||||
**[0:30 - 0:31]** Ouais.
|
|
||||||
|
|
||||||
**[0:09 - 0:13]** Ici 23, c'est la même chose à peu près.
|
|
||||||
|
|
||||||
**[0:31 - 0:36]** On attend six mois pour ça.
|
|
||||||
|
|
||||||
**[0:36 - 0:38]** Six mois de l'hiver pour ça.
|
|
||||||
|
|
||||||
**[0:03 - 0:04]** Comment ça se passe en France?
|
|
||||||
|
|
||||||
**[0:59 - 1:00]** Merci.
|
|
||||||
|
|
||||||
**[0:43 - 0:51]** Ouais, ça va.
|
|
||||||
|
|
||||||
**[0:38 - 0:43]** Ouais, moi non plus.
|
|
||||||
|
|
||||||
**[1:38 - 1:44]** Je suis surprise qu'on n'a pas de retour par rapport à la dernière fonctionnalité.
|
|
||||||
|
|
||||||
**[1:44 - 2:01]** C'était la planification d'un coup d'œil parce que côté user experience, j'en ai déjà parlé avec Philippe et Julie durant leur absence parce qu'il y a quand même des trucs à améliorer.
|
|
||||||
|
|
||||||
**[1:29 - 1:38]** Depuis la dernière fois, c'était juste le déploiement de IDLO.
|
|
||||||
|
|
||||||
**[2:27 - 2:45]** Pour les personnes qui sont les utilisateurs francophones qui vont passer par Sign Up, normalement, ils vont recevoir un email, mais en HTML brut, et le lien est cassé pour faire l'inscription.
|
|
||||||
|
|
||||||
**[2:47 - 2:53]** Oui, au début, parce que moi, j'étais tellement surprise parce que ça, pour moi, c'est critique.
|
|
||||||
|
|
||||||
**[2:55 - 3:02]** Donc, j'ai essayé en français, mais en anglais, j'ai effectivement reproduit le problème.
|
|
||||||
|
|
||||||
**[3:02 - 3:05]** Maintenant, je viens de voir le commentaire de Philippe.
|
|
||||||
|
|
||||||
**[2:53 - 2:55]** Donc, je le décembre premier sur staging.
|
|
||||||
|
|
||||||
**[3:05 - 3:10]** Il m'a dit que c'est un problème qu'il a fixé depuis Drupal en prod.
|
|
||||||
|
|
||||||
**[3:11 - 3:14]** Du coup, maintenant, il m'a dit qu'il faut juste essayer, essayer.
|
|
||||||
|
|
||||||
**[3:17 - 3:20]** Aucune idée c'est quoi.
|
|
||||||
|
|
||||||
**[3:20 - 3:23]** Ils ne savent même pas eux-mêmes.
|
|
||||||
|
|
||||||
**[3:38 - 3:40]** Ok, ça marche.
|
|
||||||
|
|
||||||
**[3:40 - 3:43]** Ça marche.
|
|
||||||
|
|
||||||
**[3:14 - 3:17]** Quelque chose a écrasé ce qu'ils ont déjà fait.
|
|
||||||
|
|
||||||
**[3:43 - 3:48]** Pour Bookili, j'ai ajouté des bugs.
|
|
||||||
|
|
||||||
**[2:08 - 2:23]** Mais bon, côté fonctionnement, on n'a pas de retour, sauf le problème que je pense que tu as déjà vu, peut-être, dans le Slack Anomaly Idélo, c'est par rapport à l'inscription pour les francophones.
|
|
||||||
|
|
||||||
**[3:48 - 3:53]** On a reçu, la dernière fois où je t'ai parlé, on a reçu un déploiement.
|
|
||||||
|
|
||||||
**[3:58 - 4:08]** Donc, on prévoit, je ne vais pas dire le jeudi parce qu'il y a pas mal de choses, c'est juste Devin qui est un peu trop.
|
|
||||||
|
|
||||||
**[4:28 - 4:29]** Oui, pour TFO.
|
|
||||||
|
|
||||||
**[4:16 - 4:19]** Après, je vais encore switcher pour Bookili encore.
|
|
||||||
|
|
||||||
**[3:53 - 3:58]** Je n'ai pas eu encore le temps pour le tester parce que maintenant, je suis sur TFO.
|
|
||||||
|
|
||||||
**[4:29 - 4:33]** Oui, il y a quand même les trucs de publicité.
|
|
||||||
|
|
||||||
**[4:33 - 4:38]** Il y a pas mal des améliorations pour le CMS.
|
|
||||||
|
|
||||||
**[5:07 - 5:07]** Ok.
|
|
||||||
|
|
||||||
**[3:23 - 3:31]** Du coup, je vais le retester et dire à Asma, Asma, il a déjà dépanné les utilisateurs, mais bon, ça va être fixé.
|
|
||||||
|
|
||||||
**[4:41 - 5:07]** Ok.
|
|
||||||
|
|
||||||
**[5:07 - 5:08]** Ok.
|
|
||||||
|
|
||||||
**[5:08 - 5:09]** Ok.
|
|
||||||
|
|
||||||
**[4:08 - 4:16]** Il dit que c'est possible de faire un déploiement de jeudi, mais je pense que ça va être pour la semaine prochaine.
|
|
||||||
|
|
||||||
**[4:38 - 4:41]** Oui.
|
|
||||||
|
|
||||||
**[5:09 - 5:11]** Ok.
|
|
||||||
|
|
||||||
**[5:11 - 5:25]** De toute façon, je ne peux pas vraiment rester avec la publicité parce que c'est juste un peu de publicité qui est déjà en fichier parce que ce n'est pas un seul staging.
|
|
||||||
|
|
||||||
**[2:01 - 2:08]** Philippe m'a dit qu'il faut juste mettre des tickets, amélioration UX, et j'ai déjà fait ça.
|
|
||||||
|
|
||||||
**[5:25 - 5:29]** Mais bon, je vais continuer sur ça.
|
|
||||||
|
|
||||||
**[5:29 - 5:34]** Et ça avance bien jusqu'au moment où il n'y a pas vraiment quelque chose de critique dessus.
|
|
||||||
|
|
||||||
**[5:39 - 5:41]** Non, non, non.
|
|
||||||
|
|
||||||
**[5:41 - 5:45]** Il y a juste un petit problème par rapport aux dimensions.
|
|
||||||
|
|
||||||
**[5:49 - 5:53]** Lorsqu'on joue avec les zooms, le pourcentage de zooms.
|
|
||||||
|
|
||||||
**[5:53 - 5:58]** Donc, l'affichage est un peu dispersé, surtout sur la page recherche.
|
|
||||||
|
|
||||||
**[5:45 - 5:49]** Redimensionnons lorsqu'on veut afficher le truc.
|
|
||||||
|
|
||||||
**[5:58 - 6:01]** Mais ce n'est pas assez grave que ça.
|
|
||||||
|
|
||||||
**[6:01 - 6:08]** Mais moi, je prévois aussi tester sur mon téléphone après que je finis tout sur le navigateur.
|
|
||||||
|
|
||||||
**[6:08 - 6:19]** Mais je dois tester mobile parce que ça doit apporter des changements sur l'affichage et tout côté mobile.
|
|
||||||
|
|
||||||
**[6:19 - 6:23]** Oui, oui, oui.
|
|
||||||
|
|
||||||
**[6:23 - 6:35]** Oui.
|
|
||||||
|
|
||||||
**[6:38 - 6:42]** Non.
|
|
||||||
|
|
||||||
**[6:42 - 6:48]** Il y a quelque chose que Julie m'a demandé par rapport à l'amélioration du user story.
|
|
||||||
|
|
||||||
**[6:53 - 6:56]** C'est quelque chose que j'ai déjà transmis à Devon.
|
|
||||||
|
|
||||||
**[6:56 - 7:13]** Par rapport au user story, lorsqu'on fait des critères d'acceptation, surtout avec le prompt et tout, ça peut que pour l'AI, quelque chose qui est technique, il doit être transmis normalement au fournisseur parce qu'on a aussi une note à transmettre au fournisseur.
|
|
||||||
|
|
||||||
**[7:13 - 7:14]** Et puis, je pense que c'est un peu plus de critères de l'affichage.
|
|
||||||
|
|
||||||
**[7:14 - 7:21]** Et puis, je pense que c'est un peu plus de critères techniques qui sont parfois mélangés dans les critères d'acceptation.
|
|
||||||
|
|
||||||
**[7:21 - 7:26]** Et moi, je viens d'avoir une rencontre avec Devon, surtout pour clarifier ça sur les user stories.
|
|
||||||
|
|
||||||
**[7:26 - 7:33]** Mais Julie a déjà parlé de ça et il m'a dit qu'il va travailler sur ça comme ça, en futur, on n'a plus ce problème.
|
|
||||||
|
|
||||||
**[7:33 - 7:40]** Et les critères d'acceptation, c'est exactement ce qu'on doit tester et ce qu'on peut tester de notre côté.
|
|
||||||
|
|
||||||
**[7:40 - 7:48]** Donc, ça, c'est juste dans le processus vraiment de clarifier pour les user stories.
|
|
||||||
|
|
||||||
**[7:54 - 8:07]** Parce que je te donne exemple, lorsque moi, je faisais les tests de Idelo et surtout avec la nouvelle fonctionnalité, c'était les user stories n'étaient pas mis à jour.
|
|
||||||
|
|
||||||
**[8:07 - 8:11]** Par exemple, il y a un ticket qui était déjà mis par Jessica.
|
|
||||||
|
|
||||||
**[8:11 - 8:14]** Je pense que c'était avril, mars, quelque chose comme ça.
|
|
||||||
|
|
||||||
**[8:14 - 8:16]** Mais ce qui n'était pas à jour.
|
|
||||||
|
|
||||||
**[8:17 - 8:24]** Aussi, lorsqu'on parle de nouvelles fonctionnalités, c'est soit qu'on devrait avoir des démos.
|
|
||||||
|
|
||||||
**[8:24 - 8:31]** Moi, je serais incluse avec Philippe et tout pour avoir c'est quoi la nouvelle fonctionnalité.
|
|
||||||
|
|
||||||
**[8:31 - 8:41]** Ou bien lorsqu'on précise qu'il y a un lien de design, que le lien, il sera présent, il ne sera pas prisé.
|
|
||||||
|
|
||||||
**[8:41 - 8:48]** Parce que ça m'est arrivé que le lien qui était spécifié dans le ticket ne marche pas.
|
|
||||||
|
|
||||||
**[7:48 - 7:53]** Pour Idelo, après, ça va être dans le retour de Maxime.
|
|
||||||
|
|
||||||
**[8:48 - 8:54]** Mais ça, je l'ai déjà remonté à Julie.
|
|
||||||
|
|
||||||
**[8:54 - 8:58]** Peut-être qu'ils vont travailler sur ça avec le retour de Maxime.
|
|
||||||
|
|
||||||
**[8:58 - 9:07]** Ah, non, je ne savais pas.
|
|
||||||
|
|
||||||
**[9:19 - 9:26]** Ah, ok.
|
|
||||||
|
|
||||||
**[9:45 - 9:52]** C'est une personne, parce que je me rappelle que la personne qui était avant Devin, il m'a dit qu'il va retourner.
|
|
||||||
|
|
||||||
**[9:52 - 9:58]** Une personne enceinte.
|
|
||||||
|
|
||||||
**[10:00 - 10:01]** Non, non, ce n'est pas Laura.
|
|
||||||
|
|
||||||
**[10:01 - 10:03]** Non, ce n'est pas Laura.
|
|
||||||
|
|
||||||
**[10:03 - 10:04]** C'est une personne qui...
|
|
||||||
|
|
||||||
**[9:36 - 9:45]** Parce qu'il y a un autre product manager, mais qui va à la place de Devin.
|
|
||||||
|
|
||||||
**[9:07 - 9:19]** Non, tranquille.
|
|
||||||
|
|
||||||
**[10:04 - 10:06]** Oui, c'est ça.
|
|
||||||
|
|
||||||
**[10:06 - 10:06]** Oui, c'est ça.
|
|
||||||
|
|
||||||
**[10:30 - 10:31]** Ok.
|
|
||||||
|
|
||||||
**[10:31 - 10:31]** Ok.
|
|
||||||
|
|
||||||
**[10:51 - 10:58]** Oui, avec Idelo, c'est un peu compliqué parce qu'il n'y a rien qui est documenté.
|
|
||||||
|
|
||||||
**[10:58 - 11:00]** Il y a aussi le côté de Rupal, etc.
|
|
||||||
|
|
||||||
**[11:00 - 11:01]** Du coup...
|
|
||||||
|
|
||||||
**[11:01 - 11:05]** Ouais.
|
|
||||||
|
|
||||||
**[11:35 - 11:39]** Ok.
|
|
||||||
|
|
||||||
**[11:05 - 11:06]** Merci.
|
|
||||||
|
|
||||||
**[10:31 - 10:49]** Parce que je pense pour que Devin sera sur Idelo et il aura besoin vraiment de passer du temps à le comprendre parce que maintenant il me pose des questions.
|
|
||||||
|
|
||||||
**[11:39 - 11:39]** Ok.
|
|
||||||
|
|
||||||
**[11:39 - 11:50]** Ok.
|
|
||||||
|
|
||||||
**[12:00 - 12:04]** Ça marche.
|
|
||||||
|
|
||||||
**[12:04 - 12:09]** By the way, c'est quoi ton feedback par rapport à Bokili lorsque tu l'as vu ?
|
|
||||||
|
|
||||||
**[12:34 - 12:35]** Mm-hmm.
|
|
||||||
|
|
||||||
**[11:50 - 12:00]** Ça marche.
|
|
||||||
|
|
||||||
**[12:36 - 12:36]** Mm-hmm.
|
|
||||||
|
|
||||||
**[12:36 - 12:36]** Mm-hmm.
|
|
||||||
|
|
||||||
**[12:36 - 12:36]** Mm-hmm.
|
|
||||||
|
|
||||||
**[12:36 - 12:37]** Mm-hmm.
|
|
||||||
|
|
||||||
**[12:36 - 12:36]** Mm-hmm.
|
|
||||||
|
|
||||||
**[12:37 - 12:37]** Mm-hmm.
|
|
||||||
|
|
||||||
**[12:37 - 12:37]** Mm-hmm.
|
|
||||||
|
|
||||||
**[12:35 - 12:36]** Mm-hmm.
|
|
||||||
|
|
||||||
**[12:37 - 12:37]** Mm-hmm.
|
|
||||||
|
|
||||||
**[12:37 - 12:38]** Mm-hmm.
|
|
||||||
|
|
||||||
**[12:38 - 12:38]** Mm-hmm.
|
|
||||||
|
|
||||||
**[12:38 - 12:38]** Mm-hmm.
|
|
||||||
|
|
||||||
**[12:37 - 12:37]** Mm-hmm.
|
|
||||||
|
|
||||||
**[12:38 - 12:38]** Mm-hmm.
|
|
||||||
|
|
||||||
**[12:39 - 12:39]** Mm-hmm.
|
|
||||||
|
|
||||||
**[12:39 - 12:39]** Mm-hmm.
|
|
||||||
|
|
||||||
**[12:39 - 12:39]** Mm-hmm.
|
|
||||||
|
|
||||||
**[12:40 - 12:40]** Mm-hmm.
|
|
||||||
|
|
||||||
**[12:40 - 12:40]** Mm-hmm.
|
|
||||||
|
|
||||||
**[12:39 - 12:40]** Mm-hmm.
|
|
||||||
|
|
||||||
**[12:38 - 12:39]** Mm-hmm.
|
|
||||||
|
|
||||||
**[12:40 - 12:40]** Mm-hmm.
|
|
||||||
|
|
||||||
**[12:41 - 12:41]** Mm-hmm.
|
|
||||||
|
|
||||||
**[12:40 - 12:40]** Mm-hmm.
|
|
||||||
|
|
||||||
**[12:41 - 12:41]** Mm-hmm.
|
|
||||||
|
|
||||||
**[12:41 - 12:41]** Mm-hmm.
|
|
||||||
|
|
||||||
**[12:42 - 12:42]** Mm-hmm.
|
|
||||||
|
|
||||||
**[12:42 - 12:43]** Mm-hmm.
|
|
||||||
|
|
||||||
**[12:42 - 12:42]** Mm-hmm.
|
|
||||||
|
|
||||||
**[12:43 - 12:43]** Mm-hmm.
|
|
||||||
|
|
||||||
**[12:43 - 12:43]** Mm-hmm.
|
|
||||||
|
|
||||||
**[12:43 - 12:43]** Mm-hmm.
|
|
||||||
|
|
||||||
**[12:43 - 12:44]** Mm-hmm.
|
|
||||||
|
|
||||||
**[12:44 - 12:44]** Mm-hmm.
|
|
||||||
|
|
||||||
**[12:44 - 12:46]** ...
|
|
||||||
|
|
||||||
**[13:14 - 13:16]** ...
|
|
||||||
|
|
||||||
**[13:44 - 13:48]** ...
|
|
||||||
|
|
||||||
**[13:48 - 13:52]** ...
|
|
||||||
|
|
||||||
**[13:52 - 13:56]** ...
|
|
||||||
|
|
||||||
**[12:41 - 12:41]** Mm-hmm.
|
|
||||||
|
|
||||||
**[13:56 - 14:00]** ...
|
|
||||||
|
|
||||||
**[14:00 - 14:02]** ...
|
|
||||||
|
|
||||||
**[14:06 - 14:08]** ...
|
|
||||||
|
|
||||||
**[14:08 - 14:10]** ...
|
|
||||||
|
|
||||||
**[14:10 - 14:12]** ...
|
|
||||||
|
|
||||||
**[14:04 - 14:06]** ...
|
|
||||||
|
|
||||||
**[14:12 - 15:53]** ça marche pour moi la vérité ce qu'on a avec vous qu'il y sait que je pense que la fréquence de déploiement lorsqu'il nous déploie quelque chose c'est pas quelque chose qui n'est aucune idée si c'est vraiment programmé pour que ça soit une semaine et après on va avoir une autre livraison notre semaine parce que moi vraiment à l'asca honte le moment qu'on a des déploiements mhm mhm mhm mhm mhm mhm mhm mhm mhm mhm mhm mhm mhm mhm mhm mhm mhm mhm mhm mhm Ça marche parce qu'au début, moi, j'ai prévu qu'on travaille.
|
|
||||||
|
|
||||||
**[15:53 - 15:57]** Maintenant, je travaille toujours avec TestTrail pour guider mes tests.
|
|
||||||
|
|
||||||
**[16:13 - 16:18]** Du coup, tout est documenté, bien sûr, côté bug.
|
|
||||||
|
|
||||||
**[16:00 - 16:13]** Mais vu qu'il y a pas mal de déploiements, il y en a qui… Du coup, lorsque moi, je dois tester, je fais comme des tests basés sur l'expérience et basés sur ce qu'on a, back-to-back testing, parce qu'on a déjà la version actuelle.
|
|
||||||
|
|
||||||
**[14:02 - 14:04]** ...
|
|
||||||
|
|
||||||
**[16:18 - 16:27]** Mais le suivi, déjà, on n'a pas vraiment de vrai suivi réellement.
|
|
||||||
|
|
||||||
**[15:57 - 16:00]** Et après, le fichier automatisé Excel.
|
|
||||||
|
|
||||||
**[16:27 - 16:28]** Ok.
|
|
||||||
|
|
||||||
**[16:29 - 16:30]** Ok.
|
|
||||||
|
|
||||||
**[16:30 - 16:30]** Ok.
|
|
||||||
|
|
||||||
**[16:30 - 16:30]** Ok.
|
|
||||||
|
|
||||||
**[16:28 - 16:29]** Ok.
|
|
||||||
|
|
||||||
**[16:30 - 16:31]** Ok.
|
|
||||||
|
|
||||||
**[16:31 - 16:32]** Ok.
|
|
||||||
|
|
||||||
**[16:30 - 16:30]** Ok.
|
|
||||||
|
|
||||||
**[16:32 - 16:32]** Ok.
|
|
||||||
|
|
||||||
**[16:30 - 16:30]** Ok.
|
|
||||||
|
|
||||||
**[16:32 - 16:32]** Ok.
|
|
||||||
|
|
||||||
**[16:32 - 16:32]** Ok.
|
|
||||||
|
|
||||||
**[16:32 - 16:32]** Ok.
|
|
||||||
|
|
||||||
**[16:32 - 16:33]** Ok.
|
|
||||||
|
|
||||||
**[16:32 - 16:32]** Ok.
|
|
||||||
|
|
||||||
**[16:34 - 16:34]** Ok.
|
|
||||||
|
|
||||||
**[16:34 - 16:34]** Ok.
|
|
||||||
|
|
||||||
**[16:34 - 16:35]** Ok.
|
|
||||||
|
|
||||||
**[16:35 - 16:36]** Ok.
|
|
||||||
|
|
||||||
**[16:33 - 16:34]** Ok.
|
|
||||||
|
|
||||||
**[17:06 - 17:07]** Ouais.
|
|
||||||
|
|
||||||
**[16:36 - 16:46]** Ok.
|
|
||||||
|
|
||||||
**[17:08 - 17:09]** Ouais.
|
|
||||||
|
|
||||||
**[17:09 - 17:16]** Il ne reste pas beaucoup de temps.
|
|
||||||
|
|
||||||
**[16:34 - 16:34]** Ok.
|
|
||||||
|
|
||||||
**[17:07 - 17:08]** Ouais.
|
|
||||||
|
|
||||||
**[17:18 - 17:27]** Ça marche.
|
|
||||||
|
|
||||||
**[17:16 - 17:18]** On est 17.
|
|
||||||
|
|
||||||
**[17:27 - 17:32]** De toute façon, j'ai eu une rencontre avec Abdoulaye le mercredi.
|
|
||||||
|
|
||||||
**[17:32 - 17:39]** Comme ça, je vois aussi son suivi parce que je pense qu'il travaille sur les tests à Bokely en ce moment.
|
|
||||||
|
|
||||||
**[17:39 - 17:46]** Comme ça, je vois son avancement et j'espère que je finis avec les tests à TFO.
|
|
||||||
|
|
||||||
**[17:46 - 17:49]** Je repasse directement sur Bokely.
|
|
||||||
|
|
||||||
**[17:54 - 17:56]** Merci beaucoup, Abdoulaye.
|
|
||||||
|
|
||||||
**[17:49 - 17:54]** Ça marche.
|
|
||||||
|
|
||||||
**[17:56 - 17:57]** Bye.
|
|
||||||
|
|
||||||
**[17:57 - 17:58]** Bye.
|
|
||||||
|
|
||||||
**[17:58 - 17:58]** Bye.
|
|
||||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,729 +0,0 @@
|
|||||||
**[0:00 - 0:04]** Donc ça va être finalisé d'ici demain.
|
|
||||||
|
|
||||||
**[0:04 - 0:06]** Pour les trois, les rêves du métier,
|
|
||||||
|
|
||||||
**[0:06 - 0:15]** Sarah nous avait envoyé, en fait, c'est juste sur Bukili, quand tu ouvres un livre, le format du livre, en fait, des images, des fois, ça ne prend pas tout l'écran.
|
|
||||||
|
|
||||||
**[0:15 - 0:18]** Donc je vais juste voir avec
|
|
||||||
|
|
||||||
**[0:18 - 0:22]** Brigitte peut-être si on a des images pour
|
|
||||||
|
|
||||||
**[0:27 - 0:30]** Ok.
|
|
||||||
|
|
||||||
**[0:30 - 0:31]** Ok.
|
|
||||||
|
|
||||||
**[0:31 - 0:36]** Donc, les tickets à Dicela fin de la semaine, j'espère que RMCS va.
|
|
||||||
|
|
||||||
**[0:22 - 0:27]** Bukili avec des différents types d'images.
|
|
||||||
|
|
||||||
**[0:36 - 0:37]** Ok, ça va bien.
|
|
||||||
|
|
||||||
**[0:38 - 0:41]** C'est tout de mon côté.
|
|
||||||
|
|
||||||
**[0:37 - 0:38]** Ok, ça va bien.
|
|
||||||
|
|
||||||
**[0:41 - 0:42]** Cool.
|
|
||||||
|
|
||||||
**[0:42 - 0:56]** De mon côté, on continue nos tests et QA pour TFO, pour tout ce qui concerne les pubs, manières pubs et prerolles, ainsi que plusieurs fonctionnalités,
|
|
||||||
|
|
||||||
**[0:56 - 0:57]** CMS.
|
|
||||||
|
|
||||||
**[0:57 - 1:01]** Vendredi, on a mis en ligne les pubs pour ONFR.
|
|
||||||
|
|
||||||
**[1:01 - 1:02]** Oui, vous m'avez fait peur.
|
|
||||||
|
|
||||||
**[1:02 - 1:05]** Ça, c'est plus ou moins bien passé.
|
|
||||||
|
|
||||||
**[1:05 - 1:07]** Oui, mais tu m'as vu.
|
|
||||||
|
|
||||||
**[1:07 - 1:09]** Je t'avoue que vous m'avez fait peur quand même.
|
|
||||||
|
|
||||||
**[1:09 - 1:12]** Qui ça?
|
|
||||||
|
|
||||||
**[1:12 - 1:13]** Vous.
|
|
||||||
|
|
||||||
**[1:14 - 1:15]** Pourquoi?
|
|
||||||
|
|
||||||
**[1:15 - 1:17]** Mise en ligne vendredi, je me suis dit wow.
|
|
||||||
|
|
||||||
**[1:17 - 1:23]** Mais c'est parce que si tu n'es pas une mise en ligne, la fonctionnalité existait déjà dans WordPress.
|
|
||||||
|
|
||||||
**[1:23 - 1:24]** Ok.
|
|
||||||
|
|
||||||
**[1:24 - 1:28]** C'était juste à Mediatonique de dire ok, on active les pubs.
|
|
||||||
|
|
||||||
**[1:28 - 1:29]** C'est pour ça.
|
|
||||||
|
|
||||||
**[1:29 - 1:31]** Il n'y a pas une vraie mise en ligne.
|
|
||||||
|
|
||||||
**[1:31 - 1:34]** J'ai lu l'image et j'étais comme wow, ok, je vais attendre.
|
|
||||||
|
|
||||||
**[1:34 - 1:39]** Non, non, normalement je n'aurais pas fait ça.
|
|
||||||
|
|
||||||
**[1:39 - 1:42]** C'est juste parce que c'était genre un switch.
|
|
||||||
|
|
||||||
**[1:42 - 1:43]** Ok, ok, ok.
|
|
||||||
|
|
||||||
**[1:43 - 1:48]** Mais oui, ça s'est bien passé quand même.
|
|
||||||
|
|
||||||
**[1:48 - 1:51]** Au début, il y avait des pubs anglophones.
|
|
||||||
|
|
||||||
**[1:51 - 1:53]** Et ça, c'était...
|
|
||||||
|
|
||||||
**[1:53 - 1:57]** Les gens n'étaient pas contents.
|
|
||||||
|
|
||||||
**[2:00 - 2:10]** Et puis on a réduit la taille maximale qu'une bannière peut avoir dans leur tête d'ONFR.
|
|
||||||
|
|
||||||
**[2:11 - 2:13]** Parce qu'ils trouvaient que c'était trop beau.
|
|
||||||
|
|
||||||
**[2:13 - 2:15]** Donc là, on a réduit la taille un tout petit peu.
|
|
||||||
|
|
||||||
**[2:15 - 2:18]** Et tout a l'air de bien fonctionné aujourd'hui.
|
|
||||||
|
|
||||||
**[2:18 - 2:23]** Je te conseille de documenter ces anomalies qui ont eu lieu avec Mediatonique.
|
|
||||||
|
|
||||||
**[2:23 - 2:25]** Sur quelque part là.
|
|
||||||
|
|
||||||
**[2:25 - 2:30]** La raison pour laquelle je te dis ça, c'est parce que c'est la deuxième fois que ça arrive.
|
|
||||||
|
|
||||||
**[2:30 - 2:32]** La première fois, ça n'a pas été documenté.
|
|
||||||
|
|
||||||
**[2:32 - 2:35]** Mais c'est la deuxième fois qu'ils activent et que c'est en anglais.
|
|
||||||
|
|
||||||
**[2:35 - 2:40]** Donc il faudrait faire attention que quand on va faire la même chose sur tf.org.
|
|
||||||
|
|
||||||
**[2:40 - 2:44]** Si ça arrive de nouveau, là on pourra argumenter avec eux et leur dire attention.
|
|
||||||
|
|
||||||
**[2:44 - 2:48]** Et ça fait deux fois officiellement et trois fois de façon non officielle.
|
|
||||||
|
|
||||||
**[2:49 - 2:55]** Parfait, parfait.
|
|
||||||
|
|
||||||
**[2:55 - 3:02]** Et toujours rien désaffranchis pour la synchro ?
|
|
||||||
|
|
||||||
**[3:03 - 3:04]** En fait, ouais.
|
|
||||||
|
|
||||||
**[3:04 - 3:04]** Je peux y aller.
|
|
||||||
|
|
||||||
**[3:04 - 3:13]** C'est que dans la livraison qu'ils ont sur staging en ce moment, tf.
|
|
||||||
|
|
||||||
**[3:13 - 3:16]** Ce qu'ils ont fait, en fait je peux te montrer vite fait.
|
|
||||||
|
|
||||||
**[3:17 - 3:19]** Ce qu'ils ont fait, c'est qu'ils ont changé.
|
|
||||||
|
|
||||||
**[3:23 - 3:27]** Qui normalement arrivait à 4h du matin.
|
|
||||||
|
|
||||||
**[3:19 - 3:23]** Tu sais, on a la synchro de la journée qui est un peu plus grosse.
|
|
||||||
|
|
||||||
**[3:28 - 3:33]** Mais là, ils pensaient qu'il y avait un chevauchement entre celle-là et celle-là à 4h05.
|
|
||||||
|
|
||||||
**[3:33 - 3:41]** Et c'est pour ça qu'il y avait des problèmes de… En tout cas, ils ont déplacé cette synchro quotidienne à 5h30 du matin.
|
|
||||||
|
|
||||||
**[3:42 - 3:45]** Et là, ils ont mis ça en staging mercredi dernier.
|
|
||||||
|
|
||||||
**[3:45 - 3:54]** Et le jeudi et le vendredi, on avait des nouveaux produits qui étaient mis en ligne normalement le matin, jeudi, vendredi sur staging.
|
|
||||||
|
|
||||||
**[3:54 - 3:55]** OK.
|
|
||||||
|
|
||||||
**[3:55 - 3:55]** OK.
|
|
||||||
|
|
||||||
**[3:55 - 4:00]** Donc là, je pense que ça pourrait résoudre nos problèmes en code.
|
|
||||||
|
|
||||||
**[4:00 - 4:05]** Mais ce qu'ils ont aussi fait, c'est qu'ils nous ont donné la main dessus dans le CMS.
|
|
||||||
|
|
||||||
**[4:06 - 4:11]** On peut changer l'heure à laquelle cette synchro, elle, elle se déclenche.
|
|
||||||
|
|
||||||
**[4:12 - 4:20]** Tout ce qu'ils ont fait, c'est qu'ils nous ont donné la main sur l'heure, pas l'heure, la minute dans l'heure pour laquelle la synchro à chaque heure se déroule.
|
|
||||||
|
|
||||||
**[4:20 - 4:24]** Donc, on avait parlé il y a quelques semaines de potentiellement la bouger à 55.
|
|
||||||
|
|
||||||
**[4:24 - 4:26]** À 55.
|
|
||||||
|
|
||||||
**[1:57 - 2:00]** Donc ça, ça a été vite changé le côté Mediatonique.
|
|
||||||
|
|
||||||
**[4:29 - 4:31]** Cool.
|
|
||||||
|
|
||||||
**[4:26 - 4:29]** Ça, on peut le faire maintenant, direct depuis le CMS.
|
|
||||||
|
|
||||||
**[4:31 - 4:34]** Ils continuent toujours à m'impressionner, ce genre-là.
|
|
||||||
|
|
||||||
**[4:35 - 4:37]** Je suis d'accord.
|
|
||||||
|
|
||||||
**[4:39 - 4:40]** Ouais, c'est surtout ça en plus.
|
|
||||||
|
|
||||||
**[4:40 - 4:41]** Non mais tant mieux, tant mieux.
|
|
||||||
|
|
||||||
**[4:41 - 4:47]** Et puis, on peut parler aussi de live pour sept ans.
|
|
||||||
|
|
||||||
**[4:47 - 4:49]** Je sais qu'on avait eu demain.
|
|
||||||
|
|
||||||
**[4:49 - 4:50]** Ah ouais.
|
|
||||||
|
|
||||||
**[4:50 - 4:52]** On a parlé, c'était quand ?
|
|
||||||
|
|
||||||
**[4:52 - 4:54]** Jeudi ou vendredi, je pense que c'était vendredi.
|
|
||||||
|
|
||||||
**[4:54 - 4:56]** Avec Jean-Claude et Devon.
|
|
||||||
|
|
||||||
**[4:56 - 5:00]** Et on a fait un test de voir comment ça peut échappeler.
|
|
||||||
|
|
||||||
**[4:37 - 4:39]** Et c'est rapide en plus.
|
|
||||||
|
|
||||||
**[5:00 - 5:02]** Ça a l'air de bien marcher.
|
|
||||||
|
|
||||||
**[5:03 - 5:04]** Genre, selon le cas de problème.
|
|
||||||
|
|
||||||
**[5:06 - 5:11]** URL du player qu'il faut que Jean-Claude nous donne.
|
|
||||||
|
|
||||||
**[5:11 - 5:13]** Et je crois que ça va être unique.
|
|
||||||
|
|
||||||
**[4:11 - 4:12]** OK.
|
|
||||||
|
|
||||||
**[5:15 - 5:18]** Et si ça change, ça veut dire que tous les lundis, je dois échanger.
|
|
||||||
|
|
||||||
**[5:13 - 5:15]** Je pense que c'est juste une seule fois.
|
|
||||||
|
|
||||||
**[5:32 - 5:34]** Et ça a réglé en vrai qu'une seule fois en vrai.
|
|
||||||
|
|
||||||
**[5:29 - 5:32]** Tout est dans les paramètres et puis ça se fait tout seul.
|
|
||||||
|
|
||||||
**[5:04 - 5:06]** La seule chose qui me manque moi de mon côté, c'est une
|
|
||||||
|
|
||||||
**[5:37 - 5:39]** Ça a l'air de bien marcher.
|
|
||||||
|
|
||||||
**[5:34 - 5:36]** Et puis après, c'est juste modifier les dates.
|
|
||||||
|
|
||||||
**[5:40 - 5:42]** Donc, je vais y rebondir sur ce sujet-là.
|
|
||||||
|
|
||||||
**[5:42 - 5:44]** Donc, on a la rencontre demain, effectivement.
|
|
||||||
|
|
||||||
**[5:24 - 5:29]** C'est vraiment, ça peut être setup genre le vendredi d'avant ou même le lundi.
|
|
||||||
|
|
||||||
**[5:46 - 5:53]** Ce que je vais demander, c'est qu'en la présence de tout le monde, qu'on fasse un vrai test avec un faux produit.
|
|
||||||
|
|
||||||
**[5:44 - 5:46]** Et demain, la rencontre, je vous l'ai dit dès maintenant.
|
|
||||||
|
|
||||||
**[5:39 - 5:40]** Ça a l'air de bien marcher.
|
|
||||||
|
|
||||||
**[5:57 - 6:01]** Et qu'on fasse un test de A à Z pour voir comment ça va fonctionner.
|
|
||||||
|
|
||||||
**[6:01 - 6:03]** Comme ça, il n'y aura pas de surprise le jour
|
|
||||||
|
|
||||||
**[5:53 - 5:57]** On choisira un produit au hasard qui va aller sur le linéaire là.
|
|
||||||
|
|
||||||
**[6:11 - 6:14]** Et je vais leur expliquer étape par étape comment ça fonctionne.
|
|
||||||
|
|
||||||
**[6:03 - 6:04]** J.
|
|
||||||
|
|
||||||
**[5:18 - 5:24]** Mais en fait, du coup, maintenant au final, c'est que de notre côté, niveau CMS, on n'est plus obligé de rester du coup le soir.
|
|
||||||
|
|
||||||
**[6:04 - 6:11]** Je rencontre aussi Sonia et Philippe jeudi.
|
|
||||||
|
|
||||||
**[6:17 - 6:19]** Comme ça, il n'y aura pas de surprise aussi de leur côté.
|
|
||||||
|
|
||||||
**[6:19 - 6:22]** Et ça leur donnera un peu de temps pour Bichier, on va dire.
|
|
||||||
|
|
||||||
**[6:14 - 6:17]** Et on va leur montrer à quoi ça va ressembler sur l'Otté.
|
|
||||||
|
|
||||||
**[6:36 - 6:42]** C'est quoi la rencontre de demain?
|
|
||||||
|
|
||||||
**[6:42 - 6:44]** Tu n'es pas dedans?
|
|
||||||
|
|
||||||
**[6:24 - 6:27]** Mais c'est juste à voir qu'est-ce que ça va donner.
|
|
||||||
|
|
||||||
**[6:27 - 6:36]** Comme ça, ils auront une idée de tout ce que ça prend pour faire fonctionner la rémission aussi.
|
|
||||||
|
|
||||||
**[6:47 - 6:48]** Ok.
|
|
||||||
|
|
||||||
**[6:46 - 6:47]** On peut t'ajouter.
|
|
||||||
|
|
||||||
**[6:44 - 6:46]** Non.
|
|
||||||
|
|
||||||
**[6:51 - 6:53]** Désolé, c'est ma fille qui se mouche.
|
|
||||||
|
|
||||||
**[6:54 - 6:56]** Donc peut-être qu'elle ne savait pas quoi tu devais y mettre.
|
|
||||||
|
|
||||||
**[7:03 - 7:08]** Pour que tout le monde soit au courant de quelles sont toutes les étapes nécessaires et comment ça va fonctionner de A à Z.
|
|
||||||
|
|
||||||
**[7:09 - 7:13]** Comme ça, tout le monde n'y a pas de surprise à droite ni à gauche.
|
|
||||||
|
|
||||||
**[6:53 - 6:54]** C'est Ayri qui l'a fait.
|
|
||||||
|
|
||||||
**[6:50 - 6:51]** Non, c'est Ayri qui l'a...
|
|
||||||
|
|
||||||
**[7:13 - 7:18]** Mais moi, je vais m'occuper de la haute gestion comme ça, eux, ils sont au courant aussi.
|
|
||||||
|
|
||||||
**[6:56 - 7:03]** C'est tous les gens qui vont toucher Louise jusqu'à la publication.
|
|
||||||
|
|
||||||
**[7:18 - 7:18]** Donc, au pire,
|
|
||||||
|
|
||||||
**[7:22 - 7:23]** Ouais.
|
|
||||||
|
|
||||||
**[7:25 - 7:26]** Cool.
|
|
||||||
|
|
||||||
**[7:18 - 7:22]** Willy, tu peux ajouter Devin, c'était dans la rencontre.
|
|
||||||
|
|
||||||
**[7:23 - 7:24]** Ouais, je vais faire.
|
|
||||||
|
|
||||||
**[7:24 - 7:25]** Ouais.
|
|
||||||
|
|
||||||
**[7:26 - 7:27]** Ouais.
|
|
||||||
|
|
||||||
**[7:27 - 7:30]** Parce que ça, c'est un truc qui va être...
|
|
||||||
|
|
||||||
**[7:47 - 7:48]** Apparemment.
|
|
||||||
|
|
||||||
**[7:30 - 7:39]** Apparemment, j'ai appris ça, qu'apparemment Sonia aurait fait une rencontre chez Marketing et tout le département chez elle.
|
|
||||||
|
|
||||||
**[7:39 - 7:42]** Et l'emphase a été mise sur cette émission-là.
|
|
||||||
|
|
||||||
**[7:45 - 7:47]** Wow.
|
|
||||||
|
|
||||||
**[7:43 - 7:45]** C'est la grosse émission du mois d'automne.
|
|
||||||
|
|
||||||
**[7:48 - 7:54]** Donc, je préfère qu'elle soit au courant de à quoi ça va ressembler tout le reste.
|
|
||||||
|
|
||||||
**[8:04 - 8:07]** À valider le contrat pour le nouveau fournisseur ONFR aussi.
|
|
||||||
|
|
||||||
**[8:13 - 8:15]** Et ça va être envoyé pour signature.
|
|
||||||
|
|
||||||
**[8:02 - 8:04]** Bah, pas à signer.
|
|
||||||
|
|
||||||
**[8:11 - 8:13]** Et s'il n'y a pas de problème, je vais le valider.
|
|
||||||
|
|
||||||
**[8:07 - 8:11]** Je m'assure juste qu'il n'y a pas de problème.
|
|
||||||
|
|
||||||
**[8:15 - 8:18]** Je ne sais pas quand est-ce qu'ils vont commencer là.
|
|
||||||
|
|
||||||
**[7:54 - 8:02]** Willy, je m'apprête à signer le...
|
|
||||||
|
|
||||||
**[8:18 - 8:22]** Fort chance qu'ils commencent avant le retour de...
|
|
||||||
|
|
||||||
**[8:32 - 8:35]** Célie, officiellement, c'est jusqu'au 30 septembre.
|
|
||||||
|
|
||||||
**[8:39 - 8:45]** Il y aura une phase de transition où ils vont s'approprier le code, s'approprier les thèmes et tout le reste.
|
|
||||||
|
|
||||||
**[8:22 - 8:25]** Julie, je ne suis pas sûr, mais à voir.
|
|
||||||
|
|
||||||
**[8:45 - 8:47]** Pour voir comment tout fonctionne.
|
|
||||||
|
|
||||||
**[8:25 - 8:32]** Donc, jusqu'à quand est-ce qu'on est avec Célie ?
|
|
||||||
|
|
||||||
**[8:35 - 8:37]** Et le nouveau commencerait le 1er septembre.
|
|
||||||
|
|
||||||
**[8:50 - 8:52]** Willy de façon assez intensive.
|
|
||||||
|
|
||||||
**[8:58 - 9:00]** Et puis, je ne sais pas si Julie vous l'avez dit, mais...
|
|
||||||
|
|
||||||
**[9:07 - 9:08]** Il y aura des questions.
|
|
||||||
|
|
||||||
**[8:52 - 8:57]** Mais une fois que tout est fait là, c'est là qu'ils vont reprendre le dessus.
|
|
||||||
|
|
||||||
**[9:08 - 9:09]** Il y aura des questions.
|
|
||||||
|
|
||||||
**[9:09 - 9:11]** C'est juste purement des back-end.
|
|
||||||
|
|
||||||
**[9:04 - 9:06]** Ils ne toucheront pas le front-end de ONFR.
|
|
||||||
|
|
||||||
**[9:13 - 9:15]** C'est des gens qui sont à Ottawa.
|
|
||||||
|
|
||||||
**[9:00 - 9:04]** Leur mandat ne touchera que le back-end de ONFR.
|
|
||||||
|
|
||||||
**[9:15 - 9:17]** Et là, ça veut dire que
|
|
||||||
|
|
||||||
**[9:11 - 9:13]** Ils sont en Ontario, en Ontario ?
|
|
||||||
|
|
||||||
**[9:17 - 9:24]** Willy prend la main complètement sur le front ?
|
|
||||||
|
|
||||||
**[8:47 - 8:50]** J'imagine qu'il y aura des discussions avec
|
|
||||||
|
|
||||||
**[9:30 - 9:32]** Je ne suis pas sûr de ça.
|
|
||||||
|
|
||||||
**[9:24 - 9:26]** En fait, je disais...
|
|
||||||
|
|
||||||
**[9:33 - 9:39]** Quand moi j'en parlais avec Julie, l'idée c'était qu'on ne ferait pas de modification majeure sur le front.
|
|
||||||
|
|
||||||
**[9:40 - 9:41]** Jusqu'au hub.
|
|
||||||
|
|
||||||
**[9:26 - 9:30]** Est-ce qu'il prend entièrement la main sur le front ?
|
|
||||||
|
|
||||||
**[9:32 - 9:33]** Disons que...
|
|
||||||
|
|
||||||
**[9:41 - 9:42]** Jusqu'au hub.
|
|
||||||
|
|
||||||
**[9:39 - 9:40]** Pas juste au hub.
|
|
||||||
|
|
||||||
**[9:42 - 9:45]** Et après le hub, ça va rentrer dans le site.
|
|
||||||
|
|
||||||
**[9:54 - 9:57]** Et...
|
|
||||||
|
|
||||||
**[9:45 - 9:54]** Comme ça, avec le back-end, par exemple, si on demande un changement, ça dirait que la PI est bien là et présent pour avoir toutes les informations pour le front-end du hub.
|
|
||||||
|
|
||||||
**[9:57 - 10:06]** Autre information que je trouve peut-être pertinent à savoir pour vous, leur contrat sera du 1er septembre au 31 mars.
|
|
||||||
|
|
||||||
**[10:08 - 10:09]** Ok.
|
|
||||||
|
|
||||||
**[10:17 - 10:18]** Donc...
|
|
||||||
|
|
||||||
**[10:14 - 10:17]** Ok.
|
|
||||||
|
|
||||||
**[10:10 - 10:14]** On verra si on les renouvelle plus tard ou pas.
|
|
||||||
|
|
||||||
**[10:18 - 10:20]** Moi, c'est à peu près tout.
|
|
||||||
|
|
||||||
**[10:20 - 10:23]** Je ne sais s'il y a d'autres informations que je dois partager pour vous.
|
|
||||||
|
|
||||||
**[10:25 - 10:29]** Euh...
|
|
||||||
|
|
||||||
**[10:29 - 10:30]** Non, je pense que c'est ça.
|
|
||||||
|
|
||||||
**[10:30 - 10:32]** Ok.
|
|
||||||
|
|
||||||
**[10:34 - 10:35]** Voilà.
|
|
||||||
|
|
||||||
**[6:22 - 6:24]** Le mot Bichier reste entre nous.
|
|
||||||
|
|
||||||
**[10:35 - 10:41]** Moi, pour demain le test, tu veux que je prépare quelque chose de mon côté sur le CMS ou je réutilise les tests qu'on a fait ?
|
|
||||||
|
|
||||||
**[10:46 - 10:47]** Je veux convaincre d'abord...
|
|
||||||
|
|
||||||
**[10:42 - 10:45]** Parce qu'en fait, ce que je veux faire, c'est...
|
|
||||||
|
|
||||||
**[10:41 - 10:42]** Non, rien pour le moment.
|
|
||||||
|
|
||||||
**[10:48 - 10:49]** Pas convaincre...
|
|
||||||
|
|
||||||
**[10:23 - 10:25]** Je suis à réfléchir vite fait.
|
|
||||||
|
|
||||||
**[10:47 - 10:48]** Euh...
|
|
||||||
|
|
||||||
**[10:49 - 10:53]** Ce que je voudrais, c'est que par exemple, Pierre-Olivier nous dise...
|
|
||||||
|
|
||||||
**[10:55 - 10:59]** Dans une semaine, on a telle émission qui arrive sur le live tel jour, tel heure.
|
|
||||||
|
|
||||||
**[10:59 - 11:03]** Et c'est cette émission-là qu'on va choisir et faire tous les tests de A à Z.
|
|
||||||
|
|
||||||
**[11:03 - 11:05]** Ok.
|
|
||||||
|
|
||||||
**[11:05 - 11:06]** Voilà.
|
|
||||||
|
|
||||||
**[11:09 - 11:12]** Même si c'est un test bidon, on va dire.
|
|
||||||
|
|
||||||
**[11:12 - 11:17]** Je crois que l'impact est quelque chose qu'on peut avaler comme terme de risque.
|
|
||||||
|
|
||||||
**[10:53 - 10:55]** Euh...
|
|
||||||
|
|
||||||
**[11:18 - 11:20]** Je suis moins inquiet par rapport à ça.
|
|
||||||
|
|
||||||
**[11:06 - 11:09]** Je préfère que ça s'affiche même sur l'OTT en production.
|
|
||||||
|
|
||||||
**[10:32 - 10:34]** Ok.
|
|
||||||
|
|
||||||
**[11:21 - 11:23]** Mais je tiendrai à
|
|
||||||
|
|
||||||
**[11:23 - 11:26]** Sonia encore.
|
|
||||||
|
|
||||||
**[10:09 - 10:10]** Donc, 7 mois.
|
|
||||||
|
|
||||||
**[11:20 - 11:21]** Ok.
|
|
||||||
|
|
||||||
**[11:36 - 11:38]** Cool.
|
|
||||||
|
|
||||||
**[11:29 - 11:36]** Ok, ça marche.
|
|
||||||
|
|
||||||
**[11:41 - 11:42]** Allez, bon lundi.
|
|
||||||
|
|
||||||
**[11:42 - 11:43]** Bonne journée.
|
|
||||||
|
|
||||||
**[11:26 - 11:29]** Comme ça, si jamais elle le voit, elle ne va pas paniquer aussi.
|
|
||||||
|
|
||||||
**[11:40 - 11:41]** Allez.
|
|
||||||
|
|
||||||
**[11:43 - 11:44]** Ok.
|
|
||||||
|
|
||||||
**[11:38 - 11:40]** Parfait.
|
|
||||||
|
|
||||||
**[11:44 - 11:45]** Bye.
|
|
||||||
|
|
||||||
**[11:48 - 11:49]** Bye.
|
|
||||||
|
|
||||||
**[0:00 - 0:12]** pour les trois règles métiers, Sarah nous avait envoyé, en fait, c'est juste sur Bukili, quand tu ouvres un livre, le format de livre, en fait, les images, des fois, ça ne prend pas tout l'écran.
|
|
||||||
|
|
||||||
**[0:15 - 0:18]** Brigitte, peut-être, si on a des images pour
|
|
||||||
|
|
||||||
**[11:49 - 11:50]** Bye.
|
|
||||||
|
|
||||||
**[0:12 - 0:15]** Donc, je vais juste voir avec
|
|
||||||
|
|
||||||
**[0:18 - 0:23]** Bukili, en fait, des différentes tailles d'images pour
|
|
||||||
|
|
||||||
**[0:28 - 0:33]** Donc, les tickets à l'ici la fin de la semaine, j'espère que quand même, ça va être fini.
|
|
||||||
|
|
||||||
**[0:23 - 0:26]** Bukili au cas où l'image ne s'occupe pas.
|
|
||||||
|
|
||||||
**[0:33 - 0:34]** Ok, c'est tout.
|
|
||||||
|
|
||||||
**[0:41 - 0:53]** QA pour TFO, pour tout ce qui concerne les pubs, bannières pub et pré-rôle, ainsi que plusieurs fonctionnalités
|
|
||||||
|
|
||||||
**[0:37 - 0:41]** De mon côté, on continue nos tests et
|
|
||||||
|
|
||||||
**[0:34 - 0:37]** C'est tout de mon côté.
|
|
||||||
|
|
||||||
**[0:26 - 0:28]** Donc, je vais voir ça avec lui.
|
|
||||||
|
|
||||||
**[0:53 - 0:54]** CMS.
|
|
||||||
|
|
||||||
**[0:58 - 1:02]** Ça s'est plus ou moins bien passé.
|
|
||||||
|
|
||||||
**[1:08 - 1:11]** Pourquoi?
|
|
||||||
|
|
||||||
**[1:14 - 1:17]** Mais c'est parce que c'était en vrai, ce n'était pas une mise en ligne.
|
|
||||||
|
|
||||||
**[1:02 - 1:04]** Il y a eu...
|
|
||||||
|
|
||||||
**[1:17 - 1:20]** La fonctionnalité, elle existait déjà dans WordPress d'ONFR.
|
|
||||||
|
|
||||||
**[1:20 - 1:25]** C'était juste à médiatonique de dire, OK, on active les pubs.
|
|
||||||
|
|
||||||
**[1:25 - 1:25]** C'était pour ça.
|
|
||||||
|
|
||||||
**[1:25 - 1:27]** Ce n'est pas une vraie mise en ligne en tant que...
|
|
||||||
|
|
||||||
**[1:27 - 1:28]** C'est pour ça que je l'ai fait là.
|
|
||||||
|
|
||||||
**[1:33 - 1:34]** Non, non.
|
|
||||||
|
|
||||||
**[1:34 - 1:36]** Normalement, je n'aurais pas fait ça à un venteux.
|
|
||||||
|
|
||||||
**[1:36 - 1:39]** C'était juste parce que c'était genre un switch en...
|
|
||||||
|
|
||||||
**[0:55 - 0:58]** Vendredi, on a mis en ligne les pubs pour ONFR.
|
|
||||||
|
|
||||||
**[1:39 - 1:45]** Mais ouais, ça s'est bien passé quand même.
|
|
||||||
|
|
||||||
**[1:48 - 1:50]** Et ça, c'était...
|
|
||||||
|
|
||||||
**[1:54 - 1:56]** Donc ça, ça a été vite changé côté médiatonique.
|
|
||||||
|
|
||||||
**[1:53 - 1:54]** Les gens, ils n'étaient pas contents.
|
|
||||||
|
|
||||||
**[1:04 - 1:08]** Qui ça?
|
|
||||||
|
|
||||||
**[2:07 - 2:09]** Parce qu'ils trouvaient que c'était trop gros.
|
|
||||||
|
|
||||||
**[1:45 - 1:48]** Au début, il y avait des pubs anglophones.
|
|
||||||
|
|
||||||
**[2:09 - 2:11]** Donc là, on a réduit la taille un tout petit peu.
|
|
||||||
|
|
||||||
**[1:56 - 2:07]** Et puis, on a réduit la taille maximale qu'une bannière peut avoir dans l'entête d'ONFR.
|
|
||||||
|
|
||||||
**[2:15 - 2:15]** Donc.
|
|
||||||
|
|
||||||
**[2:22 - 2:30]** OK.
|
|
||||||
|
|
||||||
**[2:11 - 2:14]** Et tout a l'air de bien fonctionner aujourd'hui.
|
|
||||||
|
|
||||||
**[11:49 - 11:49]** Bye.
|
|
||||||
|
|
||||||
**[2:15 - 2:22]** Oui, oui.
|
|
||||||
|
|
||||||
**[3:02 - 3:02]** Tu peux y aller.
|
|
||||||
|
|
||||||
**[3:02 - 3:12]** C'est que dans la livraison qu'ils ont sur staging en ce moment, pour TFO, ce qu'ils ont fait, en fait, je peux te montrer vite fait.
|
|
||||||
|
|
||||||
**[3:14 - 3:17]** Ce qu'ils ont fait, c'est qu'ils ont changé.
|
|
||||||
|
|
||||||
**[2:45 - 3:02]** En fait, tu peux y aller.
|
|
||||||
|
|
||||||
**[3:29 - 3:31]** Et c'est pour ça qu'il y avait des problèmes de...
|
|
||||||
|
|
||||||
**[3:31 - 3:37]** En tout cas, ils ont déplacé cette synchro quotidienne à 5h30 du matin.
|
|
||||||
|
|
||||||
**[3:23 - 3:29]** Mais là, ils pensaient qu'il y avait un chevauchement entre celle-là et celle-là à 4h05.
|
|
||||||
|
|
||||||
**[3:37 - 3:41]** Et là, ils ont mis ça en staging mercredi dernier.
|
|
||||||
|
|
||||||
**[3:42 - 3:49]** Et le jeudi et le vendredi, on avait des nouveaux produits qui étaient mis en ligne normalement le matin, jeudi, vendredi sur staging.
|
|
||||||
|
|
||||||
**[3:17 - 3:23]** Tu sais, on a la synchro de la journée qui est un peu plus grosse, qui normalement arrivait à 4h du matin.
|
|
||||||
|
|
||||||
**[3:55 - 4:00]** Mais ce qu'ils ont aussi fait, c'est qu'ils nous ont donné la main dessus dans le
|
|
||||||
|
|
||||||
**[4:00 - 4:00]** CMS.
|
|
||||||
|
|
||||||
**[4:01 - 4:07]** On peut changer l'heure à laquelle cette synchro, elle se déclenche.
|
|
||||||
|
|
||||||
**[4:10 - 4:11]** Pas l'heure.
|
|
||||||
|
|
||||||
**[4:11 - 4:15]** La minute dans l'heure pour laquelle la synchro à chaque heure se déroule.
|
|
||||||
|
|
||||||
**[4:07 - 4:10]** L'autre chose qu'ils ont fait, c'est qu'ils nous ont donné la main sur l'heure...
|
|
||||||
|
|
||||||
**[4:15 - 4:20]** Donc, on avait parlé il y a quelques semaines de potentiellement la bouger à 55 ou 50.
|
|
||||||
|
|
||||||
**[4:21 - 4:24]** Ça, on peut le faire maintenant, direct depuis le CMS.
|
|
||||||
|
|
||||||
**[4:24 - 4:32]** Je suis d'accord.
|
|
||||||
|
|
||||||
**[4:32 - 4:33]** Et c'est rapide en plus.
|
|
||||||
|
|
||||||
**[4:39 - 4:42]** Et puis, on peut parler aussi le live pour septembre.
|
|
||||||
|
|
||||||
**[4:42 - 4:44]** Je sais qu'on a re-eux demain.
|
|
||||||
|
|
||||||
**[3:49 - 3:55]** Donc là, je pense que ça pourrait résoudre nos problèmes en code.
|
|
||||||
|
|
||||||
**[4:45 - 4:47]** Mais on a parlé...
|
|
||||||
|
|
||||||
**[4:44 - 4:45]** Ah ouais.
|
|
||||||
|
|
||||||
**[4:47 - 4:47]** C'était quand ?
|
|
||||||
|
|
||||||
**[4:47 - 4:49]** C'était jeudi ou vendredi.
|
|
||||||
|
|
||||||
**[4:49 - 4:51]** Avec Jean-Claude et Devon.
|
|
||||||
|
|
||||||
**[4:58 - 4:59]** Genre, sans aucun problème.
|
|
||||||
|
|
||||||
**[4:55 - 4:58]** Ça a l'air de bien marcher.
|
|
||||||
|
|
||||||
**[4:59 - 5:06]** La seule chose qui me manque, moi, de mon côté, c'est une URL du player qu'il faut que Jean-Claude me donne.
|
|
||||||
|
|
||||||
**[4:49 - 4:49]** Je pense que c'était vendredi.
|
|
||||||
|
|
||||||
**[5:07 - 5:09]** Et je crois que ça va être unique.
|
|
||||||
|
|
||||||
**[5:09 - 5:10]** Donc, je pense que c'est juste une seule fois.
|
|
||||||
|
|
||||||
**[5:19 - 5:21]** C'est vraiment...
|
|
||||||
|
|
||||||
**[4:51 - 4:55]** Et on a fait un test de voir comment ça peut s'approprier.
|
|
||||||
|
|
||||||
**[5:13 - 5:19]** Mais en fait, du coup, maintenant, au final, c'est que de notre côté, niveau CMS, on n'est plus obligé de rester, du coup, le soir.
|
|
||||||
|
|
||||||
**[5:21 - 5:24]** Ça peut être setup genre le vendredi d'avant ou même le lundi.
|
|
||||||
|
|
||||||
**[5:10 - 5:13]** Et si ça change, ça veut dire que tous les lundis, je devrais échanger.
|
|
||||||
|
|
||||||
**[5:26 - 5:27]** Et puis, ça se fait tout seul.
|
|
||||||
|
|
||||||
**[5:27 - 5:30]** Et ça a réglé en vrai qu'une seule fois en vrai.
|
|
||||||
|
|
||||||
**[5:24 - 5:26]** Tout est dans les paramètres.
|
|
||||||
|
|
||||||
**[5:37 - 6:07]** C'est tout.
|
|
||||||
|
|
||||||
**[5:31 - 5:32]** C'est tout.
|
|
||||||
|
|
||||||
**[5:32 - 5:35]** Donc, ça a l'air de bien marcher.
|
|
||||||
|
|
||||||
**[6:08 - 6:09]** Merci.
|
|
||||||
|
|
||||||
**[6:07 - 6:08]** Merci.
|
|
||||||
|
|
||||||
**[6:10 - 6:11]** Merci.
|
|
||||||
|
|
||||||
**[5:30 - 5:31]** Et puis après, c'est juste modifier les dates.
|
|
||||||
|
|
||||||
**[6:11 - 6:11]** Merci.
|
|
||||||
|
|
||||||
**[6:09 - 6:10]** Merci.
|
|
||||||
|
|
||||||
**[6:39 - 6:42]** Non?
|
|
||||||
|
|
||||||
**[6:12 - 6:26]** Ok.
|
|
||||||
|
|
||||||
**[6:11 - 6:12]** Merci.
|
|
||||||
|
|
||||||
**[6:46 - 6:52]** Ah ok.
|
|
||||||
|
|
||||||
**[6:52 - 7:06]** Ok.
|
|
||||||
|
|
||||||
**[6:44 - 6:46]** C'est quoi la rencontre?
|
|
||||||
|
|
||||||
**[7:11 - 7:17]** Ok.
|
|
||||||
|
|
||||||
**[7:17 - 7:19]** Ok.
|
|
||||||
|
|
||||||
**[7:06 - 7:10]** Ok.
|
|
||||||
|
|
||||||
**[7:21 - 7:31]** Ok.
|
|
||||||
|
|
||||||
**[7:31 - 7:31]** Ok.
|
|
||||||
|
|
||||||
**[7:19 - 7:21]** Ok.
|
|
||||||
|
|
||||||
**[7:41 - 7:43]** Ok.
|
|
||||||
|
|
||||||
**[7:47 - 7:53]** Ok.
|
|
||||||
|
|
||||||
**[7:53 - 7:55]** Ok.
|
|
||||||
|
|
||||||
**[7:55 - 7:55]** Ok.
|
|
||||||
|
|
||||||
**[6:26 - 6:39]** C'est quoi la rencontre de demain?
|
|
||||||
|
|
||||||
**[7:55 - 8:03]** Ok.
|
|
||||||
|
|
||||||
**[8:03 - 8:03]** Ok.
|
|
||||||
|
|
||||||
**[8:03 - 8:03]** Ok.
|
|
||||||
|
|
||||||
**[8:03 - 8:05]** Ok.
|
|
||||||
|
|
||||||
**[8:05 - 8:13]** Ok.
|
|
||||||
|
|
||||||
**[8:13 - 8:13]** Ok.
|
|
||||||
|
|
||||||
**[8:13 - 8:13]** Ok.
|
|
||||||
|
|
||||||
**[8:13 - 8:13]** Ok.
|
|
||||||
|
|
||||||
**[8:13 - 8:13]** Ok.
|
|
||||||
|
|
||||||
**[7:31 - 7:41]** Ok.
|
|
||||||
|
|
||||||
**[8:26 - 8:30]** Donc, jusqu'à quand est-ce qu'on est avec Sidley?
|
|
||||||
|
|
||||||
**[6:42 - 6:44]** C'est quoi la rencontre?
|
|
||||||
|
|
||||||
**[8:13 - 8:26]** Ok, ça marche.
|
|
||||||
|
|
||||||
**[8:58 - 9:13]** ST' 501
|
|
||||||
|
|
||||||
**[8:13 - 8:13]** Ok.
|
|
||||||
|
|
||||||
**[8:43 - 8:58]** Sous-titrage
|
|
||||||
|
|
||||||
**[7:43 - 7:43]** Ok.
|
|
||||||
|
|
||||||
**[9:23 - 9:25]** Oui.
|
|
||||||
|
|
||||||
**[9:13 - 9:17]** Donc là, ça veut dire que
|
|
||||||
|
|
||||||
**[9:25 - 9:25]** Oui.
|
|
||||||
|
|
||||||
**[9:17 - 9:23]** Willy prend la main complètement sur le front?
|
|
||||||
|
|
||||||
**[10:27 - 10:32]** Ok.
|
|
||||||
|
|
||||||
**[10:32 - 10:41]** Pour demain, le test, tu veux que je prépare quelque chose de mon côté sur le CMS ou je réutilise les tests qu'on a fait?
|
|
||||||
|
|
||||||
**[9:40 - 9:57]** Cool.
|
|
||||||
|
|
||||||
**[9:57 - 9:57]** Cool.
|
|
||||||
|
|
||||||
**[11:05 - 11:05]** Ok.
|
|
||||||
|
|
||||||
**[7:43 - 7:47]** Ok.
|
|
||||||
|
|
||||||
**[11:05 - 11:05]** Ok.
|
|
||||||
|
|
||||||
**[11:05 - 11:05]** Ok, cool.
|
|
||||||
|
|
||||||
**[11:35 - 11:46]** Nei.
|
|
||||||
|
|
||||||
**[10:43 - 11:05]** Ok.
|
|
||||||
|
|
||||||
**[11:46 - 11:50]** Það er hann.
|
|
||||||
|
|
||||||
**[9:25 - 9:40]** Ah, jusqu'au...
|
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user