Original en anglais: https://argusic.com/subject/vmprint
vmprint
Ce moteur de mise en page peut résoudre les problèmes de mise en page les plus difficiles imaginables. Son résultat est de qualité DTP et déterministe. Il est plus rapide que les moteurs écrits en C++ parce qu'il n'est pas traditionnel. Adossé à la technologie des moteurs de jeu, il possède un micro-noyau et exécute une simulation spatio-temporelle au lieu d'une boucle de pagination géante et complexe.
Fonctionnesource : GitHubpage d'accueilTypeScriptApache-2.0commit a69394f06aa0
TypeScript, sous licence Apache-2.0. Le projet se décrit ainsi : bidirectional text, canvas, document, headless browser, layout engine, markdown to pdf, multilingual et pdf.
vmprint fonctionne. Un agent Argusic l'a installé en 3 minutes et a rencontré 4 erreurs sur une machine propre sans GPU, et toute la session a été enregistrée.
vmprint CLI and engine ran in this container on Node 18 despite EBADENGINE install warnings: npm test exited 0 (engine 77+77 fixtures, packaged-integration 1 page/1107 bytes), the CLI rendered valid text-bearing PDFs with bundled local fonts and version 0.1.0, and engine.layout() produced 1 page x 1 box containing 'Hello, world.';
Ce que l'agent a obtenu sur une machine propre, dans ses propres mots. Comment c'est mesuré
Mesuré par Argusic sur une machine vierge, à chaque fois. Chaque chiffre renvoie à ses preuves. Score Argusic de 80 sur 100 (la moyenne des scores des exécutions de ce projet).
En un coup d'œil
Données du projet issues de GitHub, avec un lien en haut de cette page, mis à jour le . Données de test d'Argusic (CC BY 4.0) ; chaque chiffre renvoie à une page d'exécution avec le log complet, l'enregistrement et leurs empreintes sha256.
Ce qui a été mesuré
Tiré de l'exécution qui a décidé ce verdict. Chaque ligne est une valeur enregistrée, pas une estimation.

