moncefem Claude Opus 4.8 commited on
Commit
f1c3402
·
1 Parent(s): fb5235a

Push current state: v3 checkpoints + metrics + batch2 scripts

Browse files

v3 trained on complete 1647-repo dataset (best cr_val 2.5995); batch2 novel
dataset scripts (enhanced QA + orchestrator).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

data/batch2_novel_repos.txt ADDED
@@ -0,0 +1,500 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ openstack/akanda-rug python
2
+ rgardner/ouimeaux python
3
+ plainas/tq python
4
+ timraasveld/ansible-string-split-filter python
5
+ adampiskorski/lpr_poc python
6
+ ranisalt/enigma python
7
+ claudiopastorini/claudiopastorini.github.io python
8
+ bshaffer/appengine-python-vm-hello python
9
+ RainCity471/lyCompiler python
10
+ chiphogg/vim-vtd python
11
+ egafford/sahara python
12
+ VirusTotal/misp-modules python
13
+ benedfit/SublimeLinter-contrib-pug-lint python
14
+ thebinarypenguin/SublimeLinter-contrib-raml-cop python
15
+ monostable/haskell-kicad-data python
16
+ Dybov/real_estate_agency python
17
+ nagilum/script.rndmov python
18
+ ianfieldhouse/number_to_words python
19
+ andylytical/brewpi-scripts python
20
+ HHS-IntroProgramming/Multiplication-table python
21
+ potatolondon/contentious python
22
+ sassoftware/mint python
23
+ ikaruswill/vector-space-model python
24
+ NewKnowledge/punk python
25
+ igstan/redis-grep python
26
+ gviot/nadis python
27
+ kevgathuku/top40 python
28
+ MichaelYusko/Bot-Chucky python
29
+ associazionepoltronieri/blender-ap python
30
+ jefrailey/basic-scraper python
31
+ haridsv/fabric python
32
+ gadventures/gapipy python
33
+ sk-/python2.7-type-annotator python
34
+ mythmon/kitsune python
35
+ j4mie/django-activelink python
36
+ jwg4/flask-autodoc python
37
+ EmadMokhtar/halaqat python
38
+ EDUlib/edx-platform python
39
+ Graylog2/graylog-ansible-role python
40
+ armab/st2contrib python
41
+ KrzysztofSendor/dactyl python
42
+ nurav/balrog python
43
+ Pierre-Sassoulas/django-survey python
44
+ microsoft/dpu-utils python
45
+ PersonalGenomesOrg/open-humans python
46
+ vayan/external-video python
47
+ simonjbeaumont/xcp-rrdd python
48
+ lozadaOmr/ansible-admin python
49
+ ulikoehler/UliEngineering python
50
+ kxxoling/fabric python
51
+ EmilStenstrom/nephele python
52
+ chingc/DJRivals python
53
+ docsbox/docsbox python
54
+ uva-financial-engineering/cifer-tournament python
55
+ OSGConnect/freesurfer_workflow python
56
+ aaronkurtz/bricky python
57
+ worldforge/libwfut python
58
+ churchlab/millstone python
59
+ asteroide/immo_spider python
60
+ odoo-chile/l10n_cl_account_vat_ledger python
61
+ jeenalee/sklearn_pmml python
62
+ attenzione/SublimeLinter-scss-lint python
63
+ pudo/spendb python
64
+ hackebrot/cibopath python
65
+ mokieyue/mopidy python
66
+ textbook/flask-forecaster python
67
+ ncareol/spatialdb python
68
+ fna/owning-a-home-api python
69
+ gitpython-developers/GitPython python
70
+ spyder-ide/qtawesome python
71
+ ravel-net/ravel python
72
+ humangeo/preflyt python
73
+ ucb-sts/sts python
74
+ jlaunonen/kirppu python
75
+ matthiask/towel python
76
+ jmiserez/sts python
77
+ teonlamont/mne-python python
78
+ EinsamHauer/graphite-web-iow python
79
+ OCA/contract python
80
+ spreadflow/spreadflow-core python
81
+ djangogirlstaipei/eshop python
82
+ 99designs/colorific python
83
+ revng/llvmcpy python
84
+ Antrikshy/reddit2Kindle python
85
+ foliant-docs/foliant python
86
+ estebistec/django-twitter-bootstrap python
87
+ Antojitos/chalupas python
88
+ MasonM/hssonline-conference python
89
+ 2baOrNot2ba/dreamBeam python
90
+ k4nar/inbox python
91
+ ctsit/nacculator python
92
+ kytos/python-openflow python
93
+ victorpoluceno/xwing python
94
+ Stratoscale/skipper python
95
+ SUSE/azurectl python
96
+ pinax/django-waitinglist python
97
+ CA-APM/ca-apm-fieldpack-asm java
98
+ emicklei/melrose go
99
+ dev-brutus/427 javascript
100
+ sabre-io/vobject php
101
+ logentries/le_ruby ruby
102
+ chunye/azure-functions-ux typescript
103
+ jhelwig/homers rust
104
+ matayoshi/tools c
105
+ philipphager/disclosure-android-app java
106
+ hashicorp/go-getter go
107
+ jlord/git-it-electron javascript
108
+ armadito/armadito-glpi php
109
+ kolorahl/acls ruby
110
+ neild3r/vscode-php-docblocker typescript
111
+ LesPepitos/gist rust
112
+ ROCm-Developer-Tools/HIP c
113
+ veyndan/paper-for-reddit java
114
+ torinos-io/api go
115
+ alphagov/notifications-admin javascript
116
+ ProjetPP/PPP-Wikidata php
117
+ uhoh-itsmaciek/pg-quilter ruby
118
+ Ragg-/Delir typescript
119
+ cobalt-org/cobalt.rs rust
120
+ k4rtik/btp-gvn c
121
+ kryptnostic/rhizome java
122
+ resumic/schema go
123
+ topherauyeung/portfolio javascript
124
+ EOL/eol_php_code php
125
+ jiajiawang/load_more ruby
126
+ jchakra/discord-raider typescript
127
+ hoodie/rust-email rust
128
+ GNOME/telepathy-account-widgets c
129
+ Hypersonic/Starlorn java
130
+ declanshanaghy/bbqberry go
131
+ var-bin/reactjs-training javascript
132
+ joshmassey/sga-itracker php
133
+ spatchcock/calc-json-ruby ruby
134
+ what3words/w3w-node-wrapper typescript
135
+ bitwalker/rustcalc rust
136
+ fergul/Cache c
137
+ Monospark/ActionControl java
138
+ qskycolor/gofrontend go
139
+ slightly-askew/portfolio-2017 javascript
140
+ digitickets/omnipay-verifone-web-service php
141
+ emodeqidao/Kiwi ruby
142
+ sdeleuze/mixit typescript
143
+ aopicier/cryptopals-rust rust
144
+ bbockelm/condor-network-accounting c
145
+ steria/skuldsku java
146
+ mattn/go-mastodon go
147
+ cristiana214/cristianachavez214-cristianachavez javascript
148
+ ob-ivan/sd-currency php
149
+ chrishunt/github-auth ruby
150
+ thecjharries/slim-ace typescript
151
+ tum-rt/emoji-feedback rust
152
+ ytaben/WakeOnLanRelay c
153
+ yingyun001/ovirt-engine java
154
+ soudy/eparser go
155
+ mg4tv/mg4tv-web javascript
156
+ tux-rampage/zend-di php
157
+ chrisvanheuveln/cisco-network-node-utils ruby
158
+ jordwest/news-feed-eradicator typescript
159
+ DaGenix/rust-crypto rust
160
+ hikoLab/pebcessing c
161
+ bogdansolga/nokia-spring-boot-training java
162
+ btobolaski/terraform-provider-linode go
163
+ testlnord/wurfelspiel javascript
164
+ fullybaked/pslackr php
165
+ pch/lastfm-client ruby
166
+ cookingfox/stibble-api-client-angular typescript
167
+ oakes/neovim-rs rust
168
+ reupen/mmh c
169
+ Charling-Huang/birt java
170
+ anthonyrego/gosmf go
171
+ hellsgate1001/waypoints javascript
172
+ renyuneyun/core php
173
+ Validic/validic ruby
174
+ artsy/force-public typescript
175
+ mijnadres/serde_elm rust
176
+ pressel/mpi4py c
177
+ RoboZonky/robozonky java
178
+ ftcjeff/AirlineCode-go go
179
+ dmitriiabramov/esfmt javascript
180
+ artesaos/laravel-linkedin php
181
+ aruprakshit/sync ruby
182
+ dkocich/osm-pt-ngx-leaflet typescript
183
+ zslayton/cron rust
184
+ aaronriekenberg/openbsd_cproxy c
185
+ rajdavies/fabric8 java
186
+ ziutek/thread go
187
+ vigetlabs/microcosm javascript
188
+ whathejoe/lms-m4g4 php
189
+ mongodb/mongoid ruby
190
+ wishtack/wishtack-steroids typescript
191
+ burtonageo/rebind rust
192
+ thoughtbot/BotKit c
193
+ smalldatalab/omh-dsu java
194
+ Versent/saml2aws go
195
+ dimkarakostas/unimeet javascript
196
+ symfony/security-bundle php
197
+ moneyadviceservice/middleman-i18n-markdown ruby
198
+ xtina-starr/reaction typescript
199
+ tzkhan/roman-rust rust
200
+ ferrous26/cs452-flaming-meme c
201
+ QuickBlox/quickblox-android-sdk java
202
+ willfaught/gockle go
203
+ coryhouse/react-slingshot javascript
204
+ LogicAndTrick/twhl php
205
+ eric/metriks_log_webhook ruby
206
+ BillWagner/WorkingWithTypeScript typescript
207
+ mulkieran/stratisd rust
208
+ abusalimov/SublimeCImproved c
209
+ danshannon/javastrava-test java
210
+ projectatomic/buildah go
211
+ shioyang/EmotionalReader javascript
212
+ sparkframework/spark php
213
+ r7kamura/altria-simple_cov ruby
214
+ murmur76/beyond.ts typescript
215
+ nathanrosspowell/rust_guessing_game rust
216
+ deniscostadsc/playground c
217
+ helun/Ektorp java
218
+ guildencrantz/ask_nest go
219
+ sgmap/mes-aides-ui javascript
220
+ webfactory/content-mapping-sourceadapter-propel php
221
+ benwbrum/fromthepage ruby
222
+ artivilla/desktop typescript
223
+ adRichter/plantex rust
224
+ coreboot/chrome-ec c
225
+ hpautonomy/find java
226
+ go-playground/generate go
227
+ mrkmarron/ChakraCore javascript
228
+ atehnix/laravel-stubs php
229
+ costolo/chain ruby
230
+ github/webauthn-json typescript
231
+ pacman82/odbc-sys rust
232
+ mundue/MMTrackingController c
233
+ proxer/ProxerLibJava java
234
+ flynn-examples/go-flynn-example go
235
+ eJRF/ejrf javascript
236
+ jolantis/artlantis php
237
+ rasnom/sorryyoufeelthatway ruby
238
+ formigio/angular-frontend typescript
239
+ dtolnay/cxx rust
240
+ dslab-epfl/asap c
241
+ Microsoft/ApplicationInsights-Android java
242
+ buchgr/bazel-remote go
243
+ amos-ws16/amos-ws16-arrowjs-server javascript
244
+ engram-design/FieldManager php
245
+ gina-alaska/ttnmanager ruby
246
+ cannoneyed/fiddle typescript
247
+ Boddlnagg/rustup.rs rust
248
+ thomaskeck/root c
249
+ pilot51/voicenotify java
250
+ mongrelion/gapp go
251
+ virtool/virtool javascript
252
+ stof/symfony php
253
+ twitter/twurl ruby
254
+ amalshehu/angular-tour-of-heroes typescript
255
+ dylanmckay/protocol rust
256
+ mlaz/mynewt-core c
257
+ openmhealth/sample-data-generator java
258
+ opencontainers/runc go
259
+ dtekcth/dfotose javascript
260
+ edvinaskrucas/counter-laravel php
261
+ amatsuda/nested_scaffold ruby
262
+ sgtoj/cw-manage-slack-bot typescript
263
+ tsion/miri rust
264
+ HalCanary/skia-hc c
265
+ kits-ab/gakusei java
266
+ didip/tollbooth go
267
+ pd4d10/tiza javascript
268
+ phalcon/zephir php
269
+ slate-studio/openapi-rails ruby
270
+ dsebastien/DefinitelyTyped typescript
271
+ lowRISC/opentitan rust
272
+ rubenk/burp c
273
+ smalecki/motech java
274
+ mrekucci/euler go
275
+ bitclaw/apptmnt javascript
276
+ mdlayher/wavepipe php
277
+ dhensby/silverstripe-cms ruby
278
+ goloveychuk/tsruntime typescript
279
+ exe-dealer/rust-md5 rust
280
+ mk12/morse c
281
+ HubSpot/jinjava java
282
+ elwinar/adeptus go
283
+ tidepool-org/blip javascript
284
+ listabierta/census-ahoraencomun php
285
+ backus/guard-rubocop ruby
286
+ dl988/quedro typescript
287
+ ggez/ggez rust
288
+ robertmaynard/Sandbox c
289
+ kaltsimon/Chasing-Pictures-front-end java
290
+ StroblIndustries/codeutilsShared go
291
+ TripleSpeeder/StandingOrderDapp javascript
292
+ jeffersonmartin/code-examples php
293
+ julik/mal ruby
294
+ thehyve/glowing-bear typescript
295
+ mneumann/expression-rs rust
296
+ Gluttton/PslRK c
297
+ inbloom/secure-data-service java
298
+ Dirbaio/btcd go
299
+ intervention-engine/frontend javascript
300
+ burnflare/CrowdBuy php
301
+ postmodern/kramdown-man ruby
302
+ zentol/flink typescript
303
+ oxcable/oxcable rust
304
+ CollegeBart/bart-sdl-engine-e16 c
305
+ outofcoffee/testcontainers-java java
306
+ scode/saltybox go
307
+ MacPaw/eslint-config-webservices javascript
308
+ jimmythongtran/recipe_tracker php
309
+ samvera/hyrax ruby
310
+ j-f1/forked-desktop typescript
311
+ habitat-sh/habitat rust
312
+ anagromataf/Fountain c
313
+ sake/bouncycastle-java java
314
+ liam-middlebrook/csh-plug go
315
+ benefitcloud/ember-uploader javascript
316
+ siad007/json-schema php
317
+ solidusio-contrib/solidus_easypost ruby
318
+ influxdb/influxdb typescript
319
+ bolinfest/serde-jsonrc rust
320
+ UrbanCompass/RMGallery c
321
+ TehSAUCE/imagej java
322
+ asobti/kube-monkey go
323
+ CartoDB/Windshaft-cartodb javascript
324
+ ponkrit/developer-test php
325
+ lukeredpath/xcodesnippets ruby
326
+ trustpilot/skift typescript
327
+ stepancheg/rust-ide-rust rust
328
+ cxa/MenuItemKit c
329
+ VinnyQ/blueflood java
330
+ melange-app/melange go
331
+ mzrimsek/resume_site javascript
332
+ wesley1001/Kurogo-Mobile-Web php
333
+ giedomak/table_cloth ruby
334
+ t123yh/simple-sandbox typescript
335
+ dati91/servo rust
336
+ bespider/STTweetLabel c
337
+ Team694/joebot java
338
+ v4lproik/no-name go
339
+ bassettmb/slack-bot-dev javascript
340
+ biplobice/concrete5 php
341
+ heavenstudio/spree_pag_seguro ruby
342
+ BitGo/BitGoJS typescript
343
+ keeperofdakeys/asn1-rs rust
344
+ BGWoodward/FishDetector c
345
+ rwinch/spring-security java
346
+ wrapp/wrapplog go
347
+ kiboit/phast javascript
348
+ alexweissman/UserFrosting php
349
+ chronogolf/lightspeed_restaurant ruby
350
+ gund/ng-http-interceptor typescript
351
+ ajroetker/rustc-serialize rust
352
+ greenplum-db/gpdb c
353
+ malucs-developer/Android-Simulator java
354
+ otoolep/raft go
355
+ escaip/smart_bike javascript
356
+ imabug/raddb php
357
+ ruby/spec ruby
358
+ SaschaNaz/TypeScript typescript
359
+ dinfuehr/rust rust
360
+ kazmasaurus/CRToast c
361
+ apache/jmeter java
362
+ ccirello/gochatbot go
363
+ rowanoulton/prefix-matches javascript
364
+ vanderlee/PHPSwaggerGen php
365
+ dtan4/c2y ruby
366
+ tsvetie/nativescript-cli typescript
367
+ qdot/systray-rs rust
368
+ filom/ASN1Decoder c
369
+ Arabidopsis-Information-Portal/intermine java
370
+ lstolyarov/terraform go
371
+ squarewave/addons-frontend javascript
372
+ symfony-cmf/Resource php
373
+ syncrou/manageiq ruby
374
+ arthot/calque typescript
375
+ dwrensha/capnproto-rust rust
376
+ cxd4/trig c
377
+ Syncleus/aparapi java
378
+ rancher/k3s go
379
+ mozilla/webmaker-app-cordova javascript
380
+ LaurentEsc/Laravel-Subdomain-Localization php
381
+ mahimahi42/microblogger ruby
382
+ robak86/neography typescript
383
+ minijackson/INF-4301A rust
384
+ k0gaMSX/kcc c
385
+ holandajunior/workaday java
386
+ myodc/go-micro go
387
+ sigurdga/barteby javascript
388
+ anqh/anqh php
389
+ ValiMail/griddler ruby
390
+ polyaxon/polyaxon typescript
391
+ gchp/termbox-sys rust
392
+ leovegetium/Trabalho-P c
393
+ pzn/clipapp java
394
+ ephemeralsnow/packer go
395
+ dkrathi457/app javascript
396
+ GrottoPress/jentil php
397
+ crepe/creperie ruby
398
+ Dkendal/battle_snake typescript
399
+ snewt/bnf rust
400
+ netzimme/mbed-os c
401
+ mkarneim/luamod java
402
+ resourced/resourced-master go
403
+ manifoldco/torus-cli javascript
404
+ kjhoerr/august-offensive php
405
+ matiaskorhonen/libpixel-ruby ruby
406
+ tjoskar/ng2-lazyload-image typescript
407
+ jonas-schievink/sneeze rust
408
+ adobe-rnd/cordova-osx c
409
+ mrdon/AMPS java
410
+ bernardolins/clustereasy go
411
+ CVBDL/EagleEye-App javascript
412
+ hernantas/MangaReader php
413
+ k0nserv/Humus ruby
414
+ paypac/node-concierge typescript
415
+ jzhu98/telescope rust
416
+ IFTTT/JazzHands c
417
+ fhoeben/hsac-fitnesse-fixtures java
418
+ spacedock-io/registry go
419
+ weepower/wee-core javascript
420
+ DNepovim/kraj-praha php
421
+ ifosch/skyed ruby
422
+ shiftkey/desktop typescript
423
+ aptos-labs/aptos-core rust
424
+ willpatterson/HOPSTACK c
425
+ Steveice10/MCProtocolLib java
426
+ go-gl/gl go
427
+ burningtomatoes/Bitsmashers javascript
428
+ tmingos/sassy-roots php
429
+ mirego/hanzo ruby
430
+ bradyholt/aspnet-core-react-template typescript
431
+ Logicalshift/tame-tree rust
432
+ qsctr/vex-4194b-2016 c
433
+ gabrielavara/music-player java
434
+ ianopolous/go-ipfs go
435
+ SentinelsOfMagic/SentinelsOfMagic javascript
436
+ dxw/php-missing php
437
+ moneyadviceservice/mas-feedback ruby
438
+ nrlquaker/nfov typescript
439
+ crumblingstatue/rust-libnotify-sys rust
440
+ darkbuck/Halide c
441
+ scottfrederick/spring-boot java
442
+ firestudios/qor-example go
443
+ etopian/codebox-package-menubar javascript
444
+ dkgndec/DrupalConsole php
445
+ Teino1978-Corp/Teino1978-Corp-kaminari ruby
446
+ rtsjs/rts typescript
447
+ fanderzon/rocket-api rust
448
+ isbadawi/badavi c
449
+ ryanbrainard/richsobjects java
450
+ rancher/rancher go
451
+ jamen/craze javascript
452
+ unl/UNL_UCBCN_System php
453
+ joeyates/ruby-sun-times ruby
454
+ larsvanbraam/vue-transition-component typescript
455
+ terminalcloud/libnetfilter_queue rust
456
+ qtmediahub/sasquatch c
457
+ InnovateUKGitHub/innovation-funding-service java
458
+ PufferPanel/PufferPanel go
459
+ npmcomponent/ramitos-midway javascript
460
+ Radvance/Radvance php
461
+ sandro/ephemeral_response ruby
462
+ molstar/molstar typescript
463
+ spacejam/sled rust
464
+ AAChartModel/AAChartKit c
465
+ microprofile/microprofile-conference java
466
+ monzo/typhon go
467
+ formidable-coffee/masterfully javascript
468
+ facile-it/paraunit php
469
+ zurb/inky-rb ruby
470
+ dragma/styled-bootstrap-grid typescript
471
+ musoke/inspirer rust
472
+ echonest/libechonest c
473
+ aleph-zero/presto java
474
+ cloudfoundry-incubator/nsync go
475
+ MichaelKohler/mozilla-watcher javascript
476
+ nordsoftware/lumen-core php
477
+ dtan4/organicat ruby
478
+ Flatline4/Flatline4 typescript
479
+ Zamicol/Challenge rust
480
+ ryepdx/keyphrase c
481
+ robertoschwald/cas java
482
+ zombiezen/go-log go
483
+ ONSdigital/florence javascript
484
+ dweidner/laravel-goutte php
485
+ pinzolo/redmine_persist_wfmt ruby
486
+ sheldarr/Votenger typescript
487
+ adeschamps/lcm rust
488
+ jpoirier/picoc c
489
+ Suseika/collections-utils java
490
+ qasim/what-class-is-this go
491
+ nissoh/core javascript
492
+ dafik/CodeGen php
493
+ braintree/braintree-web-drop-in ruby
494
+ kawamon/hue typescript
495
+ GuzTech/tray_rust rust
496
+ crontab/libobjc2 c
497
+ aNNiMON/JECP java
498
+ Urethramancer/lbapi go
499
+ facebook/draft-js javascript
500
+ alfaproject/omnipay-skrill php
runs/sixview_v2/head.push_latest.pt CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:d6674db62c7284efdf40170b3b00dec0159c81bb6bc3081e78028bf434e84e58
3
  size 754581395
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:8d9dd24838eff6b9f40342b93de86fbed724bdc8f35eb9a8b579cc869ae384e3
3
  size 754581395
