WEBVTT

1
00:00:00.700 --> 00:00:03.960
This film follows the Operations manual, from a prepared

2
00:00:03.960 --> 00:00:05.800
Docker host to evidence stewardship.

3
00:00:06.400 --> 00:00:10.060
The lens command needs Python 3.9 or newer, Docker

4
00:00:10.060 --> 00:00:11.340
and its Compose plugin.

5
00:00:12.060 --> 00:00:13.980
Start the Docker engine and use an account that

6
00:00:13.980 --> 00:00:14.720
can access it.

7
00:00:15.380 --> 00:00:17.640
Use the intended Linux or macOS host.

8
00:00:18.180 --> 00:00:19.760
Keep installation files private.

9
00:00:20.540 --> 00:00:23.140
Next, copy the lens command onto this host.

10
00:00:27.200 --> 00:00:29.760
Copy the lens file onto the machine and make

11
00:00:29.760 --> 00:00:30.480
it executable.

12
00:00:31.220 --> 00:00:33.520
Place it in a new, empty installation directory.

13
00:00:34.220 --> 00:00:36.580
Open a terminal there and run chmod plus x

14
00:00:36.580 --> 00:00:38.000
lens, as shown.

15
00:00:38.460 --> 00:00:41.080
For published images, lens is the only file you

16
00:00:41.080 --> 00:00:41.680
need to copy.

17
00:00:42.100 --> 00:00:45.060
It writes its embedded Compose files during setup and

18
00:00:45.060 --> 00:00:46.520
downloads the application images.

19
00:00:47.200 --> 00:00:49.320
Keep the build ID from lens version with your

20
00:00:49.320 --> 00:00:50.100
installation notes.

21
00:00:50.780 --> 00:00:53.600
Use this directory for every setup and management command.

22
00:00:54.080 --> 00:00:55.480
Then run lens doctor.

23
00:00:55.480 --> 00:00:57.880
Fix any failed check before continuing.

24
00:01:02.067 --> 00:01:04.767
The setup wizard asks for a private mesh network

25
00:01:04.767 --> 00:01:05.187
prefix.

26
00:01:05.747 --> 00:01:07.007
Its default is ten dot two three nine dot

27
00:01:07.007 --> 00:01:09.507
five eight.

28
00:01:09.507 --> 00:01:11.507
Use it only if that range does not overlap

29
00:01:11.507 --> 00:01:13.827
your Docker, host or VPN networks.

30
00:01:14.407 --> 00:01:17.207
If you are unsure, ask your network administrator for

31
00:01:17.207 --> 00:01:18.727
an unused private range.

32
00:01:19.387 --> 00:01:21.107
Enter its first three numbers in the wizard.

33
00:01:21.707 --> 00:01:24.687
Keep the selected prefix unchanged after records exist.

34
00:01:28.667 --> 00:01:31.727
From the directory containing lens, run lens setup.

35
00:01:32.367 --> 00:01:35.147
It checks Docker and Compose, then asks for your

36
00:01:35.147 --> 00:01:38.167
GitHub login and a personal access token for GitHub

37
00:01:38.167 --> 00:01:40.467
Container Registry, or GHCR.

38
00:01:40.967 --> 00:01:44.067
The token needs read packages permission and access to

39
00:01:44.067 --> 00:01:45.167
the NovusLens packages.

40
00:01:45.767 --> 00:01:46.627
Its entry is hidden.

41
00:01:47.007 --> 00:01:49.367
The token is not stored in dot novuslens dot

42
00:01:49.367 --> 00:01:50.287
env.

43
00:01:50.287 --> 00:01:53.367
The installer keeps the registry login in a separate

44
00:01:53.367 --> 00:01:57.407
private file, dot novuslens registry dot json, for later

45
00:01:57.407 --> 00:01:58.187
starts and resumes.

46
00:01:58.787 --> 00:02:01.247
You do not need a separate registry login command.

47
00:02:01.887 --> 00:02:05.167
The following recording begins with the installation settings, after

48
00:02:05.167 --> 00:02:06.107
registry access.

49
00:02:09.267 --> 00:02:11.487
Run lens setup with no options.

