chofex-cli 0.1.144 → 0.1.145

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -31,10 +31,12 @@ chofex confirm
31
31
  to the latest published version.
32
32
 
33
33
  `chofex register` collects and submits an application with full name, role,
34
- optional bio, portfolio URL, shipped project, LinkedIn and GitHub URLs, and
35
- Terms and Conditions. Use `--input` to submit a completed JSON application. The
36
- Black Box is optional: its progress and score give organizers another review
37
- metric, but never decide admission or block an application submission.
34
+ optional phone number, bio, portfolio URL, shipped project, LinkedIn and GitHub
35
+ URLs, and Terms and Conditions. Use `--input` to submit a completed JSON
36
+ application.
37
+ The Black Box does not block submission, but every challenge winner must submit
38
+ an application before being accepted. Top results receive a direct pass; other
39
+ scores give organizers another review metric.
38
40
 
39
41
  The public ranking is read-only at `https://hacktheandes.com/challenges`.
40
42
 
package/dist/index.js CHANGED
@@ -58564,7 +58564,7 @@ var challengeCatalog = [
58564
58564
  format: "accuracy",
58565
58565
  formatLabel: "Accuracy score",
58566
58566
  opensAt: "2026-09-17T14:00:00.000Z",
58567
- rankingVisibleAt: "2026-09-18T14:00:00.000Z",
58567
+ rankingVisibleAt: "2026-09-19T02:00:00.000Z",
58568
58568
  queryLimit: 25,
58569
58569
  evaluationLimit: 3,
58570
58570
  hiddenSampleSize: 1000,
@@ -58830,6 +58830,7 @@ var ChallengeCatalogSchema = exports_Schema.Struct({
58830
58830
  var nonBlank = (maximum) => exports_Schema.Trim.pipe(exports_Schema.check(exports_Schema.isMinLength(1), exports_Schema.isMaxLength(maximum)));
58831
58831
  var optionalText = (maximum) => exports_Schema.optional(nonBlank(maximum));
58832
58832
  var nullableOptionalText = (maximum) => exports_Schema.optional(exports_Schema.NullOr(nonBlank(maximum)));
58833
+ var phone = nonBlank(32);
58833
58834
  var normalizedString = (normalize2) => exports_Schema.String.pipe(exports_Schema.decode({
58834
58835
  decode: exports_SchemaGetter.transform(normalize2),
58835
58836
  encode: exports_SchemaGetter.transform((value3) => value3)
@@ -58918,6 +58919,7 @@ var joinFullName = (firstName, lastName) => {
58918
58919
  var applicationInputFields = {
58919
58920
  fullName: nonBlank(givenNameMaximum + familyNameMaximum + 1),
58920
58921
  role: nonBlank(120),
58922
+ phone: exports_Schema.optional(phone),
58921
58923
  bio: optionalText(2000),
58922
58924
  portfolioUrl: exports_Schema.optional(url),
58923
58925
  shippedProject: optionalText(2000),
@@ -58930,6 +58932,7 @@ var ApplicationInput = exports_Schema.Struct(applicationInputFields);
58930
58932
  var applicationDraftInputFields = {
58931
58933
  fullName: exports_Schema.optional(applicationInputFields.fullName),
58932
58934
  role: nullableOptionalText(120),
58935
+ phone: exports_Schema.optional(exports_Schema.NullOr(phone)),
58933
58936
  bio: nullableOptionalText(2000),
58934
58937
  portfolioUrl: exports_Schema.optional(exports_Schema.NullOr(url)),
58935
58938
  shippedProject: nullableOptionalText(2000),
@@ -58947,7 +58950,7 @@ var ApplicationPartId = exports_Schema.Literals([
58947
58950
  ]);
58948
58951
  var acceptedDetailsInputFields = {
58949
58952
  fullName: nonBlank(200),
58950
- phone: nonBlank(32),
58953
+ phone,
58951
58954
  dateOfBirth: exports_Schema.String.pipe(exports_Schema.check(exports_Schema.isPattern(/^\d{4}-\d{2}-\d{2}$/, {
58952
58955
  message: "Must use YYYY-MM-DD format"
58953
58956
  }))),
@@ -58956,7 +58959,7 @@ var acceptedDetailsInputFields = {
58956
58959
  dietaryRestrictions: optionalText(1000),
58957
58960
  accessibilityNeeds: optionalText(1000),
58958
58961
  emergencyContactName: nonBlank(200),
58959
- emergencyContactPhone: nonBlank(32),
58962
+ emergencyContactPhone: phone,
58960
58963
  mediaConsent: exports_Schema.optional(exports_Schema.Boolean),
58961
58964
  pictureSource: PictureSource
58962
58965
  };
@@ -59011,6 +59014,7 @@ var RegistrationViewSchema = exports_Schema.Struct({
59011
59014
  firstName: exports_Schema.String,
59012
59015
  lastName: exports_Schema.String,
59013
59016
  email: exports_Schema.String,
59017
+ applicationPhone: exports_Schema.optional(exports_Schema.String),
59014
59018
  fullName: exports_Schema.optional(exports_Schema.String),
59015
59019
  phone: exports_Schema.optional(exports_Schema.String),
59016
59020
  dateOfBirth: exports_Schema.optional(exports_Schema.String),
@@ -60622,6 +60626,7 @@ var withoutEmptyStrings = (input) => Object.fromEntries(Object.entries(input).fi
60622
60626
  var applicationDefaultsFromRegistration = (registration) => ({
60623
60627
  fullName: joinFullName(registration.firstName, registration.lastName),
60624
60628
  role: registration.role,
60629
+ phone: registration.applicationPhone,
60625
60630
  bio: registration.bio,
60626
60631
  portfolioUrl: registration.portfolioUrl,
60627
60632
  shippedProject: registration.shippedProject,
@@ -60662,6 +60667,7 @@ var validateSemantics = (input, requirements) => {
60662
60667
  var applicationPrompts = (defaults2) => exports_Prompt.all({
60663
60668
  fullName: requiredText("Full name", applicationInputFields.fullName, defaults2.fullName),
60664
60669
  role: requiredText("Role", applicationInputFields.role, defaults2.role),
60670
+ phone: optionalText2("Phone number (optional)", applicationInputFields.phone, defaults2.phone),
60665
60671
  bio: optionalText2("Short bio (optional)", applicationInputFields.bio, defaults2.bio),
60666
60672
  portfolioUrl: optionalText2("Portfolio URL (optional)", applicationInputFields.portfolioUrl, defaults2.portfolioUrl),
60667
60673
  shippedProject: optionalText2("What have you shipped? (optional)", applicationInputFields.shippedProject, defaults2.shippedProject),
@@ -60728,7 +60734,7 @@ var interactiveAcceptedDetails = (participationMode, pictures) => exports_Effect
60728
60734
  fullName = yield* exports_Prompt.run(requiredText("Full name exactly as it appears on your ID document", acceptedDetailsInputFields.fullName));
60729
60735
  }
60730
60736
  const details = yield* exports_Prompt.run(exports_Prompt.all({
60731
- phone: requiredText("Phone number", acceptedDetailsInputFields.phone),
60737
+ phone: requiredText("Phone number", acceptedDetailsInputFields.phone, pictures.currentPhone),
60732
60738
  dateOfBirth: dateOfBirthPrompt(),
60733
60739
  nationalIdNumber: requiredText("National ID or passport number", acceptedDetailsInputFields.nationalIdNumber),
60734
60740
  shirtSize: shirtSizePrompt(participationMode),
@@ -62601,6 +62607,7 @@ var confirmCommand = exports_Command.make("confirm", {
62601
62607
  const body = yield* acceptedDetailsInput(exports_Option.getOrUndefined(input), current.data.registration.participationMode, {
62602
62608
  clerkPictureUrl: currentUser.data.clerkPictureUrl,
62603
62609
  githubUrl: current.data.registration.githubUrl,
62610
+ currentPhone: current.data.registration.phone,
62604
62611
  currentFullName: joinFullName(current.data.registration.firstName, current.data.registration.lastName) || current.data.registration.fullName
62605
62612
  });
62606
62613
  const picturePath = exports_Option.getOrUndefined(picture);
@@ -62715,6 +62722,7 @@ var validateCommand = exports_Command.make("validate", { input: inputFlag2, stag
62715
62722
  var applicationTemplate = {
62716
62723
  fullName: "Ada Lovelace",
62717
62724
  role: "Programmer",
62725
+ phone: "+51 999 999 999",
62718
62726
  bio: "I build tools that help people collaborate.",
62719
62727
  portfolioUrl: "https://ada.example.com",
62720
62728
  shippedProject: "An open-source analytical engine simulator.",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "chofex-cli",
3
- "version": "0.1.144",
3
+ "version": "0.1.145",
4
4
  "description": "Command-line client for Hack the Andes",
5
5
  "type": "module",
6
6
  "bin": {
@@ -11,12 +11,12 @@
11
11
  ],
12
12
  "repository": {
13
13
  "type": "git",
14
- "url": "git+https://github.com/crafter-station/chofex-hackathon.git",
14
+ "url": "git+https://github.com/crafter-station/hack-the-andes.git",
15
15
  "directory": "apps/cli"
16
16
  },
17
- "homepage": "https://github.com/crafter-station/chofex-hackathon#readme",
17
+ "homepage": "https://github.com/crafter-station/hack-the-andes#readme",
18
18
  "bugs": {
19
- "url": "https://github.com/crafter-station/chofex-hackathon/issues"
19
+ "url": "https://github.com/crafter-station/hack-the-andes/issues"
20
20
  },
21
21
  "license": "MIT",
22
22
  "keywords": [