runs/sixview_v2/metrics.jsonl CHANGED
@@ -4,3 +4,6 @@
4
  {"step": 600, "epoch": 0, "end_of_epoch": false, "eval_loss": 2.647629145788428, "suites": {"cr_val": {"eval_loss": 2.647629145788428, "n_docs": 40, "n_tokens": 7696}, "cr_test": {"eval_loss": 2.5539493785098246, "n_docs": 40, "n_tokens": 7924}, "ir_test": {"eval_loss": 2.71551365456855, "n_docs": 37, "n_tokens": 1706}}}
5
  {"step": 900, "epoch": 0, "end_of_epoch": false, "eval_loss": 2.6266876440766325, "suites": {"cr_val": {"eval_loss": 2.6266876440766325, "n_docs": 40, "n_tokens": 7696}, "cr_test": {"eval_loss": 2.523330387534787, "n_docs": 40, "n_tokens": 7924}, "ir_test": {"eval_loss": 2.7079888427802574, "n_docs": 37, "n_tokens": 1706}}}
6
  {"step": 1200, "epoch": 0, "end_of_epoch": false, "eval_loss": 2.599496544259378, "suites": {"cr_val": {"eval_loss": 2.599496544259378, "n_docs": 40, "n_tokens": 7696}, "cr_test": {"eval_loss": 2.501433642448529, "n_docs": 40, "n_tokens": 7924}, "ir_test": {"eval_loss": 2.7031463161372913, "n_docs": 37, "n_tokens": 1706}}}
 
 
 
 