50
00:02:12.107 --> 00:02:14.607
In a git checkout, it builds local images from

51
00:02:14.607 --> 00:02:15.207
that source.

52
00:02:15.907 --> 00:02:18.547
Anywhere else, it pulls the published release that this

53
00:02:18.547 --> 00:02:19.687
lens file was built for.

54
00:02:20.147 --> 00:02:22.527
An existing installation keeps its saved release.

55
00:02:23.127 --> 00:02:25.487
You only need an init option to choose another

56
00:02:25.487 --> 00:02:26.347
mode or release.

57
00:02:26.967 --> 00:02:29.107
Local builds frozen images from a checkout.

58
00:02:29.687 --> 00:02:31.587
Dev mounts live source from a checkout.

59
00:02:31.807 --> 00:02:34.487
A published version such as zero point one point

60
00:02:34.487 --> 00:02:36.427
zero selects a fixed release.

61
00:02:36.427 --> 00:02:39.647
The installation records your choice for later commands.

62
00:02:42.800 --> 00:02:45.620
Keep web port three one one one unless another

63
00:02:45.620 --> 00:02:46.740
application uses it.

64
00:02:47.200 --> 00:02:49.000
The demo binds that port to address one two

65
00:02:49.820 --> 00:02:51.800
seven dot zero dot zero dot one.

66
00:02:52.380 --> 00:02:53.800
Use a browser on this Docker host.

67
00:02:54.440 --> 00:02:56.440
Choose the operator login or keep demo owner.

68
00:02:57.200 --> 00:02:59.880
Enter a passphrase of at least twelve characters, then

69
00:02:59.880 --> 00:03:00.740
repeat it.

70
00:03:01.260 --> 00:03:02.620
Record both in your password manager.

71
00:03:03.480 --> 00:03:06.940
The operator can administer every organisation in this installation.

72
00:03:10.100 --> 00:03:12.380
Choose none as the model server for the first

73
00:03:12.380 --> 00:03:12.600
run.

74
00:03:13.100 --> 00:03:15.380
Then choose retail lending as the demo to load.

75
00:03:16.020 --> 00:03:18.360
This fictional example lets you browse a map and

76
00:03:18.360 --> 00:03:20.720
import an organisation chart without a model server.

77
00:03:21.500 --> 00:03:24.800
Interviews and model-backed questions need a configured model server.

78
00:03:25.600 --> 00:03:27.600
Skip the interview steps in this guide until one

79
00:03:27.600 --> 00:03:28.100
is available.

80
00:03:28.640 --> 00:03:30.960
To add a model server later, run the setup

81
00:03:30.960 --> 00:03:32.180
command shown on screen.

82
00:03:32.780 --> 00:03:34.800
It asks every setup question again.

83
00:03:34.800 --> 00:03:38.760
The Setup settings page explains each model server choice,

84
00:03:39.180 --> 00:03:40.460
including OpenRouter and local Ollama.

85
00:03:44.267 --> 00:03:47.767
The wizard saves credentials and settings in dot novuslens

86
00:03:47.767 --> 00:03:48.707
dot env.

87
00:03:49.407 --> 00:03:51.327
Keep that file private and retain it in the

88
00:03:51.327 --> 00:03:52.187
installation directory.

89
00:03:52.907 --> 00:03:55.567
Keep your original setup journals and Docker volumes for

90
00:03:55.567 --> 00:03:56.227
later runs.

91
00:03:56.967 --> 00:03:59.707
Reusing saved configuration preserves the credentials.

92
00:04:00.307 --> 00:04:03.247
The project name and mesh addresses identify the existing

93
00:04:03.247 --> 00:04:03.727
installation.

94
00:04:04.527 --> 00:04:06.567
Keep them unchanged after records have been created.

95
00:04:07.127 --> 00:04:10.487
Checkpoint: you have retained the installation files and recorded

96
00:04:10.487 --> 00:04:12.187
the operator passphrase securely.

97
00:04:15.300 --> 00:04:16.560
The settings are saved.

98
00:04:17.120 --> 00:04:19.340
When ready, run lens start and wait for the