Ce qui s'est mal passé, dans les mots de l'agent
Les propres mots de l'agent, le plus grave en premier, jamais réécrits en conseils.
- QUICKSTART code path broken: PdfContext has no waitForFinish(); renderLayout ignores the passed fontManager and crashes on getFontRegistrySnapshot40 minutes
- README/QUICKSTART example (story with inline content, no styles) fails loadDocument and lays out 0 pages; story text only flows via children30 minutes
- npm install warned EBADENGINE for commander@14, lru-cache@11, rimraf@6 (require Node >=20; container has Node 18.19.1)
- vmprint --render-from-layout does not write the PDF (only end() is called)
- Temps d'installation
- 3 minutes
- De la machine vierge à la fin
- 18 minutes
- Erreurs rencontrées et corrigées
- 4 rencontrées, 0 corrigée sans aide humaine
- Comment le résultat a été prouvé
- npm test exited 0 with engine OK (77 fixtures) x2 and '[packaged-integration] OK: 1 page(s), 1107 bytes'; node cli/dist/index.js -V printed 0.1.0; CLI rendered 3 fixture PDFs exit 0 with cold layoutMs and 1-page streams; PDFs are structurally valid (%PDF-1.3, 1 /Page, %%EOF, embedded ToUnicode fonts) and the rendered glyph stream decodes to 'Hello, world.'; engine.layout() returned 1 page/1 box (72,72,451,18.09) whose line text is 'Hello, world.' with 13 glyphs
- Tokens de modèle utilisés
- 1 412 346
- Commit exact testé
- a69394f06aa0
- Image de conteneur
- sha256:cdd920bce783
Ce qui n'a pas été mesuré
L'autre moitié, pour que vous voyiez exactement jusqu'où vont ces preuves. Une lacune est affichée comme une lacune et n'est jamais comblée.
- Pic de mémoire GPU
- cette exécution a eu lieu sur une machine CPU, il n'y avait donc pas de GPU à mesurer
- Comportement sur une longue durée
- chaque tentative utilise les réglages documentés les plus légers et un budget de temps fixe : on mesure donc s'il fonctionne, pas comment il tient sous la charge
La fin de l'enregistrement
Les dernières lignes de la session de terminal qui a décidé ce verdict, exactement telles qu'elles ont été enregistrées.
- Inline decoding: page 1's rendered literal glyphs decode to exactly the sentence "Hello, world." …
- Engine API: `loadDocument` → `new VMPrintEngine(...)` → `engine.layout()` produced 1 page, 1 box …
**Errors hit and fixed**
- README/QUICKSTART: Example document's element `{"type":"story","content":"Hello, world."}` produc…
- README Quickstart code: `context.waitForFinish()` doesn't exist on `PdfContext` (no `waitForFinis…
- `engine.layout()` on a story without children returns 0 pages, and `vmprint --render-from-layout`…
No third-party credentials or mocks were needed; everything ran with the repo's bundled fonts. `fin…
exec
/bin/sh -lc true in /work/repo
succeeded in 0ms:
tokens used
1,412,346Revoir toute la session, chaque commande depuis une machine propre jusqu'à ce point.
Comment le test a été mené
Un agent, un conteneur, aucune aide humaine. Il installe le projet comme l'indique sa propre documentation, l'exécute et corrige ce qui casse. Tout ce qui suit est enregistré tel que cela s'est passé : la session de terminal, le log et le commit exact. La méthode complète.
Points forts et limites
Des faits mesurés, pas des opinions. Comment ce site est rédigé.
Ce qui s'est bien passé
- A atteint un état de fonctionnement sur une machine propre, avec la session enregistrée.
- Installé en 3 minutes.
- A fonctionné sans GPU, il n'en a donc pas besoin pour démarrer.
- Sous licence Apache-2.0, selon son hébergeur.
Ce qui ne s'est pas bien passé, ou n'est pas connu
- A rencontré 4 erreurs pendant l'installation, dont 4 n'ont pas été résolues.
- Mesuré une seule fois jusqu'ici. Une seule tentative montre qu'il peut fonctionner, pas qu'il fonctionne de façon fiable.
Pour quoi c'est un choix raisonnable
- L'essayer sur un ordinateur portable ou un petit serveur : il a atteint un état de fonctionnement sans GPU.
- Une évaluation rapide : il fonctionnait 3 minutes après le clone.
Également testés, dans le même domaine
Chacun de ces projets a été installé et exécuté par Argusic sur une machine propre. Rien n'apparaît ici sans avoir été testé.
Historique des exécutions
| testé par | tentative | résultat | score | coût USD | date |
|---|---|---|---|---|---|
| Argusic Runner | 1/3 | Fonctionne | 80,00 | 0,04 |
Sujets (depuis GitHub)
bidirectional-textcanvasdocumentheadless-browserlayout-enginemarkdown-to-pdfmultilingualpdfpdf-exportpdf-generationpdf-viewerpdfjspublishingpuppeteerreact-pdftext-renderingtypescripttypesettingtypst
Intégrer le badge
Markdown pour le README du projet. Il renvoie vers cette page ; conditions sur la page des conditions.
[](https://argusic.com/subject/vmprint)Questions
- vmprint fonctionne-t-il ?
- Oui. vmprint fonctionne. Argusic l'a installé et lancé sur une machine propre en 3 minutes, en rencontrant 4 erreurs en route, et a enregistré la session.
- Comment Argusic a-t-il testé vmprint ?
- Sur une machine vierge et jetable, avec chaque commande enregistrée et le dépôt épinglé au commit a69394f06aa0. Une tentative est enregistrée, et la méthode complète se trouve sur la page de méthodologie.
- Combien a coûté le test de vmprint ?
- L'exécution qui a produit ce verdict a coûté 0,04 USD : le coût réel du calcul et du modèle, pas un prix catalogue par million de tokens. Il est enregistré sur la page de cette exécution.
- Combien de temps faut-il pour installer vmprint ?
- 3 minutes lors de l'exécution qui a décidé ce verdict, d'une machine propre à un état de fonctionnement. Il s'agit d'une tentative mesurée, pas d'une moyenne.
- vmprint a-t-il besoin d'un GPU ?
- Pas pour démarrer. Argusic a atteint un état de fonctionnement sur une machine sans GPU.
- Qu'est-ce qui pose problème lors de l'installation de vmprint ?
- 4 problèmes sont survenus lors de l'exécution enregistrée. Chacun, avec le temps qu'il a coûté, est listé sur cette page.
- Où sont les preuves pour vmprint ?
- L'exécution enregistrée se trouve sur cette page, chacune avec un lien vers son log complet et son enregistrement du terminal, conservés avec une empreinte sha256 pour qu'ils ne puissent pas être modifiés discrètement.