4
  {"step": 600, "epoch": 0, "end_of_epoch": false, "eval_loss": 2.647629145788428, "suites": {"cr_val": {"eval_loss": 2.647629145788428, "n_docs": 40, "n_tokens": 7696}, "cr_test": {"eval_loss": 2.5539493785098246, "n_docs": 40, "n_tokens": 7924}, "ir_test": {"eval_loss": 2.71551365456855, "n_docs": 37, "n_tokens": 1706}}}
5
  {"step": 900, "epoch": 0, "end_of_epoch": false, "eval_loss": 2.6266876440766325, "suites": {"cr_val": {"eval_loss": 2.6266876440766325, "n_docs": 40, "n_tokens": 7696}, "cr_test": {"eval_loss": 2.523330387534787, "n_docs": 40, "n_tokens": 7924}, "ir_test": {"eval_loss": 2.7079888427802574, "n_docs": 37, "n_tokens": 1706}}}
6
  {"step": 1200, "epoch": 0, "end_of_epoch": false, "eval_loss": 2.599496544259378, "suites": {"cr_val": {"eval_loss": 2.599496544259378, "n_docs": 40, "n_tokens": 7696}, "cr_test": {"eval_loss": 2.501433642448529, "n_docs": 40, "n_tokens": 7924}, "ir_test": {"eval_loss": 2.7031463161372913, "n_docs": 37, "n_tokens": 1706}}}