99
00:04:19.340 --> 00:04:20.480
printed sign-in address.

100
00:04:21.240 --> 00:04:22.780
Open it in a browser on the Docker host.

101
00:04:23.440 --> 00:04:25.140
Sign in with your saved operator account.

102
00:04:25.860 --> 00:04:27.540
Open Retail Lending and its Guide.

103
00:04:28.220 --> 00:04:30.260
With no model server you can browse the map

104
00:04:30.260 --> 00:04:31.200
and import a chart.

105
00:04:31.880 --> 00:04:35.100
Interviews and model-backed questions need a configured model server.

106
00:04:35.760 --> 00:04:38.680
Checkpoint: the organisation and Guide both open.

107
00:04:42.800 --> 00:04:45.380
After deployment the installer opens its monitor.

108
00:04:46.020 --> 00:04:49.280
It shows service health, analysis age, the model server

109
00:04:49.440 --> 00:04:51.640
and the setup journal, and leaving it keeps the

110
00:04:51.640 --> 00:04:52.300
services running.

111
00:04:53.020 --> 00:04:55.920
Run monitor to reopen it, status for setup progress

112
00:04:56.140 --> 00:04:57.880
and logs for recent service output.

113
00:04:58.500 --> 00:05:02.240
After an interruption, restore any failed prerequisite, then run

114
00:05:02.240 --> 00:05:02.600
resume.

115
00:05:03.160 --> 00:05:05.200
Completed outputs are checked before reuse.

116
00:05:05.880 --> 00:05:09.040
Keep the journals, configuration and volumes intact.

117
00:05:09.040 --> 00:05:12.280
If a journal is damaged, preserve it and use

118
00:05:12.280 --> 00:05:15.560
the troubleshooting guide’s diagnostic packet for maintainer assessment.

119
00:05:19.767 --> 00:05:21.687
Use stop to shut down this demo.

120
00:05:22.427 --> 00:05:24.447
Use start to return to the saved installation.

121
00:05:25.147 --> 00:05:28.867
Keep dot novuslens dot env private, retain the journals

122
00:05:28.867 --> 00:05:31.607
and Docker volumes, and keep the project name and

123
00:05:31.607 --> 00:05:32.907
mesh addresses unchanged.

124
00:05:33.487 --> 00:05:35.347
Do not remove volumes to troubleshoot.

125
00:05:35.947 --> 00:05:37.327
Stop is not a backup.

126
00:05:37.967 --> 00:05:40.367
Run lens backup to take one, and test a

127
00:05:40.367 --> 00:05:41.587
restore before relying on it.

128
00:05:45.633 --> 00:05:49.613
The first demonstration uses published images, no model server

129
00:05:49.873 --> 00:05:51.673
and fictional Retail Lending data.

130
00:05:52.133 --> 00:05:54.853
Without an init option, a copied lens file pulls

131
00:05:54.853 --> 00:05:56.093
the release it was built for.

132
00:05:56.493 --> 00:05:58.453
A git checkout builds locally instead.

133
00:05:59.033 --> 00:06:01.793
An init option selects another release or source mode.

134
00:06:02.313 --> 00:06:04.393
Local builds frozen images from a checkout.

135
00:06:04.953 --> 00:06:06.753
Dev mounts live source from a checkout.

136
00:06:07.273 --> 00:06:09.553
A published tag such as zero point one point

137
00:06:09.553 --> 00:06:11.433
zero selects a fixed release.

138
00:06:12.033 --> 00:06:13.953
Later commands run the recorded release.

139
00:06:13.953 --> 00:06:18.253
For a new installation, setup suggests OpenRouter, which needs

140
00:06:18.253 --> 00:06:19.673
an OpenRouter key.

141
00:06:20.213 --> 00:06:24.193
Choose external for an existing OpenAI-compatible model server, or

142
00:06:24.193 --> 00:06:25.473
local for Docker-hosted Ollama.

143
00:06:26.513 --> 00:06:29.273
Check memory and disk requirements before downloading models.

144
00:06:29.793 --> 00:06:32.493
For the demo, choose none for an empty installation.

145
00:06:33.333 --> 00:06:36.473
Choose Meridian for its interview-based demonstration, which needs a

146
00:06:36.473 --> 00:06:36.973
model server.

147
00:06:37.713 --> 00:06:39.893
Use configure to edit saved choices.

148
00:06:39.893 --> 00:06:42.073
It starts from your saved answers.

149
00:06:42.613 --> 00:06:45.813
Keep the project name, identity salt and mesh addresses.

150
00:06:50.033 --> 00:06:52.213
Run administration commands with lens.

151
00:06:52.993 --> 00:06:55.233
It runs them in the running reasoning service, with

152
00:06:55.233 --> 00:06:57.853
the saved installation configuration and credentials.

153
00:06:58.573 --> 00:07:00.913
It copies each input file you name into the

154
00:07:00.913 --> 00:07:03.073
container and passes the new path on.

155
00:07:03.593 --> 00:07:05.993
The first operator was created during setup.

156
00:07:06.793 --> 00:07:09.673
Check the required role and organisation scope before each

157
00:07:09.673 --> 00:07:09.973
action.

158
00:07:14.067 --> 00:07:16.927
Create each account with its organisation and role.

159
00:07:17.487 --> 00:07:18.527
There is no self-signup.

160
00:07:19.067 --> 00:07:21.647
Board accounts read without changing organisational records.

161
00:07:22.247 --> 00:07:23.947
Business-unit owners need a cell scope.

162
00:07:24.867 --> 00:07:26.167
Operators administer the installation.

163
00:07:27.147 --> 00:07:30.887
Replace the example account, organisation and private passphrase on

164
00:07:30.887 --> 00:07:31.087
screen.

165
00:07:31.687 --> 00:07:33.887
Run the command with lens, then sign in as

166
00:07:33.887 --> 00:07:35.867
that account to check its intended access.

167
00:07:40.000 --> 00:07:42.360
Open Administration, then Import.

168
00:07:43.180 --> 00:07:46.240
Prepare the organisation chart using the Operations manual’s linked

169
00:07:46.240 --> 00:07:48.100
input format in the Product Guide.

170
00:07:48.740 --> 00:07:50.360
Choose the chart file and import it.

171
00:07:50.960 --> 00:07:52.540
Inspect the resulting organisation map.

172
00:07:53.100 --> 00:07:55.460
The chart supplies documented structure at shown.

173
00:07:56.040 --> 00:07:59.080
An interview transcript adds statements at told and needs

174
00:07:59.080 --> 00:08:00.440
a configured model server.

175
00:08:01.220 --> 00:08:02.840
Inspect disagreements before continuing;

176
00:08:03.240 --> 00:08:05.780
an interview does not silently rewrite the chart.

177
00:08:09.800 --> 00:08:12.380
Prepare a Markdown document on the Docker host.

178
00:08:13.240 --> 00:08:15.680
Place note.md in the installation directory.

179
00:08:16.440 --> 00:08:19.480
Replace the organisation, account and title with your intended

180
00:08:19.480 --> 00:08:20.040
values.

181
00:08:20.800 --> 00:08:23.660
Check its source, related teams and visibility in the

182
00:08:23.660 --> 00:08:24.340
knowledge library.

183
00:08:25.020 --> 00:08:27.820
Leadership and team contributions have different audience defaults.

184
00:08:28.800 --> 00:08:31.300
Review access using an account from the intended audience.

185
00:08:35.433 --> 00:08:39.553
Measured evidence comes from operational sources through customer-authored mappings.

186
00:08:40.213 --> 00:08:42.673
A mapping says which records belong to which cells

187
00:08:42.673 --> 00:08:45.053
and how raw quantities become indicators.

188
00:08:45.733 --> 00:08:46.793
Unmapped groups are reported.

189
00:08:47.553 --> 00:08:49.053
They are never guessed into a cell.

190
00:08:49.773 --> 00:08:51.473
Simulated sources retain their label.

191
00:08:52.393 --> 00:08:54.293
Choose the cookbook for the source type you actually

192
00:08:54.293 --> 00:08:57.433
use, then inspect the acquired evidence and its observation