7
+ {"step": 1341, "epoch": 0, "end_of_epoch": true, "eval_loss": 2.606481142984916, "suites": {"cr_val": {"eval_loss": 2.606481142984916, "n_docs": 40, "n_tokens": 7696}, "cr_test": {"eval_loss": 2.4960094789914686, "n_docs": 40, "n_tokens": 7924}, "ir_test": {"eval_loss": 2.644830758169136, "n_docs": 37, "n_tokens": 1706}}}
8
+ {"step": 1500, "epoch": 1, "end_of_epoch": false, "eval_loss": 2.6363723853877947, "suites": {"cr_val": {"eval_loss": 2.6363723853877947, "n_docs": 40, "n_tokens": 7696}, "cr_test": {"eval_loss": 2.521588217604347, "n_docs": 40, "n_tokens": 7924}, "ir_test": {"eval_loss": 2.67671262980346, "n_docs": 37, "n_tokens": 1706}}}
9
+ {"step": 1800, "epoch": 1, "end_of_epoch": false, "eval_loss": 2.632204555261594, "suites": {"cr_val": {"eval_loss": 2.632204555261594, "n_docs": 40, "n_tokens": 7696}, "cr_test": {"eval_loss": 2.508357783750354, "n_docs": 40, "n_tokens": 7924}, "ir_test": {"eval_loss": 2.6669074774906476, "n_docs": 37, "n_tokens": 1706}}}
runs/sixview_v2/tb/events.out.tfevents.1784937854.MAC-722851.47533.0 CHANGED
Binary files a/runs/sixview_v2/tb/events.out.tfevents.1784937854.MAC-722851.47533.0 and b/runs/sixview_v2/tb/events.out.tfevents.1784937854.MAC-722851.47533.0 differ
 