193
00:08:57.433 --> 00:08:57.833
dates.

194
00:09:01.933 --> 00:09:05.553
Open Organisation, then Complexity, change and recovery.

195
00:09:06.313 --> 00:09:07.533
Choose a team and its scope.

196
00:09:08.173 --> 00:09:10.713
Open Calculation and sources under each indicator.

197
00:09:11.373 --> 00:09:15.493
Complexity, Agility and Recoverability use explicit local calibration.

198
00:09:16.333 --> 00:09:19.613
Read the formula, inputs, source and validity period.

199
00:09:20.153 --> 00:09:22.733
If a rule or required input is absent, keep

200
00:09:22.733 --> 00:09:23.793
the indicator unknown.

201
00:09:24.673 --> 00:09:26.973
Discuss the mapping with the customer before treating values

202
00:09:26.973 --> 00:09:27.533
as comparable.

203
00:09:31.667 --> 00:09:34.747
Agent inventory records say what each agent may do

204
00:09:34.747 --> 00:09:35.987
and who answers for it.

205
00:09:36.427 --> 00:09:39.607
The source and any attestation determine its evidence basis.

206
00:09:40.567 --> 00:09:43.767
Inspect the declaration beside observed activity in AI agents.

207
00:09:44.447 --> 00:09:47.907
For product declarations, the operator first enrols the product

208
00:09:47.907 --> 00:09:50.287
source and names permitted remit issuers.

209
00:09:51.087 --> 00:09:53.967
Read the Guide’s exact source enrolment steps before activating

210
00:09:53.967 --> 00:09:54.267
it.

211
00:09:58.200 --> 00:10:01.580
After source enrolment, open Declare a remit.

212
00:10:02.340 --> 00:10:05.400
Select the agent and record its purpose, responsible role

213
00:10:05.400 --> 00:10:06.560
and authority basis.

214
00:10:07.220 --> 00:10:11.360
List operations, resources, destinations and any exclusions.

215
00:10:12.100 --> 00:10:14.300
Mark the list complete only if it is complete.

216
00:10:15.000 --> 00:10:16.020
Select Save draft.

217
00:10:16.440 --> 00:10:18.200
An enrolled issuer selects Approve.

218
00:10:18.620 --> 00:10:20.820
They must own the agent’s cell or be the

219
00:10:20.820 --> 00:10:21.700
accountable executive.

220
00:10:22.260 --> 00:10:25.080
Operators use On behalf of for that person’s recorded

221
00:10:25.080 --> 00:10:25.500
approval.

222
00:10:29.633 --> 00:10:32.293
Inspect source dates and the current-support line.

223
00:10:32.793 --> 00:10:36.033
A boundary feed supports findings for three refresh intervals

224
00:10:36.033 --> 00:10:37.313
after its entry was written.

225
00:10:38.053 --> 00:10:39.853
Schedule acquisition more often than that window.

226
00:10:40.593 --> 00:10:44.233
After support lapses, affected findings are withheld until fresh

227
00:10:44.233 --> 00:10:45.453
evidence supports them again.

228
00:10:45.973 --> 00:10:47.893
A stopped estate is not evidence.

229
00:10:48.373 --> 00:10:51.213
Any simulated estate keeps its label when its findings

230
00:10:51.213 --> 00:10:52.073
reach the product.

231
00:10:56.167 --> 00:11:00.127
Stewardship actions require an authorised identity and a reason.

232
00:11:00.827 --> 00:11:03.747
Retraction withdraws a record from surfaces while preserving who

233
00:11:03.747 --> 00:11:05.247
acted, when and why.

234
00:11:06.027 --> 00:11:07.967
Purging an evidence body leaves a tombstone.

235
00:11:08.647 --> 00:11:11.607
Forgetting an organisation is a separate erasure procedure with

236
00:11:11.607 --> 00:11:12.567
wider consequences.

237
00:11:13.387 --> 00:11:15.707
Choose the Guide page for the action you intend.

238
00:11:16.547 --> 00:11:19.107
Inspect the receipt, then open Activity log to confirm

239
00:11:19.107 --> 00:11:20.027
the recorded action.

240
00:11:24.133 --> 00:11:27.513
A deep coherence sweep compares knowledge statements with a

241
00:11:27.513 --> 00:11:28.753
snapshot of graph facts.

242
00:11:29.573 --> 00:11:31.673
Proposed contradictions receive two independent judgements.

243
00:11:32.873 --> 00:11:35.893
Unsettled proposals remain marked unresolved for human review.

244
00:11:36.673 --> 00:11:39.973
Inspect evaluated and unevaluated counts and whether the report

245
00:11:39.973 --> 00:11:42.093
is complete, partial or failed.

246
00:11:42.613 --> 00:11:45.133
A sweep that raises nothing is not proof of

247
00:11:45.133 --> 00:11:45.593
consistency.

248
00:11:46.353 --> 00:11:49.013
Model-backed sweeps require your configured model service.

249
00:11:53.100 --> 00:11:56.660
Subscribe an approved receiver using your operator login and

250
00:11:56.660 --> 00:11:57.220
organisation.

251
00:11:57.840 --> 00:12:00.200
A subscription alone does not deliver notices.

252
00:12:01.000 --> 00:12:03.300
Run notify poll with that login and the printed

253
00:12:03.300 --> 00:12:06.780
browser base address, including your chosen web port, then

254
00:12:06.780 --> 00:12:08.760
inspect notify deliveries.

255
00:12:09.020 --> 00:12:10.460
Docker does not schedule polling.

256
00:12:11.260 --> 00:12:13.360
Arrange ongoing delivery with the installation owner.

257
00:12:14.040 --> 00:12:15.640
Check the receiver allow-list first.

258
00:12:16.120 --> 00:12:18.840
A recorded delivery outcome does not prove that someone

259
00:12:18.840 --> 00:12:20.320
read or acted on the notice.

260
00:12:24.400 --> 00:12:27.400
Stopping and starting again preserves Docker volumes.

261
00:12:28.060 --> 00:12:30.420
Recovery from losing those volumes needs a backup.

262
00:12:30.900 --> 00:12:33.660
The lens command has backup and restore commands.

263
00:12:34.300 --> 00:12:37.380
Backup pauses the three mesh nodes briefly, then archives

264
00:12:37.380 --> 00:12:41.480
the database, all three mesh volumes, setup journals, release

265
00:12:41.480 --> 00:12:43.820
information and the private configuration file.

266
00:12:44.320 --> 00:12:47.140
The archive holds the secrets, so only your user

267
00:12:47.140 --> 00:12:47.960
can read it.

268
00:12:48.500 --> 00:12:51.060
Keep each archive private, and store a copy away

269
00:12:51.060 --> 00:12:51.700
from the host.

270
00:12:51.700 --> 00:12:55.540
Restore needs no earlier setup: when the installation has

271
00:12:55.540 --> 00:12:58.620
no configuration file, it puts the archive's copy in

272
00:12:58.620 --> 00:12:58.920
place.

273
00:12:59.680 --> 00:13:03.200
Restore refuses a mismatched release or configuration file, keeps

274
00:13:03.200 --> 00:13:05.840
a backup of the current state, and restores both

275
00:13:05.840 --> 00:13:06.540
stores together.

276
00:13:07.300 --> 00:13:09.220
Test a restore before relying on the installation.

277
00:13:13.467 --> 00:13:16.667
For a Docker problem, retain the installation directory and

278
00:13:16.667 --> 00:13:18.327
run status and logs.

279
00:13:18.727 --> 00:13:21.687
Record the release identity, failed step and exact error.

280
00:13:22.307 --> 00:13:24.887
Use Collect a diagnostic packet in the troubleshooting guide.

281
00:13:25.707 --> 00:13:28.647
Remove credentials and organisational data before sharing it with

282
00:13:28.647 --> 00:13:29.427
your demo provider.

283
00:13:30.067 --> 00:13:33.527
For model-backed failures, check the configured endpoint and available

284
00:13:33.527 --> 00:13:33.927
models.

285
00:13:34.727 --> 00:13:37.047
Finish by signing in and checking the expected records

286
00:13:37.047 --> 00:13:37.367
again.