scripts/generate_repo_scoped_qa_v2.py ADDED
@@ -0,0 +1,151 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/usr/bin/env python3
2
+ """ENHANCED repo-scoped QA generator (batch2 / novelty pass).
3
+
4
+ Same 6-view input as generate_repo_scoped_qa.py, but the prompt asks for a
5
+ BROADER, NOVEL set of judgment aspects that the earlier passes under-covered --
6
+ so the new repos teach the model NEW capabilities, not just more of the same:
7
+
8
+ existing aspects : architecture, data_flow, why, contracts, conventions, impact, ops
9
+ NEW aspects here : debugging (failure modes / how to diagnose),
10
+ security (attack surface / trust boundaries / validation),
11
+ performance (hot paths / scaling / cost),
12
+ concurrency (races / ordering / data consistency),
13
+ migration (how to evolve/refactor safely / deprecation),
14
+ testing_strategy (what a good test here asserts)
15
+
16
+ Still Tier-A/B discipline: short judgment answers, NO exact file/line lists.
17
+ Appends to the SAME data/qna/repo_scoped_qa.jsonl (resume-safe by doc_id) so the
18
+ next-day assemble picks it up automatically.
19
+
20
+ Usage:
21
+ ./venv/bin/python scripts/generate_repo_scoped_qa_v2.py \
22
+ --sources data/docs/multiview_sources.jsonl \
23
+ --model google/gemma-4-31b-it --workers 10 --only-repos data/batch2_novel_repos.txt
24
+ """
25
+ from __future__ import annotations
26
+ import argparse, hashlib, json, os, re, sys, time
27
+ from pathlib import Path
28
+ from typing import Dict, List
29
+ from openai import OpenAI
30
+
31
+ HERE = Path(__file__).resolve().parent; REPO_ROOT = HERE.parent
32
+ sys.path.insert(0, str(REPO_ROOT))
33
+ from memory_lora.data_paths import QNA_DIR, DOCS_DIR, CACHE_DIR, ensure_dirs # noqa: E402
34
+
35
+ def _load_dotenv(p: Path):
36
+ if p.exists():
37
+ for line in p.read_text().splitlines():
38
+ if "=" in line and not line.strip().startswith("#"):
39
+ k, v = line.split("=", 1); os.environ.setdefault(k.strip(), v.strip())
40
+ _load_dotenv(REPO_ROOT / ".env")
41
+ MODEL = "google/gemma-4-31b-it"; BASE_URL = "https://openrouter.ai/api/v1"
42
+
43
+ SYSTEM = (
44
+ "You are a 20-year staff engineer writing ADVANCED onboarding Q&A for a senior "
45
+ "engineer joining a repository. You get 6 views: call/import graph, architecture "
46
+ "(readme/tree), git history, test contracts, code conventions, and ops/build "
47
+ "config. Produce a JSON array of 10-14 objects with keys 'aspect','question',"
48
+ "'answer'. aspect in: debugging, security, performance, concurrency, migration, "
49
+ "testing_strategy, data_flow, impact. Rules: (1) questions are REPO-LEVEL and "
50
+ "test HARD JUDGMENT a senior would reason about -- 'where would a bug in X most "
51
+ "likely surface', 'what is the trust boundary / attack surface here', 'what is "
52
+ "the likely hot path or scaling bottleneck', 'what ordering/consistency "
53
+ "assumption could break under concurrency', 'how would you evolve Y without "
54
+ "breaking callers', 'what must a good test here assert'. (2) answers SHORT -- one "
55
+ "phrase or sentence, copyable, NO file-path or line-number lists. (3) ground "
56
+ "every answer in the provided views; invent nothing; if a view is thin, reason "
57
+ "from what IS present. Output ONLY the JSON array."
58
+ )
59
+
60
+ def ckey(*p): return hashlib.sha256("||".join(p).encode()).hexdigest()[:24]
61
+
62
+ def gen(client, ctx, cache_dir, retries=4) -> List[Dict]:
63
+ cf = cache_dir / f"rsqa2_{ckey(MODEL, ctx)}.json"
64
+ if cf.exists():
65
+ raw = cf.read_text()
66
+ else:
67
+ for a in range(retries):
68
+ try:
69
+ r = client.chat.completions.create(model=MODEL,
70
+ messages=[{"role": "system", "content": SYSTEM}, {"role": "user", "content": ctx}],
71
+ max_tokens=4000, temperature=0.6)
72
+ raw = r.choices[0].message.content or ""; cf.write_text(raw); break
73
+ except Exception: # noqa: BLE001
74
+ time.sleep(2 ** a)
75
+ else:
76
+ return []
77
+ m = re.search(r"\[.*\]", raw, re.DOTALL)
78
+ if not m: return []
79
+ try: items = json.loads(m.group(0))
80
+ except json.JSONDecodeError: return []
81
+ out = []
82
+ for it in items:
83
+ q = (it.get("question") or "").strip(); a = (it.get("answer") or "").strip()
84
+ asp = (it.get("aspect") or "general").strip()
85
+ if q and a and len(a) < 240: out.append({"aspect": asp, "question": q, "answer": a})
86
+ return out
87
+
88
+ def build_ctx(repo: str, vt: Dict[str, str]) -> str:
89
+ parts = [f"REPOSITORY: {repo}\n"]
90
+ for k in ["v_arch", "v_graph", "v_history", "v_contracts", "v_conventions", "v_ops"]:
91
+ parts.append(f"=== {k} ===\n{vt.get(k,'')}\n")
92
+ return "\n".join(parts)
93
+
94
+ def main():
95
+ import threading
96
+ from concurrent.futures import ThreadPoolExecutor, as_completed
97
+ ap = argparse.ArgumentParser()
98
+ ap.add_argument("--sources", default=str(DOCS_DIR / "multiview_sources.jsonl"))
99
+ ap.add_argument("--only-repos", default="", help="file of repo\\tlang -- restrict to these repos (the novel batch)")
100
+ ap.add_argument("--model", default=MODEL)
101
+ ap.add_argument("--workers", type=int, default=10)
102
+ args = ap.parse_args()
103
+ globals()["MODEL"] = args.model
104
+ ensure_dirs()
105
+ key = os.environ.get("OPENROUTER_API_KEY")
106
+ if not key: raise SystemExit("OPENROUTER_API_KEY not set")
107
+ client = OpenAI(base_url=BASE_URL, api_key=key)
108
+
109
+ only = None
110
+ if args.only_repos and Path(args.only_repos).exists():
111
+ only = {l.split("\t")[0].split()[0].strip() for l in open(args.only_repos) if l.strip()}
112
+
113
+ src = [json.loads(l) for l in open(args.sources)]
114
+ if only is not None:
115
+ src = [r for r in src if r["doc_id"] in only or r.get("repo") in only]
116
+ outp = QNA_DIR / "repo_scoped_qa.jsonl"
117
+ done = set()
118
+ if outp.exists():
119
+ done = {json.loads(l)["doc_id"] for l in open(outp)}
120
+ todo = [r for r in src if r["doc_id"] not in done]
121
+ print(f"enhanced QA: {len(todo)} repos to do (of {len(src)} selected)", flush=True)
122
+ out_f = outp.open("a")
123
+ lock = threading.Lock()
124
+ n_docs = [0]; n_qa = [0]; t0 = time.time()
125
+
126
+ def work(row):
127
+ doc_id = row["doc_id"]
128
+ qas = gen(client, build_ctx(row["repo"], row["view_text"]), CACHE_DIR)
129
+ if not qas: return
130
+ with lock:
131
+ for qa in qas:
132
+ out_f.write(json.dumps({"doc_id": doc_id, "doc_version": "head",
133
+ "split": "train", "qna_split": "train", "aspect": qa["aspect"],
134
+ "question": qa["question"], "prefix": f"Q: {qa['question']}\nA:",
135
+ "target": " " + qa["answer"], "lang": row.get("lang", "unknown"),
136
+ "source": "batch2_novel"}) + "\n")
137
+ n_qa[0] += 1
138
+ n_docs[0] += 1
139
+ if n_docs[0] % 25 == 0:
140
+ print(f" {n_docs[0]}/{len(todo)} repos, {n_qa[0]} QA "
141
+ f"({n_docs[0]/max(1e-9,(time.time()-t0)/60):.1f}/min)", flush=True)
142
+
143
+ with ThreadPoolExecutor(max_workers=args.workers) as ex:
144
+ for _ in as_completed([ex.submit(work, r) for r in todo]):
145
+ pass
146
+ out_f.close()
147
+ print(f"\nDone. {n_docs[0]} novel repos -> {n_qa[0]} enhanced (debug/security/perf/"
148
+ f"concurrency/migration) QA.", flush=True)
149
+
150
+ if __name__ == "__main__":
151
+ main()
scripts/orchestrate_batch2.sh ADDED
@@ -0,0 +1,26 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/bin/bash
2
+ # Independent batch2 pipeline: wait for the novel-repo CPU build to finish, then
3
+ # run the ENHANCED QA pass on exactly those repos. Never touches training.
4
+ # Leaves everything staged for a next-day assemble (does NOT re-assemble aligned6).
5
+ set -u
6
+ cd /Users/moncif/gemma4-hack
7
+ BL=runs/build_batch2.log
8
+ QL=runs/qa_batch2.log
9
+ OL=runs/batch2_orchestrator.log
10
+ log(){ echo "$(date '+%F %T'): $*" >> "$OL"; }
11
+
12
+ log "batch2 orchestrator started; waiting for build to finish"
13
+ # wait for the build process to end
14
+ while pgrep -f "build_repo_multiview.py --repos-file data/batch2_novel_repos.txt" >/dev/null 2>&1; do
15
+ sleep 30
16
+ done
17
+ log "build finished: $(grep -oE 'Done\. [0-9]+ repos.*' "$BL" | tail -1)"
18
+
19
+ # run enhanced QA on just the novel batch repos (resume-safe, appends to main qna)
20
+ log "launching enhanced QA (debug/security/perf/concurrency/migration)"
21
+ ./venv/bin/python scripts/generate_repo_scoped_qa_v2.py \
22
+ --sources data/docs/multiview_sources.jsonl \
23
+ --only-repos data/batch2_novel_repos.txt \
24
+ --model google/gemma-4-31b-it --workers 10 >> "$QL" 2>&1
25
+ log "enhanced QA done: $(grep -oE 'Done\. [0-9]+ novel repos.*' "$QL" | tail -1)"
26
+ log "batch2 dataset READY for next-day assemble (novel repos in main pool; enhanced QA appended)"